Differences between revisions 7 and 23 (spanning 16 versions)
Revision 7 as of 2009-02-07 16:23:02
Size: 1286
Editor: DavidAdam
Comment:
Revision 23 as of 2009-02-10 16:23:15
Size: 2826
Editor: its00212
Comment:
Deletions are marked like this. Additions are marked like this.
Line 11: Line 11:
PATH='~/bin:~/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. 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:

{{{
checkoutroot = os.path.expanduser('~/checkout/gnome2')
prefix = '/space/buildbot/prefix/'
makeargs = '-j4'
module_autogenargs['gettext'] = autogenargs + ' LDFLAGS="-lsec"'
os.environ['INSTALL'] = os.path.expanduser('~/bin/install-check')
}}}

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.)
Line 33: Line 53:
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).

/!\ 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.

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:

checkoutroot = os.path.expanduser('~/checkout/gnome2')
prefix = '/space/buildbot/prefix/'
makeargs = '-j4'
module_autogenargs['gettext'] = autogenargs + ' LDFLAGS="-lsec"'
os.environ['INSTALL'] = os.path.expanduser('~/bin/install-check')

As CSW packages (blastwave.org/opencsw.org) are not part of the running path, there's a wrapper script in ~/bin/git:

PATH=/opt/csw/bin:$PATH
git $@

(git is also from opencsw while all other CSW packages come from Blastwave. Potential for interestingness.)

Configuration procedure

Part 1: Configure jhbuild

http://live.gnome.org/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).

/!\ 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.

Part 2: Configure buildbot

http://live.gnome.org/BuildBrigade/DocsAndGuides