5853
Comment:
|
7467
|
Deletions are marked like this. | Additions are marked like this. |
Line 18: | Line 18: |
prefix = '/space/buildbot/prefix/' | prefix = '/space/buildbot/prefix' module_autogenargs['gettext'] = autogenargs + ' LDFLAGS="-lsec"' module_autogenargs['gtk+'] = autogenargs + ' --without-libjasper' |
Line 20: | Line 22: |
module_autogenargs['gettext'] = autogenargs + ' LDFLAGS="-lsec"' | |
Line 24: | Line 25: |
As CSW packages (blastwave.org/opencsw.org) are not part of the running path, there's a wrapper script in ~/bin/git: {{{ #!/bin/sh PATH=/opt/csw/bin:$PATH git $@ }}} (git is also from opencsw while all other CSW packages come from Blastwave. Potential for interestingness.) |
As CSW packages (blastwave.org/opencsw.org) are not part of the running path, ~/bin contains a symlink to /opt/csw/bin/git (git is also from opencsw while all other CSW packages come from Blastwave. Potential for interestingness.) |
Line 72: | Line 65: |
* git clone doesn't work. No idea why. | |
Line 90: | Line 82: |
This is because gdbm is not available as a SUNW package or in buildbot (only by CSW). Filed as http://pulseaudio.org/ticket/493 - patching looks reasonably simple because use is confined to a single file. | |
Line 112: | Line 105: |
* mono needs --disable-dtrace added to the configure flags (as DTrace requires root permissions) /!\ not yet added to .jhbuildrc * glade fails to build: {{{ gcc -DHAVE_CONFIG_H -I. -I.. -DG_LOG_DOMAIN=\"libglade\" -I.. -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -I/space/buildbot/prefix//include/libxml2 -I/space/buildbot/prefix/include/atk-1.0 -I/space/buildbot/prefix/include/glib-2.0 -I/space/buildbot/prefix/lib/glib-2.0/include -I/space/buildbot/prefix/include/gtk-2.0 -I/space/buildbot/prefix/lib/gtk-2.0/include -I/space/buildbot/prefix/include/cairo -I/space/buildbot/prefix/include/pango-1.0 -I/space/buildbot/prefix//include/pixman-1 -I/space/buildbot/prefix//include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/X11/include -DGLADE_LIBDIR=\"/space/buildbot/prefix/lib\" -DGLADE_PREFIX=\"/space/buildbot/prefix\" -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED -g -O2 -Wall -std=c9x -MT glade-init.lo -MD -MP -MF .deps/glade-init.Tpo -c glade-init.c -fPIC -DPIC -o .libs/glade-init.o In file included from /space/buildbot/prefix/include/glib-2.0/glib/gbacktrace.h:35, from /space/buildbot/prefix/include/glib-2.0/glib.h:36, from glade-init.c:27: /usr/include/signal.h:219: error: syntax error before '*' token }}} I suspect this is fixable with the right -std= flag (ala the Compiler or options error above) |
Manduba should run a GNOME buildbot slave in order to help tinderbox the GNOME code, linked to http://build.gnome.org/
Running configuration
Manduba is running SunOS manduba 5.11 snv_101 sun4u sparc SUNW,Ultra-Enterprise Solaris
The buildbot runs as user 'buildbot' from /space/buildbot/
See http://developers.sun.com/solaris/articles/build_sw_on_solaris.html for general advice.
PATH=/space/buildbot/bin:/space/buildbot/prefix/bin:/usr/local/bin:/usr/gnu/bin:/usr/sfw/bin:/opt/SUNWspro/bin:/ucs/ccs/bin:/usr/ucb:/usr/bin: (from .zshenv) - make sure /usr/ucb is after /usr/ccs.
.jhbuildrc:
moduleset = 'gnome-suites-2.26' checkoutroot = os.path.expanduser('~/checkout/gnome2') prefix = '/space/buildbot/prefix' module_autogenargs['gettext'] = autogenargs + ' LDFLAGS="-lsec"' module_autogenargs['gtk+'] = autogenargs + ' --without-libjasper' makeargs = '-j4' os.environ['INSTALL'] = os.path.expanduser('~/bin/install-check')
As CSW packages (blastwave.org/opencsw.org) are not part of the running path, ~/bin contains a symlink to /opt/csw/bin/git (git is also from opencsw while all other CSW packages come from Blastwave. Potential for interestingness.)
vte needs SUNWncurses installed.
Configuration procedure
Part 1: Configure jhbuild
manduba: ~> mkdir -p ~/checkout/gnome2 manduba: ~> cd ~/checkout/gnome2 manduba: ~/checkout/gnome2> svn co http://svn.gnome.org/svn/jhbuild/trunk jhbuild manduba: ~/checkout/gnome2> cd jhbuild manduba: ~/checkout/gnome2/jhbuild> gmake -f Makefile.plain install-check CFLAGS='-DWITH_INSTALL=\"/usr/ucb/install\"'
(see http://bugzilla.gnome.org/show_bug.cgi?id=364465)
manduba: ~/checkout/gnome2/jhbuild> gmake -f Makefile.plain manduba: ~/checkout/gnome2/jhbuild> gmake -f Makefile.plain install
Create ~/.jhbuildrc as above.
To pick up standard version of gettext, libtool, automake-1.{4,7,8,9,10}, pkg-config, python, guile and waf,
manduba: ~> jhbuild bootstrap
Building gettext-0.17 on Solaris requires special arguments: http://savannah.gnu.org/bugs/?21604 which are added to jhbuild above. However, using the bootstrap version fixes errors on Solaris with "AM_NLS" Automake macros (the system gettext doesn't have them).
Part 2: Configure buildbot
http://live.gnome.org/BuildBrigade/DocsAndGuides
Current Issues
Current issues:
- No SSL CA certs for wget, meaning Mozilla packages have to be manually downloaded
- Guile doesn't build (from the bootstrap moduleset) - configure dies with
configure: error: GNU MP not found, see README
PolicyKit doesn't configure because when checking for PAM it tries to pass -l,as-needed which isn't supported by Solaris' ld(1). It also assumes that if using GCC, you're using GNU ld, which is not the case. Search configure.in for 'as-needed' to see the check. Filed as https://bugs.freedesktop.org/show_bug.cgi?id=20060
- A bunch of modules fail to build with this error:
/usr/include/sys/feature_tests.h:353:2: #error "Compiler or options invalid for pre-UNIX 03 X/Open applications and pre-2001 POSIX applications"
This is apparently caused by [http://wiki.netbsd.se/Typical_pkgsrc_error_messages#Compiler_or_options_invalid_for_pre-UNIX_03_X.2FOpen_applications__and_pre-2001_POSIX_applications the -std=gnu99 flag] or the USE_LANGUAGES=c99 option in Makefiles. See the link for suggested fixes, although they're not really optimal.
PulseAudio doesn't configure - dies with
checking for gdbm_open in -lgdbm... no checking gdbm.h usability... no checking gdbm.h presence... no checking for gdbm.h... no configure: error: gdbm.h not found
This is because gdbm is not available as a SUNW package or in buildbot (only by CSW). Filed as http://pulseaudio.org/ticket/493 - patching looks reasonably simple because use is confined to a single file.
- vte doesn't want to build. configure includes this:
configure: WARNING: term.h: present but cannot be compiled configure: WARNING: term.h: check for missing prerequisite headers? configure: WARNING: term.h: see the Autoconf documentation configure: WARNING: term.h: section "Present But Cannot Be Compiled" configure: WARNING: term.h: proceeding with the preprocessor's result configure: WARNING: term.h: in the future, the compiler will take precedence configure: WARNING: ## ------------------------------------------------------------------ ## configure: WARNING: ## Report this to http://bugzilla.gnome.org/enter_bug.cgi?product=vte ## configure: WARNING: ## ------------------------------------------------------------------ ##
- and make dies with
gcc -I/space/buildbot/prefix/include/glib-2.0 -I/space/buildbot/prefix/lib/glib-2.0/include -I/space/buildbot/prefix/include/glib-2.0 -I/space/buildbot/prefix/lib/glib-2.0/include -g -O2 -Wall -Wextra -Wsign-compare -Werror-implicit-function-declaration -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -Waggregate-return -Wcast-align -Wimplicit -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wpacked -Wmissing-format-attribute -Wshadow -Wstrict-aliasing=2 -Winit-self -Wdeclaration-after-statement -Wold-style-definition -Wno-unused-parameter -fno-common -Wno-switch-enum -o slowcat slowcat.o -L/space/buildbot/prefix/lib /space/buildbot/prefix/lib/libgobject-2.0.so /space/buildbot/prefix/lib/libglib-2.0.so -lncurses -lsocket -lm -R/space/buildbot/prefix/lib -R/space/buildbot/prefix/lib ld: fatal: library -lncurses: not found ld: fatal: File processing errors. No output written to slowcat
- although adding -L/usr/gnu/lib fixes that error.
- clutter-cairo could use a dependency on clutter, otherwise configure fails.
- gtkspell needs aspell or pspell, neither of which appear to have Solaris packages.
- libxml2 installs python modules into the 2.4 site-packages directory, not the 2.5 directory (which is the version in bootstrap)
mono needs --disable-dtrace added to the configure flags (as DTrace requires root permissions) not yet added to .jhbuildrc
- glade fails to build:
gcc -DHAVE_CONFIG_H -I. -I.. -DG_LOG_DOMAIN=\"libglade\" -I.. -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -I/space/buildbot/prefix//include/libxml2 -I/space/buildbot/prefix/include/atk-1.0 -I/space/buildbot/prefix/include/glib-2.0 -I/space/buildbot/prefix/lib/glib-2.0/include -I/space/buildbot/prefix/include/gtk-2.0 -I/space/buildbot/prefix/lib/gtk-2.0/include -I/space/buildbot/prefix/include/cairo -I/space/buildbot/prefix/include/pango-1.0 -I/space/buildbot/prefix//include/pixman-1 -I/space/buildbot/prefix//include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/X11/include -DGLADE_LIBDIR=\"/space/buildbot/prefix/lib\" -DGLADE_PREFIX=\"/space/buildbot/prefix\" -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED -g -O2 -Wall -std=c9x -MT glade-init.lo -MD -MP -MF .deps/glade-init.Tpo -c glade-init.c -fPIC -DPIC -o .libs/glade-init.o In file included from /space/buildbot/prefix/include/glib-2.0/glib/gbacktrace.h:35, from /space/buildbot/prefix/include/glib-2.0/glib.h:36, from glade-init.c:27: /usr/include/signal.h:219: error: syntax error before '*' token
- I suspect this is fixable with the right -std= flag (ala the Compiler or options error above)