Portage is a package management system used by Gentoo Linux
# ChangeLog for dev-libs/boost
# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/ChangeLog,v 1.139 2008/08/06 06:38:38 ulm Exp $
06 Aug 2008; Ulrich Mueller
Add USE flag description to metadata wrt GLEP 56.
16 Jun 2008; Jeroen Roovers
Marked ~hppa again (bug #225045).
14 Jun 2008; Tiziano Müller
Added
07 Jun 2008; Tiziano Müller
-boost-1.34.1-r1.ebuild:
Dropped old versions (drops stable mips keyword).
*boost-1.35.0-r1 (05 Jun 2008)
05 Jun 2008; Tiziano Müller
+boost-1.35.0-r1.ebuild:
Removed pyste and added expat, mpi USE-flags. Reworked the way we call the
build system. Updated patchset to work around expat and mpi build
problems.
*boost-1.35.0 (24 Apr 2008)
24 Apr 2008; Tiziano Müller
Version bump (but not finished yet).
05 Feb 2008; Samuli Suominen
amd64 stable wrt security #205955
04 Feb 2008; Fabian Groffen
boost-1.33.1-r1.ebuild:
Drop ppc-macos conditionals
26 Jan 2008; Tobias Scherbaum
boost-1.34.1-r2.ebuild:
ppc stable, bug #205955
26 Jan 2008; Jeroen Roovers
Stable for HPPA (bug #205955).
25 Jan 2008; Markus Rothe
Stable on ppc64; bug #205955
25 Jan 2008; Raúl Porcel
alpha/ia64/sparc stable wrt security #205955
24 Jan 2008; Christian Faulhammer
boost-1.34.1-r2.ebuild:
stable x86, security bug 205955
24 Jan 2008; Tiziano Müller
Changed for updated tarball (one patch had DOS line endings).
*boost-1.34.1-r2 (24 Jan 2008)
24 Jan 2008; Tiziano Müller
+boost-1.34.1-r2.ebuild:
Fixed bug #205955.
*boost-1.34.1-r1 (24 Dec 2007)
24 Dec 2007; Tiziano Müller
-files/boost-1.34.0-gcc42-atomicity.h.patch, -boost-1.34.0-r1.ebuild,
-boost-1.34.1.ebuild, +boost-1.34.1-r1.ebuild:
Added patch to fix a critical bug in Boost.Function and another one to fix a
missing include showing up with gcc-4.3 (both bug #202964). Dropped old
version and old revisions.
18 Nov 2007; Tiziano Müller
Fixed broken links in documentation (bug #194789) and added '-q' to the bjam
call to make boost-build fail on first error (bug #197465)
06 Oct 2007; Fabian Groffen
Revert my changes made to this ebuild per a pending conflict with its
maintainer. Prefix keeps these changes.
31 Aug 2007; Fabian Groffen
change CHOST check from !=darwin to ==linux, see
http://article.gmane.org/gmane.linux.gentoo.alt/2907
*boost-1.34.1 (29 Jul 2007)
29 Jul 2007; Tiziano Müller
Version bump (bug #186811)
*boost-1.34.0-r1 (15 Jul 2007)
15 Jul 2007; Tiziano Müller
+files/boost-1.34.0-gcc42-atomicity.h.patch, -boost-1.34.0.ebuild,
+boost-1.34.0-r1.ebuild:
Added creation of symlinks when built with debug (bug #181972)
Added patch for gcc-4.2
15 Jul 2007; Tiziano Müller
Corrected dohtml usage (thanks to kolmodin)
23 Jun 2007; Joshua Kinard
Marked unstable on mips, per #182196.
20 Jun 2007; Joseph Jezak
Marked ~ppc for bug #182196.
18 Jun 2007; Jeroen Roovers
Marked ~hppa (bug #182196).
18 Jun 2007; Raúl Porcel
Add ~alpha/~ia64 wrt #182196
18 Jun 2007; Markus Rothe
Added ~ppc64; bug #182196
17 Jun 2007; Ferris McCormick
Add ~sparc keyword --- Bug #182196 --- after further investigation, seems
good.
16 Jun 2007; Tiziano Müller
Added LC_ALL=C to src_test to make sure that tests don't fail because of
unmatched regexps
*boost-1.34.0 (06 Jun 2007)
06 Jun 2007; Tiziano Müller
-boost-1.34_pre20061214.ebuild, +boost-1.34.0.ebuild:
Version bump.
20 Feb 2007; Tiziano Müller
Using check-reqs to check for enough free diskspace for building tests
(thanks to Ciaran for the hint)
20 Feb 2007; Tiziano Müller
boost-1.34_pre20061214.ebuild:
Removed ${ROOT} where not appropriate (bug #167271). Added src_test for
1.33.1-r1.
18 Feb 2007; Alexander H. Færøy
boost-1.33.1-r1.ebuild:
Stable on IA64; bug #158770
10 Feb 2007; Tiziano Müller
boost-1.34_pre20061214.ebuild:
Fixed python_version typo. Removed the check for ucs2 for python.
06 Feb 2007; Tiziano Müller
-boost-1.34_pre20060930.ebuild, boost-1.34_pre20061214.ebuild:
Dropped old version. Fixed some darwin-related bugs.
30 Dec 2006; Bryan Østergaard
Stable on Alpha, bug 158770.
30 Dec 2006; Andrej Kacian
Stable on x86, bug #158770.
28 Dec 2006; Jeroen Roovers
Stable for HPPA (bug #158770).
26 Dec 2006; Gustavo Zacarias
boost-1.33.1-r1.ebuild:
Stable on sparc wrt #158770
23 Dec 2006; Peter Weller
Stable on amd64 wrt bug #158770
22 Dec 2006; Tobias Scherbaum
boost-1.33.1-r1.ebuild:
Stable on ppc wrt bug #158770.
22 Dec 2006; Markus Rothe
Stable on ppc64; bug #158770
*boost-1.34_pre20061214 (18 Dec 2006)
18 Dec 2006; Tiziano Müller
+boost-1.34_pre20061214.ebuild:
New snapshot added: All boost-tools are now available via the tools USE-flag.
27 Nov 2006; Tiziano Müller
Added icu USE-flag and dependency, bug #141170
05 Nov 2006; Tiziano Müller
Added python version override to fix bug 149250
29 Oct 2006; Tiziano Müller
boost-1.33.1-r1.ebuild, boost-1.34_pre20060930.ebuild:
Removed blocking dev-util/boost-jam dependency since package has been
removed.
23 Oct 2006; Tiziano Müller
'static' USE-flag removed (was broken). Patch added for bug #146112. Fixing
bug #137638. Adding symlink from *thread-mt.so -> *thread.so which solves
problems with other packages.
04 Oct 2006; Diego Pettenò
Add ~x86-fbsd keyword.
01 Oct 2006; Tiziano Müller
Adding src_test to boost-1.34 for regression tests. Minor cleanups.
30 Sep 2006; Tiziano Müller
Snapshot for 1.34 added for testing
20 Jul 2006;
stable on mips
27 Apr 2006; Marien Zwart
Fixing SHA256 digest, pass four
15 Apr 2006; Daniel Goller
Add a blocker for boost-jam since they can not coexist, boost-jam is old too,
maybe it should just die
06 Mar 2006; Daniel Goller
-boost-1.33.0.ebuild, -boost-1.33.0-r1.ebuild:
Remove old ebuilds
12 Feb 2006; Daniel Goller
Fix installation of documentation
06 Feb 2006; Markus Rothe
Stable on ppc64: bug #120840
03 Feb 2006; Mark Loeser
Stable on x86; bug #120840
02 Feb 2006; Gustavo Zacarias
Stable on sparc wrt #120840
01 Feb 2006; Aron Griffis
Mark 1.33.1 stable on alpha/ia64 #120840
29 Jan 2006; Daniel Goller
Stable on ppc and amd64
10 Dec 2005; Bryan Østergaard
06 Dec 2005; Daniel Goller
adding gentoo mirror
*boost-1.33.1 (06 Dec 2005)
06 Dec 2005; Daniel Goller
bumping to new version
27 Nov 2005; Guy Martin
Stable on hppa.
25 Nov 2005; Daniel Goller
readding bad ebuild thanks to luabind depending on boost internals instead
of the interface
24 Nov 2005; Daniel Goller
-boost-1.30.0.ebuild, -boost-1.30.2.ebuild, -boost-1.31.0.ebuild,
-boost-1.32.0.ebuild, -boost-1.32.0-r1.ebuild, -boost-1.32.0-r2.ebuild,
-boost-1.32.0-r3.ebuild, -boost-1.32.0-r4.ebuild:
Removing OLD versions
24 Nov 2005; Markus Rothe
Stable on ppc64
21 Nov 2005; Daniel Goller
boost-1.32.0.ebuild, boost-1.32.0-r1.ebuild, boost-1.32.0-r2.ebuild,
boost-1.33.0-r1.ebuild:
changed cp -a to cp -pPR in compliance with bug 103487
09 Nov 2005; Gustavo Zacarias
boost-1.33.0-r1.ebuild:
Stable on sparc wrt #91936
01 Nov 2005;
Stable on x86 wrt bug #111080
01 Nov 2005; Daniel Goller
Fix quoting of variables
01 Nov 2005; Daniel Goller
Stable on ppc and amd64
29 Oct 2005; Daniel Goller
Fix bjam directory, thanks to Phil Richards for reporting, Bug #110687
26 Oct 2005; Daniel Goller
Deprecating icc at last
25 Oct 2005; Daniel Goller
Adding bcp, bjam, changing to /usr/share/boost-build
12 Oct 2005; Daniel Goller
+files/boost-alpha-threads.patch, boost-1.33.0.ebuild:
Fixing USE=threads on alpha and stopping to have icc path be hardcoded,
credits for users in the ebuild
19 Sep 2005; Mark Loeser
Adding to cpp herd
12 Aug 2005; Daniel Goller
Someone have a suggestion how to get manifest signed remotely so i can stop
doing this?
*boost-1.33.0 (12 Aug 2005)
12 Aug 2005; Daniel Goller
Adding 1.33.0 to tree
06 Aug 2005; Aaron Walker
boost-1.32.0-r4.ebuild:
Added ~mips to 1.31.0 and 1.32.0-r4.
02 Jul 2005;
signing manifest, which failed
02 Jul 2005;
Fixed quotation, closing bug #97292
29 May 2005; Fernando J. Pereda
marked ~alpha, wrt #91936
12 May 2005; Aron Griffis
add ~ia64
*boost-1.32.0-r4 (04 May 2005)
04 May 2005; Daniel Goller
added USE=doc and fixed creation of -toolset- links
24 Apr 2005; Daniel Goller
adding pyste support, adding bsd compatability and preliminary OSX
compatability bug 79517 and bug 84642
20 Apr 2005; Daniel Goller
fix ! order
*boost-1.32.0-r2 (16 Apr 2005)
16 Apr 2005; Daniel Goller
1.32.0-r2 allows fine grained install of boost, shorter compile times and
smaller space requirement are now possible
22 Mar 2005; Daniel Goller
Fixed html doc install path, closing bug 85938, thanks Benoit Boissinot
20 Mar 2005; Daniel Goller
fixed parallel building for distcc and SMP users
18 Mar 2005; Daniel Goller
depend on icc 8 as 7 is no longer supported by intel
09 Mar 2005; Daniel Goller
set paths for icc to properly build all boost targets
special thanks to steveb
08 Mar 2005; Daniel Goller
adding -sINTEL_PATH="/opt/intel/compiler80/" for them icc users
08 Mar 2005; Daniel Goller
Fix stray \
08 Mar 2005; Daniel Goller
adjust icc version
06 Mar 2005; Jeremy Huddleston
boost-1.32.0-r1.ebuild:
Multilib fix.
06 Mar 2005; Daniel Goller
fixed issue with links ending up in / if the target does not exist
05 Mar 2005; Daniel Goller
making the symlinks work for gcc and icc by inserting a variable not a
harcoded -gcc into the libname
*boost-1.32.0-r1 (04 Mar 2005)
04 Mar 2005; Daniel Goller
Compiled with --layout=system for the short libnames, linked the long ones
Everyone and everything should now be happy Serialization linking issues are
with binutils, as long as we only have the .a we will need 2.15.90.0.* for
this lib Time permitting we might have to port what is in cvs, as that
builds a shared lib for us which would link with any stable binutils
01 Mar 2005; Daniel Goller
boost-1.32.0.ebuild:
Cleaned up ebuild, no longer using makeopts, apparently bjam could dislike them
31 Dec 2004; Daniel Goller
Fix whitespace
31 Dec 2004; Daniel Goller
Changing to --layout=system
23 Dec 2004; Daniel Goller
Minor cleanup
23 Dec 2004; Daniel Goller
Install build tools too
14 Dec 2004; Daniel Goller
Add symlink for version independent location
13 Dec 2004; Daniel Goller
Readding icc support, restoring -toolset- libnames, using python.eclass to
avoid using sed
12 Dec 2004; Daniel Goller
Fix bjam path
Thanks to dholth@fastmail.fm and mayo@clara.co.uk for noticing + suggestions
11 Dec 2004; Daniel Goller
Cleanup + maintenance
11 Dec 2004; Daniel Goller
Removed trailing space
11 Dec 2004; Daniel Goller
Remove | die where it doesn't belong
11 Dec 2004; Daniel Goller
fixed up ${arch} to cover amd64 as not being recognized
11 Dec 2004; Daniel Goller
Added ${arch} to bjam path
10 Dec 2004; Daniel Goller
Stable on ppc
*boost-1.32.0 (10 Dec 2004)
10 Dec 2004; Daniel Goller
+boost-1.32.0.ebuild:
Version Bump + added metadata.xml
Thanks to all on Bug #71808
01 Jul 2004; Jeremy Huddleston
boost-1.30.2.ebuild, boost-1.31.0.ebuild:
virtual/glibc -> virtual/libc
01 Jul 2004; Jeremy Huddleston
Stable amd64
27 Jun 2004; Tom Gall
stable on ppc64 bug # 53532
03 Jun 2004; Aron Griffis
boost-1.30.2.ebuild, boost-1.31.0.ebuild:
Fix use invocation
16 Apr 2004; Jason Wever
Stable on sparc.
24 Mar 2004; Jason Wever
Added ~sparc keyword.
16 Mar 2004; George Shapovalov
removed alphas from portage, as the release is out for a while and is already marked stable
*boost-1.31.0 (25 Feb 2004)
25 Feb 2004; George Shapovalov
release is finally out. Added the ebuild, will keep alphas for a little while.
24 Feb 2004; Sven Blumenstein
Stable on sparc, DEPEND of media-sound/zinf
13 Feb 2004; George Shapovalov
improved symlinks, now the whole set is created instead of just a few out-of-place
as was provided by build script
*boost-1.31.0_alpha2-r1 (03 Feb 2004)
03 Feb 2004; George Shapovalov
installing symlinks created during build in this revision
*boost-1.31.0_alpha2 (02 Feb 2004)
02 Feb 2004; George Shapovalov
new cvs snapshot, fixed the install procedure following the #37850,
thanks to Karl-Johan Karlsson
*boost-1.31.0_alpha1 (18 Dec 2003)
18 Dec 2003; George Shapovalov
SInce 1.30 stopped working with python 2.3 (see #35268) and 1.31 is not yet out
I am adding this cvs snapshot. Note: !!!do not just copy this one over!!!
Adjust a few vars inside if you do update it!
This one also incorporates build tools installation from #35718 (thanks to
Chris Mayo
*boost-1.30.2 (24 Aug 2003)
24 Aug 2003; George Shapovalov
looks like I got stuck with this ebuild :),
anyway, new version (#27053) that contains a bug fix,
update submitted by B. K. Oxley (binkley)
and cleaned-up by Chris Bainbridge chrb@dcs.ed.ac.uk
*boost-1.30.0 (16 May 2003)
16 May 2003; George Shapovalov
new version. (#18183)
now supports building with icc
Thanks to Jeremy Maitin-Shepard
for submitting and polishing the ebuild
*boost-1.29.0 (21 Oct 2002)
26 Jan 2003; Jon Nall
added ~ppc and fixed to be non-x86 specific
21 Oct 2002; Maik Schreiber
#9461.
*boost-1.28 (19 Oct 2002)
123456789-123456789-123456789-123456789-123456789-123456789-123456789-123456789-
19 Oct 2002; Karl Trygve Kalleberg
boost-1.28.0.ebuild, files/digest-boost-1.28: Initial import. All code
submitted by Markus Krainer
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
AUX boost-1.33.1-gcc41_visit_each.patch 338 RMD160 295e85b70cb27da6bb24eb6d757c8cc3465877d7 SHA1 265bdab2f664ffaa23f340f78a99506616457ad6 SHA256 a9ced5f54e52ade899a7b09dff097e4c9ca958c85d51ae431c7e7521f53b441e
AUX boost-alpha-threads.patch 1111 RMD160 49fe6128f6dd9277389d25a83706b401705cdb40 SHA1 846f8a187dca02a998fb60bd298d2312e16620f0 SHA256 e7d1cb78cc73763023edb80cdb66e2a9389d9ef40f448be60cf8cd4f827e7623
AUX random-Jamfile 355 RMD160 478b592e9d33d371b07e5364e63512c8208263bf SHA1 8ca047df78758f62a6c131bd27441173e9079fa6 SHA256 7dc71ab8b862ccd5ea9c21c42557adfe0c711ea7fbe7faa47328a37aa84bc096
DIST boost-patches-1.34.1-3.tbz2 5681 RMD160 b7a3cece3602d6cab91118ef03bf0fd7a89db58e SHA1 ac22f748c1c31b874552a72cb62b4ee143432357 SHA256 d77f9c7d76694e3f443b8381f1506e2d586f2e3ff07b8835f512878cc8249a82
DIST boost-patches-1.35.0-2.tbz2 4327 RMD160 ef72f3b59b4b0d6bbe4e99813f5d1d63dffc7a58 SHA1 a534b8d0e9c104e35093b2f5580a15fa764feb79 SHA256 8eae1416f1ee1885ff42a01ab6dcabb7bd454405d0ca1ab2d51172d1e20d516f
DIST boost_1_33_1.tar.bz2 11507161 RMD160 3d5999d321b558f74d786bec52ee1b1fcd7e7152 SHA1 22682f75ff0d1ea548688e78c8cca83d599ca576 SHA256 6232e93205acbc8c705f44f15977aae158550c99a384f41606cff26c16393be0
DIST boost_1_34_1.tar.bz2 12986931 RMD160 303327ff852bc19dd7a94657fdef3c56f5882e06 SHA1 b771271d5cbd3bdb0f119dd66dfd36bad7a66866 SHA256 0f866c75b025a4f1340117a106595cc0675f48ba1e5a9b5c221ec7f19e96ec4c
DIST boost_1_35_0.tar.bz2 23416747 RMD160 89dc46b7841cd288b5fb6f4b9a1ac7309786dc14 SHA1 80d1fe7b0c45541e2af7628295b18f2af996de16 SHA256 f8bf7368a22ccf2e2cf77048ab2129744be4c03f8488c76ad31c0aa229b280da
EBUILD boost-1.33.1-r1.ebuild 6932 RMD160 c691b8884b08981841808ece5406d13ae183e6f1 SHA1 a2b6291153f5e786d2e4902671571b0d1382bc1d SHA256 e55587d607edd5ecdeacebfc37b211b34d8a1870e77824206f945b44ad2bc6f5
EBUILD boost-1.34.1-r2.ebuild 6935 RMD160 f6d8fad5615d4c2074788d4f52a9b1dd8789bda2 SHA1 6009fab7c51be18581f159c251f154dad0b3dd20 SHA256 61c782e23b48b523e6ab3df0287e3666a1660e2ddf350f85aa15484951904a6b
EBUILD boost-1.35.0-r1.ebuild 7018 RMD160 a8eeb5c68e223a4ce0af68ee57111c9883893c4d SHA1 7274896b0dc6db4e5b01d3100076b0a3de77754d SHA256 b078f63298b95532e6e591f5a795f048fa6b9eed1a173bbb8dd3573c20de1df9
MISC ChangeLog 19384 RMD160 d5254dc8a206fd1d7c26a8bd7b1445f5f1be69eb SHA1 c7d9cff3f92bed9ad30ade2e6e30fbb5b4c57418 SHA256 2210e98ec9bfce3b7b5e557267e2ac8b1ba45768f8b3fad4c9d9fa8691ee5e6f
MISC metadata.xml 882 RMD160 60ed736c273bba815682c2e082047ce44b13882b SHA1 624bb50ad8dc37af815a12e756551905760788b4 SHA256 8e75835527d11f093e12056bd96dd5a0cd1d4d3da5edd4d84a216be3c1ac49bc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAkiZRwIACgkQOeoy/oIi7uxxsgCeO4MBoDL0Pgi5F+uWRUbtVjqU
16sAoJD8OaDKSreJU/AFL+LAc1OSRzmX
=7Rzy
-----END PGP SIGNATURE-----
# Copyright 1999-2008 Gentoo Foundation Tests are run on Gentoo Linux.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.33.1-r1.ebuild,v 1.18 2008/02/04 20:38:41 grobian Exp $
inherit eutils distutils multilib python versionator check-reqs
MY_P=${PN}_$(replace_all_version_separators _)
DESCRIPTION="Boost Libraries for C++"
HOMEPAGE="http://www.boost.org/"
SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2"
LICENSE="freedist Boost-1.0"
SLOT="0"
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd"
IUSE="bcp bjam debug doc icu pyste threads threadsonly"
# Overriding var from python.eclass
PYVER="2.4"
DEPEND="icu? ( >=dev-libs/icu-3.2 )
sys-libs/zlib
=dev-lang/python-2.4*"
RDEPEND="${DEPEND}
pyste? ( dev-cpp/gccxml dev-python/elementtree )"
S=${WORKDIR}/${MY_P}
src_unpack() {
unpack ${A}
cd "${S}"
epatch "${FILESDIR}/${P}-gcc41_visit_each.patch"
# Don't strip (safest approach atm)
sed -i \
-e 's/-s\b//g' \
tools/build/jam_src/build.jam \
tools/build/v1/gcc-tools.jam \
|| die "sed failed"
}
pkg_setup() {
if has test ${FEATURES} ; then
CHECKREQS_DISK_BUILD="2048"
check_reqs
fi
BOOSTJAM="${S}/tools/build/jam_src/bin.*/bjam"
# FIXME: Until we have a better way to do that
NUMJOBS=$(sed -e 's/.*\(\-j[ 0-9]\+\) .*/\1/' <<< ${MAKEOPTS})
python_version
if [ "${ARCH}" == "amd64" ]; then
arch=
else
arch=${ARCH}
fi
BOOST_TOOLSET="gcc"
TOOLSET_NAME="gcc"
SOSUFFIX="so"
BUILD="release
if use debug ; then
BUILD="${BUILD} debug"
fi
if use threads && use threadsonly ; then
BUILD="${BUILD}
fi
if use threads && ! use threadsonly ; then
BUILD="${BUILD}
fi
if ! use threads ; then
BUILD="${BUILD}
fi
if use icu ; then
ADDITIONAL_OPTIONS="-sHAVE_ICU=1 -sICU_PATH=/usr"
fi
}
src_compile() {
cd "${S}/tools/build/jam_src"
./build.sh ${BOOST_TOOLSET} || die "Failed to build bjam"
cd "${S}"
# Fixing boost with threads on alpha. Thanks to ibm
if use threads && [ "${ARCH}" == "alpha" ]; then
epatch ${FILESDIR}/boost-alpha-threads.patch
fi
${BOOSTJAM} ${NUMJOBS} -sBOOST_ROOT="${S}" \
-sPYTHON_ROOT=/usr \
-sPYTHON_VERSION=${PYVER} \
-sTOOLS=${BOOST_TOOLSET} \
-sBUILD="${BUILD}" \
${ADDITIONAL_OPTIONS} \
--prefix=${D}/usr \
--layout=system
${BOOSTJAM} ${NUMJOBS} -sBOOST_ROOT="${S}" \
-sPYTHON_ROOT=/usr \
-sPYTHON_VERSION=${PYVER} \
-sTOOLS=${BOOST_TOOLSET} \
-sBUILD="${BUILD}" \
${ADDITIONAL_OPTIONS} \
--prefix=${D}/usr \
--layout=system
if use pyste; then
cd "${S}/libs/python/pyste/install"
distutils_src_compile
fi
if use bcp; then
cd "${S}/tools/bcp/"
${BOOSTJAM} || die "Building bcp failed"
fi
}
src_install () {
cd "${S}/tools/build"
dodir /usr/share/boost-build
insinto /usr/share/boost-build
cp -pPR index.html v1/ v2/ "${D}/usr/share/boost-build" || die "failed to install docs"
cd "${S}"
${BOOSTJAM} ${NUMJOBS} -sBOOST_ROOT="${S}" \
-sPYTHON_ROOT=/usr \
-sPYTHON_VERSION=${PYVER} \
-sTOOLS=${BOOST_TOOLSET} \
-sBUILD="${BUILD}" \
${ADDITIONAL_OPTIONS} \
--prefix="${D}/usr" \
--layout=system \
install || die "Install failed"
dodoc README
if use doc ; then
dohtml index.htm google_logo_40wht.gif c++boost.gif boost.css \
-A pdf -r more-r people -r doc
find libs -type f -not -regex '^libs/[^/]*/build/.*' \
-and -not -regex '^libs/.*/test[^/]?/.*' \
-and -not -regex '^libs/.*/bench[^/]?/.*' \
-and -not -regex '^libs/[^/]*/tools/.*' \
-and -not -name \*.bat \
-and -not -name Jamfile\* \
-and -not -regex '^libs/[^/]*/src/.*' \
-and -not -iname makefile \
-and -not -name \*.mak \
-and -not -name .\* \
-and -not -name \*.dsw \
-and -not -name \*.dsp \
-exec \
install -D -m0644 \{\} "${D}/usr/share/doc/${PF}/html/{}" \;
fi
#and finally set "default" links to -gcc-mt versions
cd "${D}/usr/lib"
for fn in $(ls -1 *.${SOSUFFIX}| cut -d- -f1 | sort -u) ; do
if [ -f "$fn.${SOSUFFIX}" ] ; then
dosym "$fn.${SOSUFFIX}" "/usr/lib/$fn-${TOOLSET_NAME}.${SOSUFFIX}"
fi
if [ -f "$fn-mt.${SOSUFFIX}" ] ; then
dosym "$fn-mt.${SOSUFFIX}" "/usr/lib/$fn-${TOOLSET_NAME}-mt.${SOSUFFIX}"
fi
if [ -f "$fn-d.${SOSUFFIX}" ] ; then
dosym "$fn-d.${SOSUFFIX}" "/usr/lib/$fn-${TOOLSET_NAME}-d.${SOSUFFIX}"
fi
if [ -f "$fn-mt-d.${SOSUFFIX}" ] ; then
dosym "$fn-mt-d.${SOSUFFIX}" "/usr/lib/$fn-${TOOLSET_NAME}-mt-d.${SOSUFFIX}"
fi
done
for fn in $(ls -1 *.a| cut -d- -f1 | sort -u) ; do
if [ -f "$fn.a" ] ; then
dosym "$fn.a" "/usr/lib/$fn-${TOOLSET_NAME}.a"
fi
if [ -f "$fn-mt.a" ] ; then
dosym "$fn-mt.a" "/usr/lib/$fn-${TOOLSET_NAME}-mt.a"
fi
if [ -f "$fn-d.a" ] ; then
dosym "$fn-d.a" "/usr/lib/$fn-${TOOLSET_NAME}-d.a"
fi
if [ -f "$fn-mt-d.a" ] ; then
dosym "$fn-mt-d.a" "/usr/lib/$fn-${TOOLSET_NAME}-mt-d.a"
fi
done
if use threads ; then
dosym "libboost_thread-mt.a" "/usr/lib/libboost_thread.a"
dosym "libboost_thread-mt.so" "/usr/lib/libboost_thread.so"
fi
[[ $(get_libdir) == "lib" ]] || mv "${D}/usr/lib" "${D}/usr/$(get_libdir)"
if use pyste; then
cd "${S}/libs/python/pyste/install"
distutils_src_install
fi
if use bcp; then
dobin "${S}/tools/bcp/run/bcp" || die "bcp install failed"
fi
if use bjam; then
cd "${S}"/tools/build/jam_src/bin.*/
dobin bjam || die "bjam install failed"
fi
if has test ${FEATURES} ; then
cd "${S}/status"
elog "Tests enabled, installing the output to:"
elog " ${ROOT}usr/share/doc/${PF}/status"
elog "The results are in"
elog " ${ROOT}usr/share/doc/${PF}/status/cs-$(uname).html"
docinto status
sed -i -e 's|../boost.png|boost.png|' *.html
dohtml *.{html,gif} ../boost.png
dodoc regress.log
fi
}
src_test() {
ewarn "This test might take a couple of hours even on a recent machine!"
elog "It is possible to provide a regression_comment file"
elog "which might be useful it you intend to send the generated"
elog "regression results table to the boost-developers."
elog "Just export a variable BOOST_COMMENT_PATH before starting"
elog "the merge containing the full path to such a file."
elog "If you don't know what's this all about, just ignore it."
if [ -n ${BOOST_COMMENT_PATH} ] ; then
elog "Creating default comment file..."
cat > comment.html <<- __EOF__
__EOF__
BOOST_COMMENT_PATH="$(pwd)/comment.html"
fi
cd "${S}/tools/regression"
sed -i \
-e "s|\(boost_root\)=.*|\1=\"${S}\"|" \
-e "s|\(toolset\)=.*|\1=\"${BOOST_TOOLSET}\"|" \
-e "s|\(test_tools\)=.*|\1=\"${BOOST_TOOLSET}\"|" \
-e "s|\(comment_path\)=.*|\1=\"${BOOST_COMMENT_PATH}\"|" \
run_tests.sh || die "sed failed"
. run_tests.sh || die "tests failed"
elog "You have to check the test output yourself"
elog "to see whether all tests succeeded."
}
# Copyright 1999-2008 Gentoo Foundation Tests are run on a Gentoo system.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.34.1-r2.ebuild,v 1.8 2008/02/05 15:42:08 drac Exp $
inherit distutils flag-o-matic multilib toolchain-funcs versionator check-reqs
KEYWORDS="alpha amd64 ~arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86"
MY_P=${PN}_$(replace_all_version_separators _)
PATCHSET_VERSION="${PV}-3"
DESCRIPTION="Boost Libraries for C++"
HOMEPAGE="http://www.boost.org/"
SRC_URI="mirror://sourceforge/boost/${MY_P}.tar.bz2
mirror://gentoo/boost-patches-${PATCHSET_VERSION}.tbz2"
LICENSE="freedist Boost-1.0"
SLOT="0"
IUSE="debug doc icu pyste tools"
DEPEND="icu? ( >=dev-libs/icu-3.2 )
sys-libs/zlib
~dev-util/boost-build-${PV}"
RDEPEND="${DEPEND}
pyste? ( dev-cpp/gccxml dev-python/elementtree )"
S=${WORKDIR}/${MY_P}
# Maintainer Information
# ToDo:
# - write a patch to support /dev/urandom on FreeBSD and OSX (see below)
pkg_setup() {
if has test ${FEATURES} ; then
CHECKREQS_DISK_BUILD="1024"
check_reqs
ewarn "The tests may take several hours on a recent machine"
ewarn "but they will not fail (unless something weird happens ;-)"
ewarn "This is because the tests depend on the used compiler/-version"
ewarn "and the platform and upstream says that this is normal."
ewarn "If you are interested in the results, please take a look at the"
ewarn "generated results page:"
ewarn " ${ROOT}usr/share/doc/${PF}/status/cs-$(uname).html"
ebeep 5
fi
}
src_unpack() {
unpack ${A}
cd "${S}"
EPATCH_SOURCE="${WORKDIR}/patches"
EPATCH_SUFFIX="patch"
epatch
rm boost-build.jam
# This enables building the boost.random library with /dev/urandom support
if ! use userland_Darwin ; then
mkdir -p libs/random/build
cp "${FILESDIR}/random-Jamfile" libs/random/build/Jamfile.v2
fi
}
generate_options() {
LINK_OPTIONS="static shared"
# Maintainer information:
# The debug-symbols=none and optimization=none
# are not official upstream flags but a Gentoo
# specific patch to make sure that all our
# CXXFLAGS/LDFLAGS are being respected.
# Using optimization=off would for example add
# "-O0" and override "-O2" set by the user.
# Please take a look at the boost-build ebuild
# for more infomration.
if ! use debug ; then
OPTIONS="release debug-symbols=none"
else
OPTIONS="debug"
fi
OPTIONS="${OPTIONS} optimization=none"
use icu && OPTIONS="${OPTIONS} -sHAVE_ICU=1 -sICU_PATH=/usr"
OPTIONS="${OPTIONS} --user-config=${S}/user-config.jam"
}
generate_userconfig() {
einfo "Writing new user-config.jam"
distutils_python_version
local compiler compilerVersion compilerExecutable
if [[ ${CHOST} == *-darwin* ]] ; then
compiler=darwin
compilerVersion=$(gcc-version)
compilerExecutable=$(tc-getCXX)
append-ldflags -ldl
else
compiler=gcc
compilerVersion=$(gcc-version)
compilerExecutable=$(tc-getCXX)
fi
cat > "${S}/user-config.jam" << __EOF__
import toolset : using ;
import toolset : flags ;
using ${compiler} : ${compilerVersion} : ${compilerExecutable} :
using python : ${PYVER} : /usr : /usr/include/python${PYVER} : /usr/lib/python${PYVER} ;
__EOF__
}
src_compile() {
NUMJOBS=$(sed -e 's/.*\(\-j[ 0-9]\+\) .*/\1/' <<< ${MAKEOPTS})
generate_userconfig
generate_options
elog "Using the following options to build: "
elog " ${OPTIONS}"
export BOOST_ROOT=${S}
export BOOST_BUILD_PATH=/usr/share/boost-build
for linkoption in ${LINK_OPTIONS} ; do
einfo "Building ${linkoption} libraries"
bjam ${NUMJOBS} -q \
${OPTIONS} \
threading=single,multi \
runtime-link=${linkoption} link=${linkoption} \
--prefix="${D}/usr" \
--layout=system \
|| die "building boost failed"
done
if use pyste; then
cd "${S}/libs/python/pyste/install"
distutils_src_compile
fi
if use tools; then
cd "${S}/tools/"
# We have to set optimization to -O0 or -O1 to work around a gcc-bug
# optimization=off adds -O0 to the compiler call and overwrites our settings.
bjam ${NUMJOBS} -q \
release debug-symbols=none \
optimization=off \
--prefix="${D}/usr" \
--layout=system \
--user-config="${S}/user-config.jam" \
|| die "building tools failed"
fi
if has test ${FEATURES} ; then
cd "${S}/tools/regression/build"
bjam -q \
${OPTIONS} \
--prefix="${D}/usr" \
--layout=system \
|| die "building regression test helpers failed"
fi
}
src_install () {
generate_options
export BOOST_ROOT=${S}
export BOOST_BUILD_PATH=/usr/share/boost-build
for linkoption in ${LINK_OPTIONS} ; do
bjam -q \
${OPTIONS} \
threading=single,multi \
runtime-link=${linkoption} link=${linkoption} \
--prefix="${D}/usr" \
--includedir="${D}/usr/include" \
--libdir="${D}/usr/$(get_libdir)" \
--layout=system \
install || die "install failed"
done
dodoc README
if use doc ; then
dohtml -A pdf,txt \
*.htm *.png *.css \
-r doc libs more people wiki
# To avoid broken links
insinto /usr/share/doc/${PF}/html
doins LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
cd "${D}/usr/$(get_libdir)"
# If built with debug enabled, all libraries get a 'd' postfix,
# this breaks linking other apps against boost (bug #181972)
if use debug ; then
for lib in $(ls -1 libboost_*) ; do
dosym ${lib} "/usr/$(get_libdir)/$(sed -e 's/-d\././' -e 's/d\././' <<< ${lib})"
done
fi
for lib in $(ls -1 libboost_thread-mt.*) ; do
dosym ${lib} "/usr/$(get_libdir)/$(sed -e 's/-mt//' <<< ${lib})"
done
if use pyste; then
cd "${S}/libs/python/pyste/install"
distutils_src_install
fi
if use tools; then
cd "${S}/dist"
dobin bin/*
insinto /usr
doins -r share
fi
if has test ${FEATURES} ; then
cd "${S}/status"
docinto status
dohtml *.{html,gif} ../boost.png
dodoc regress.log
fi
}
src_test() {
generate_options
export BOOST_ROOT=${S}
export BOOST_BUILD_PATH=/usr/share/boost-build
cd "${S}/status"
# Some of the test-checks seem to rely on regexps
export LC_ALL="C"
# The following is largely taken from tools/regression/run_tests.sh,
# but adapted to our needs.
# Run the tests & write them into a file for postprocessing
bjam \
${OPTIONS} \
--dump-tests 2>&1 | tee regress.log
# Postprocessing
cat regress.log | "${S}/dist/bin/process_jam_log" --v2
if test $? != 0 ; then
die "Postprocessing the build log failed"
fi
cat > "${S}/status/comment.html" <<- __EOF__
__EOF__
# Generate the build log html summary page
"${S}/dist/bin/compiler_status" --v2 \
--comment "${S}/status/comment.html" "${S}" \
cs-$(uname).html cs-$(uname)-links.html
if test $? != 0 ; then
die "Generating the build log html summary page failed"
fi
# And do some cosmetic fixes :)
sed -i -e 's|../boost.png|boost.png|' *.html
}
# Copyright 1999-2008 Gentoo Foundation Tests are run on a Gentoo system.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.35.0-r1.ebuild,v 1.3 2008/06/16 04:49:39 jer Exp $
inherit python flag-o-matic multilib toolchain-funcs versionator check-reqs
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
MY_P=${PN}_$(replace_all_version_separators _)
PATCHSET_VERSION="${PV}-2"
DESCRIPTION="Boost Libraries for C++"
HOMEPAGE="http://www.boost.org/"
SRC_URI="mirror://sourceforge/boost/${MY_P}.tar.bz2
mirror://gentoo/boost-patches-${PATCHSET_VERSION}.tbz2"
LICENSE="freedist Boost-1.0"
SLOT="0"
IUSE="debug doc expat icu mpi tools"
RDEPEND="icu? ( >=dev-libs/icu-3.3 )
expat? ( dev-libs/expat )
mpi? ( || ( sys-cluster/openmpi sys-cluster/mpich2 ) )
sys-libs/zlib
virtual/python"
DEPEND="${RDEPEND}
>=dev-util/boost-build-${PV}-r1"
S=${WORKDIR}/${MY_P}
# Maintainer Information
# ToDo:
# - write a patch to support /dev/urandom on FreeBSD and OSX (see below)
pkg_setup() {
if has test ${FEATURES} ; then
CHECKREQS_DISK_BUILD="1024"
check_reqs
ewarn "The tests may take several hours on a recent machine"
ewarn "but they will not fail (unless something weird happens ;-)"
ewarn "This is because the tests depend on the used compiler/-version"
ewarn "and the platform and upstream says that this is normal."
ewarn "If you are interested in the results, please take a look at the"
ewarn "generated results page:"
ewarn " ${ROOT}usr/share/doc/${PF}/status/cs-$(uname).html"
ebeep 5
fi
}
src_unpack() {
unpack ${A}
cd "${S}"
EPATCH_SOURCE="${WORKDIR}/patches"
EPATCH_SUFFIX="patch"
epatch
# This enables building the boost.random library with /dev/urandom support
if ! use userland_Darwin ; then
mkdir -p libs/random/build
cp "${FILESDIR}/random-Jamfile" libs/random/build/Jamfile.v2
fi
}
generate_options() {
# Maintainer information:
# The debug-symbols=none and optimization=none
# are not official upstream flags but a Gentoo
# specific patch to make sure that all our
# CXXFLAGS/LDFLAGS are being respected.
# Using optimization=off would for example add
# "-O0" and override "-O2" set by the user.
# Please take a look at the boost-build ebuild
# for more infomration.
OPTIONS="gentoorelease"
use debug && OPTIONS="gentoodebug"
use icu && OPTIONS="${OPTIONS} -sICU_PATH=/usr"
if use expat ; then
OPTIONS="${OPTIONS} -sEXPAT_INCLUDE=/usr/include -sEXPAT_LIBPATH=/usr/$(get_libdir)"
fi
if ! use mpi ; then
OPTIONS="${OPTIONS} --without-mpi"
fi
OPTIONS="${OPTIONS} --user-config=${S}/user-config.jam --boost-build=/usr/share/boost-build"
}
generate_userconfig() {
einfo "Writing new user-config.jam"
python_version
local compiler compilerVersion compilerExecutable
if [[ ${CHOST} == *-darwin* ]] ; then
compiler=darwin
compilerVersion=$(gcc-version)
compilerExecutable=$(tc-getCXX)
append-ldflags -ldl
else
compiler=gcc
compilerVersion=$(gcc-version)
compilerExecutable=$(tc-getCXX)
fi
cat > "${S}/user-config.jam" << __EOF__
variant gentoorelease : release :
variant gentoodebug : debug :
using ${compiler} : ${compilerVersion} : ${compilerExecutable} :
using python : ${PYVER} : /usr : /usr/include/python${PYVER} : /usr/lib/python${PYVER} ;
__EOF__
if use mpi ; then
echo "using mpi ;" >> "${S}/user-config.jam"
fi
}
src_compile() {
NUMJOBS=$(sed -e 's/.*\(\-j[ 0-9]\+\) .*/\1/' <<< ${MAKEOPTS})
generate_userconfig
generate_options
elog "Using the following options to build: "
elog " ${OPTIONS}"
export BOOST_ROOT=${S}
bjam ${NUMJOBS} -q \
${OPTIONS} \
threading=single,multi link=shared,static runtime-link=shared,static \
--prefix="${D}/usr" \
--layout=system \
|| die "building boost failed"
if use tools; then
cd "${S}/tools/"
# We have to set optimization to -O0 or -O1 to work around a gcc-bug
# optimization=off adds -O0 to the compiler call and overwrites our settings.
bjam ${NUMJOBS} -q \
${OPTIONS} \
--prefix="${D}/usr" \
--layout=system \
|| die "building tools failed"
fi
if has test ${FEATURES} ; then
cd "${S}/tools/regression/build"
bjam -q \
${OPTIONS} \
--prefix="${D}/usr" \
--layout=system \
|| die "building regression test helpers failed"
fi
}
src_install () {
generate_options
export BOOST_ROOT=${S}
bjam -q \
${OPTIONS} \
threading=single,multi link=shared,static runtime-link=shared,static \
--prefix="${D}/usr" \
--includedir="${D}/usr/include" \
--libdir="${D}/usr/$(get_libdir)" \
--layout=system \
install || die "install failed for options '${OPTIONS}'"
# Move the mpi.so to the right place
if use mpi; then
mkdir -p "${D}/usr/$(get_libdir)/python${PYVER}/site-packages"
mv "${D}/usr/$(get_libdir)/mpi.so" "${D}/usr/$(get_libdir)/python${PYVER}/site-packages"
fi
if use doc ; then
find libs -iname "test" -or -iname "src" | xargs rm -rf
dohtml \
-A pdf,txt,cpp \
*.{htm,html,png,css} \
-r doc more people wiki
insinto /usr/share/doc/${PF}/html
doins -r libs
# To avoid broken links
insinto /usr/share/doc/${PF}/html
doins LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
cd "${D}/usr/$(get_libdir)"
# If built with debug enabled, all libraries get a 'd' postfix,
# this breaks linking other apps against boost (bug #181972)
if use debug ; then
for lib in $(ls -1 libboost_*) ; do
dosym ${lib} "/usr/$(get_libdir)/$(sed -e 's/-d\././' -e 's/d\././' <<< ${lib})"
done
fi
for lib in $(ls -1 libboost_thread-mt.*) ; do
dosym ${lib} "/usr/$(get_libdir)/$(sed -e 's/-mt//' <<< ${lib})"
done
if use tools; then
cd "${S}/dist"
dobin bin/*
insinto /usr
doins -r share
fi
if has test ${FEATURES} ; then
cd "${S}/status"
docinto status
dohtml *.{html,gif} ../boost.png
dodoc regress.log
fi
}
src_test() {
generate_options
export BOOST_ROOT=${S}
cd "${S}/status"
# Some of the test-checks seem to rely on regexps
export LC_ALL="C"
# The following is largely taken from tools/regression/run_tests.sh,
# but adapted to our needs.
# Run the tests & write them into a file for postprocessing
bjam \
${OPTIONS} \
--dump-tests 2>&1 | tee regress.log
# Postprocessing
cat regress.log | "${S}/dist/bin/process_jam_log" --v2
if test $? != 0 ; then
die "Postprocessing the build log failed"
fi
cat > "${S}/status/comment.html" <<- __EOF__
__EOF__
# Generate the build log html summary page
"${S}/dist/bin/compiler_status" --v2 \
--comment "${S}/status/comment.html" "${S}" \
cs-$(uname).html cs-$(uname)-links.html
if test $? != 0 ; then
die "Generating the build log html summary page failed"
fi
# And do some cosmetic fixes :)
sed -i -e 's|../boost.png|boost.png|' *.html
}
Boost is a free peer-reviewed portable C++ source libraries.