What we have done is use maven to setup the environment with some calls to tar
etc.
We build boost and store it (versioned) in a maven repo (as tar.gz including
object headers etc).
Then what needs boost downloades it and unpacks it into a workspace relative
path.The make scrips are all configured to use workspace relative paths so to
get a different version you change the maven dependency.
Its relatively simple - just make sure you use the platform tar not maven
assembly plugin to create the archive (or you loose the symlinks).
As you're using autoconf I would guess you then need to pass in
-with-boost=./boost or something equivellent
Hope that helps (although the chroot sounds much better :) )
/james
From: [email protected]
[mailto:[email protected]] On Behalf Of Dean Yu
Sent: 23 February 2012 01:05
To: [email protected]; Mark Waite
Subject: Re: custom build environments?
We have an internal plugin that manages chroots for exactly this scenario. We
set up the chroot through a BuildWrapper, and we override the launch method so
that each build step enters the chroot before it executes. There's a lot of
internal-only code in here, so it's not something we can open source. However,
if you want more information, I can sketch out some more detail for you.
-- Dean
On 2/22/12 2:57 PM , "Mark Waite" <[email protected]> wrote:
I experimented once with a "chroot" environment as a way to have different
configurations on the same Linux machine. I found chroot to be more
complicated than I was ready to use at the time, but I believe it can be used
to provide different executable versions hosted over the same Linux kernel.
If you need different Linux kernels in addition to different libraries and
tools, then I think you'll need separate machines (physical or virtual).
Mark Waite
From: Les Mikesell <[email protected]>
To: jenkinsci-users <[email protected]>
Sent: Wednesday, February 22, 2012 1:19 PM
Subject: custom build environments?
Does anyone have suggestions for how to get Jenkins to make Linux
builds that don't match the stock system environment that
autoconf/configure would find? For example, if you want to have
multiple versions of boost installed and compile jobs that each need
some specific version.
________________________________
**************************************************************************************
This message is confidential and intended only for the addressee. If you have
received this message in error, please immediately notify the
[email protected] and delete it from your system as well as any copies. The
content of e-mails as well as traffic data may be monitored by NDS for
employment and security purposes. To protect the environment please do not
print this e-mail unless necessary.
NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX,
United Kingdom. A company registered in England and Wales. Registered no.
3080780. VAT no. GB 603 8808 40-00
**************************************************************************************