diff options
author | Justin Lecher <jlec@gentoo.org> | 2012-02-10 20:20:48 +0000 |
---|---|---|
committer | Justin Lecher <jlec@gentoo.org> | 2012-02-10 20:20:48 +0000 |
commit | e71d1d3d7d8917ec4339c6047c920e600ae6d231 (patch) | |
tree | 530eca9a355a3a1fe8c034b7d928e9e8d7c72005 /sci-libs | |
parent | Mask sci-libs/cctbx-2010.03.29.2334-r6 as boost-1.48 is maked (diff) | |
download | historical-e71d1d3d7d8917ec4339c6047c920e600ae6d231.tar.gz historical-e71d1d3d7d8917ec4339c6047c920e600ae6d231.tar.bz2 historical-e71d1d3d7d8917ec4339c6047c920e600ae6d231.zip |
Add fixes for boost-1.48 and its PyABI specific libs, #401393
Package-Manager: portage-2.2.0_alpha85/cvs/Linux x86_64
Diffstat (limited to 'sci-libs')
-rw-r--r-- | sci-libs/cctbx/ChangeLog | 10 | ||||
-rw-r--r-- | sci-libs/cctbx/Manifest | 13 | ||||
-rw-r--r-- | sci-libs/cctbx/cctbx-2010.03.29.2334-r6.ebuild | 202 |
3 files changed, 222 insertions, 3 deletions
diff --git a/sci-libs/cctbx/ChangeLog b/sci-libs/cctbx/ChangeLog index 8f241264f1f0..eb6bad5ee285 100644 --- a/sci-libs/cctbx/ChangeLog +++ b/sci-libs/cctbx/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sci-libs/cctbx -# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-libs/cctbx/ChangeLog,v 1.21 2011/12/04 19:03:25 jlec Exp $ +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/cctbx/ChangeLog,v 1.22 2012/02/10 20:20:48 jlec Exp $ + +*cctbx-2010.03.29.2334-r6 (10 Feb 2012) + + 10 Feb 2012; Justin Lecher <jlec@gentoo.org> + +cctbx-2010.03.29.2334-r6.ebuild: + Add fixes for boost-1.48 and its PyABI specific libs, #401393 *cctbx-2010.03.29.2334-r5 (04 Dec 2011) diff --git a/sci-libs/cctbx/Manifest b/sci-libs/cctbx/Manifest index d7fa74d755b5..c8705fba4de0 100644 --- a/sci-libs/cctbx/Manifest +++ b/sci-libs/cctbx/Manifest @@ -1,3 +1,6 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA512 + AUX 2010.03.29.2334-boost.patch 18175 RMD160 cf972e6d792d98d152eb18453f0349c87efbbb97 SHA1 f9dac88aea0e898259537a343650cbcd53b6f01f SHA256 f6a8a246dfd42e7981687802a0e00d933759d3c749c0344bfbfbfde12814f4d7 AUX 2010.03.29.2334-clipper.patch 2209 RMD160 1bfc13f0834e837a55f0e41554649acd1e45b80c SHA1 a81ee2cc94805b6ef1e609c2ea402a1c9f429d62 SHA256 e7c8bf813bedd3b67de5ce727d5f75e9635568769373f237e7b624ed143351b1 AUX 2010.03.29.2334-flags.patch 3336 RMD160 fdbb0b71499e00c666629e1ff04b5bdcbe376b13 SHA1 ef97099dbd93727bd356015f22e82480a48e1a0c SHA256 769edb3e5dcb608b54ab4d33c5933b523f73ff62c6cb627c4eb4b1a2086e40b1 @@ -8,5 +11,13 @@ DIST cctbx-2010.03.29.2334.tar.gz 15570372 RMD160 e543578dbe6568f5f8f80b3ce7a20b EBUILD cctbx-2010.03.29.2334-r3.ebuild 6033 RMD160 595dcb177bdc263203bb34911cd526a0d464c0fe SHA1 4291cecbdd0308ec84cd139caf4d1c25a2f9c959 SHA256 870992421ec6aa56c303d18efb999fa7fb8909952bddc91e695c1b9f1b8b0860 EBUILD cctbx-2010.03.29.2334-r4.ebuild 6073 RMD160 67c2c2d0bd3d709d094e443ad53769cad1e7c38d SHA1 29c0c3edaee63dbd896b0e670835263055584895 SHA256 e6b8b4f69ac23fd7ade90a03d481eb47d002187f157ab0e420e77ca5a668f38b EBUILD cctbx-2010.03.29.2334-r5.ebuild 5767 RMD160 b101169cf17740d657442f0a0653a393189c9d92 SHA1 3d50ecd149c7dc66589f2e802d676997f6cfed8a SHA256 750a609b11c6f66aa9cd93c38a8161ebec00c4f4ede9ded85d709f3e6e36cfaa -MISC ChangeLog 4082 RMD160 b1c5d40f088221ed98ae7b6e08a2d206b0c12487 SHA1 80f40fb723ec712f08770e2f81a012ab21830f8d SHA256 497a14e028392b8eaf35b36fec2fdea903c64a297c72a57f9f5c004653ed3c39 +EBUILD cctbx-2010.03.29.2334-r6.ebuild 5922 RMD160 e397381e98b0277339299849bf4844bcb7530dce SHA1 fac114f740aa3d46dfafb8d263df55de65915a99 SHA256 8f836373246b89b51884835087bf0b50989aadd76ad8b05270d4a61ccde0548f +MISC ChangeLog 4271 RMD160 f8ffee7a3b36ed278707f031706f23399887bad5 SHA1 8ddd9e285aea225bb4f7ff6f698a6f138d0fbe68 SHA256 bdb958c11747897abb2f3d525142ca52bde1a8dd30dc15577cf784badd59b7d3 MISC metadata.xml 765 RMD160 1ee2d6fab10061444dcb6f76effe52f1256ea0ac SHA1 929f35f80d2da1d8eacba6dcf715b5421a7f1393 SHA256 0bc826997f2850e1cdd72cc009127023696e9878caa1a615accd3205b234fc89 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.18 (GNU/Linux) + +iEYEAREKAAYFAk81fCsACgkQgAnW8HDreRb88gCgwfq6ROeZNbOJqv4ol8SbETOV +fV0AniAnUV+fYxPkDarYEVuIfwlvpkWs +=oxdV +-----END PGP SIGNATURE----- diff --git a/sci-libs/cctbx/cctbx-2010.03.29.2334-r6.ebuild b/sci-libs/cctbx/cctbx-2010.03.29.2334-r6.ebuild new file mode 100644 index 000000000000..6ba4b3f82bea --- /dev/null +++ b/sci-libs/cctbx/cctbx-2010.03.29.2334-r6.ebuild @@ -0,0 +1,202 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/cctbx/cctbx-2010.03.29.2334-r6.ebuild,v 1.1 2012/02/10 20:20:48 jlec Exp $ + +EAPI="3" + +PYTHON_DEPEND="2" + +inherit eutils fortran-2 prefix python toolchain-funcs + +MY_PV="${PV//./_}" + +DESCRIPTION="Computational Crystallography Toolbox" +HOMEPAGE="http://cctbx.sourceforge.net/" +SRC_URI="http://cci.lbl.gov/cctbx_build/results/${MY_PV}/${PN}_bundle.tar.gz -> ${P}.tar.gz" + +LICENSE="cctbx-2.0" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux" +IUSE="+minimal openmp threads" + +RDEPEND=" + virtual/fortran + >dev-libs/boost-1.48[python] + sci-libs/clipper + sci-libs/fftw + !minimal? ( + sci-chemistry/cns + sci-chemistry/shelx )" +DEPEND="${RDEPEND} + >=dev-util/scons-1.2" + +S="${WORKDIR}" +MY_S="${WORKDIR}"/cctbx_sources +MY_B="${WORKDIR}"/cctbx_build + +pkg_setup() { + use openmp && FORTRAN_NEED_OPENMP="1" + fortran-2_pkg_setup + if use openmp && ! tc-has-openmp; then + ewarn "You are using gcc and OpenMP is only available with gcc >= 4.2 and icc" + ewarn "If you want to build ${PN} with OpenMP, abort now," + ewarn "and switch CC to an OpenMP capable compiler" + fi + python_set_active_version 2 +} + +src_prepare() { + local opts + local optsld + + epatch \ + "${FILESDIR}"/${PV}-tst_server.py.patch \ + "${FILESDIR}"/${PV}-boost.patch \ + "${FILESDIR}"/${PV}-clipper.patch \ + "${FILESDIR}"/${PV}-flags.patch \ + "${FILESDIR}"/${PV}-soname.patch \ + "${FILESDIR}"/${PV}-gcc-4.6.patch + + eprefixify "${MY_S}"/scitbx/libtbx_refresh.py + + rm -rf "${MY_S}/scons" "${MY_S}/boost" "${MY_S}/PyCifRW" || die + find "${MY_S}/clipper" -name "*.h" -delete || die + + sed \ + -e "/LIBS/s:boost_python:boost_python-${PYTHON_ABI}:g" \ + -i "${MY_S}"/boost_adaptbx/SConscript "${MY_S}"/scitbx/boost_python/SConscript || die + + echo "import os, sys; os.execvp('scons', sys.argv)" > "${MY_S}"/libtbx/command_line/scons.py +} + +src_configure() { + local compiler + local myconf + + myconf="${MY_S}/libtbx/configure.py" + + compiler=$(expr match "$(tc-getCC)" '.*\([a-z]cc\)') + myconf="${myconf} --compiler=${compiler}" + + # Additional USE flag usage + check_use openmp + myconf="${myconf} --enable-openmp-if-possible=${USE_openmp}" + + use threads && USEthreads="--enable-boost-threads" && \ + ewarn "If using boost threads openmp support is disabled" + + myconf="${myconf} ${USE_threads} --scan-boost --use_environment_flags" + + mkdir "${MY_B}" && myconf="${myconf} --current_working_directory=${MY_B}" + cd "${MY_B}" + + myconf="${myconf} --build=release fftw3tbx rstbx smtbx mmtbx clipper_adaptbx fable" + einfo "configuring with ${python} ${myconf}" + + $(PYTHON) ${myconf} || die "configure failed" +} + +src_compile() { + local makeopts_exp + + cd "${MY_B}" + + makeopts_exp=${MAKEOPTS/j/j } + makeopts_exp=${makeopts_exp%-l[0-9]*} + + source setpaths_all.sh + + einfo "compiling with libtbx.scons ${makeopts_exp}" + libtbx.scons ${makeopts_exp} .|| die "make failed" +} + +src_test(){ + source "${MY_B}"/setpaths_all.sh + libtbx.python $(libtbx.show_dist_paths boost_adaptbx)/tests/tst_rational.py && \ + libtbx.python ${SCITBX_DIST}/run_tests.py ${MAKEOPTS_EXP} && \ + libtbx.python ${CCTBX_DIST}/run_tests.py ${MAKEOPTS_EXP} \ + || die "test failed" +} + +src_install(){ + local lib baselib +# find cctbx_build/ -type f \( -name "*.py" -o -name "*sh" \) -exec \ +# sed -e "s:${MY_S}:${EPREFIX}/usr/$(get_libdir)/cctbx/cctbx_sources:g" \ +# -e "s:${MY_B}:${EPREFIX}/usr/$(get_libdir)/cctbx/cctbx_build:g" \ +# -i '{}' \; || die "Fail to correct path" + + sed \ + -e "s:${MY_B}:${EPREFIX}/usr:g" \ + -e "s:${MY_S}:${EPREFIX}/$(python_get_sitedir):g" \ + -i "${MY_B}/libtbx_env" || die + + insinto /usr/share/cctbx + doins "${MY_B}/libtbx_env" || die + + ebegin "removing unnessary files" + rm -r "${S}"/cctbx_sources/{clipper,ccp4io,ucs-fonts,TAG} || die "failed to remove uneeded scons" + find -O3 "${S}" -type f \ + \( -name "*conftest*" -o -name "*.o" -o -name "*.c" -o -name "*.f" -o -name "*.cpp" -o \ + -name "*.pyc" -o -name "SCons*" -o -name "Makefile" -o -name "config.log" \) -delete || die + find "${S}" -type d -empty -delete || die + find "${MY_B}" -maxdepth 1 -type f -delete || die + eend + + dobin "${MY_B}"/bin/* || die + rm -rf "${MY_B}/bin" + dolib.so "${MY_B}"/lib/lib* || die + mv "${ED}"/usr/$(get_libdir)/libscitbx_min{,i}pack.so || die + rm -f "${MY_B}"/lib/lib* + + for lib in "${ED}"/usr/$(get_libdir)/*.so; do + baselib=$(basename ${lib}) + mv ${lib}{,.0.0} + dosym ${baselib}.0.0 /usr/$(get_libdir)/${baselib} + done + + insinto /usr/include + doins -r "${MY_B}"/include/* || die + rm -rf "${MY_B}/include" + + insinto /usr/libexec/${PN} + doins -r "${MY_B}"/* || die + find "${ED}"/usr/libexec/${PN} -type f -exec chmod 755 '{}' \; + + cd "${MY_S}" + insinto $(python_get_sitedir) + doins -r * || die + exeinto $(python_get_sitedir) + doexe "${MY_B}"/lib/* || die + rm -rf "${MY_B}/lib" + + sed \ + -e "/PYTHONPATH/s:${MY_S}:$(python_get_sitedir):g" \ + -e "/PYTHONPATH/s:${MY_B}:$(python_get_sitedir):g" \ + -e "/LD_LIBRARY_PATH/s:${MY_B}/lib:${EPREFIX}/usr/$(get_libdir):g" \ + -e "/PATH/s:${MY_B}/bin:${EPREFIX}/usr/bin:g" \ + -e "/PATH/s:${MY_B}/exe:${EPREFIX}/usr/bin:g" \ + -e "/exec/s:${MY_S}:$(python_get_sitedir):g" \ + -e "/LIBTBX_BUILD/s:${MY_B}:${EPREFIX}/usr/share/cctbx:g" \ + -e "s:${MY_B}/exe_dev/:${EPREFIX}/usr/libexec/${PN}/exe_dev/:g" \ + -i "${ED}"/usr/bin/* || die + +} + +pkg_postinst () { + python_mod_optimize boost_adaptbx cbflib_adaptbx ccp4io_adaptbx cctbx chiltbx clipper_adaptbx crys3d fable fftw3tbx gltbx iotbx libtbx mmtbx omptbx rstbx scitbx smtbx spotfinder tntbx +} + +pkg_postrm () { + python_mod_cleanup boost_adaptbx cbflib_adaptbx ccp4io_adaptbx cctbx chiltbx clipper_adaptbx crys3d fable fftw3tbx gltbx iotbx libtbx mmtbx omptbx rstbx scitbx smtbx spotfinder tntbx +} + +check_use() { + for var in $@; do + if use ${var}; then + printf -v "USE_$var" True + else + printf -v "USE_$var" False + fi + shift + done +} |