Date: Wednesday, March 27, 2013 @ 14:30:16 Author: stephane Revision: 180862
archrelease: copy trunk to extra-i686, extra-x86_64 Added: boost/repos/extra-i686/PKGBUILD (from rev 180861, boost/trunk/PKGBUILD) boost/repos/extra-i686/boost-1.52.0-python3.patch (from rev 180861, boost/trunk/boost-1.52.0-python3.patch) boost/repos/extra-x86_64/PKGBUILD (from rev 180861, boost/trunk/PKGBUILD) boost/repos/extra-x86_64/boost-1.52.0-python3.patch (from rev 180861, boost/trunk/boost-1.52.0-python3.patch) Deleted: boost/repos/extra-i686/PKGBUILD boost/repos/extra-i686/boost-1.52.0-python3.patch boost/repos/extra-x86_64/PKGBUILD boost/repos/extra-x86_64/boost-1.52.0-python3.patch -----------------------------------------+ /PKGBUILD | 214 ++++++++++++++++++++++++++++++ /boost-1.52.0-python3.patch | 192 ++++++++++++++++++++++++++ extra-i686/PKGBUILD | 106 -------------- extra-i686/boost-1.52.0-python3.patch | 96 ------------- extra-x86_64/PKGBUILD | 106 -------------- extra-x86_64/boost-1.52.0-python3.patch | 96 ------------- 6 files changed, 406 insertions(+), 404 deletions(-) Deleted: extra-i686/PKGBUILD =================================================================== --- extra-i686/PKGBUILD 2013-03-27 13:29:26 UTC (rev 180861) +++ extra-i686/PKGBUILD 2013-03-27 13:30:16 UTC (rev 180862) @@ -1,106 +0,0 @@ -# $Id$ -# Maintainer: Stéphane Gaudreault <steph...@archlinux.org> -# Maintainer: Ionut Biru <ib...@archlinux.org> -# Contributor: kevin <ke...@archlinux.org> -# Contributor: Giovanni Scafora <giova...@archlinux.org> -# Contributor: Kritoke <krit...@gamebox.net> -# Contributor: Luca Roccia <little_r...@users.sourceforge.net> - -pkgbase=boost -pkgname=('boost-libs' 'boost') -pkgver=1.52.0 -_boostver=${pkgver//./_} -pkgrel=2 -url="http://www.boost.org/" -arch=('i686' 'x86_64') -license=('custom') -makedepends=('icu>=51.1' 'python' 'python2' 'bzip2' 'zlib' 'openmpi') -source=(http://downloads.sourceforge.net/${pkgbase}/${pkgbase}_${_boostver}.tar.gz - boost-1.52.0-python3.patch) -sha1sums=('1120430030315b0a94b6d63fc04662960db2444c' - '34026072a7cb2534164f20e77bb71a5c75093307') - -_stagedir="${srcdir}/stagedir" - -build() { - local JOBS="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" - - cd "${srcdir}/${pkgbase}_${_boostver}" - - # Fix build errors with python 3 - sed -i "/PYTHON_ROOT/s/print sys.prefix/print(sys.prefix)/g" bootstrap.sh - patch -Np1 -i ../boost-1.52.0-python3.patch - - # Shut up strict aliasing warnings - echo "using gcc : : : <compileflags>-fno-strict-aliasing ;" >> ./tools/build/v2/user-config.jam - # Add an extra python version. This does not replace anything and python 2.x need to be the default. - echo "using python : 3.3 : /usr/bin/python3 : /usr/include/python3.3m : /usr/lib ;" >> ./tools/build/v2/user-config.jam - # Support for OpenMPI - echo "using mpi ;" >> ./tools/build/v2/user-config.jam - - ./bootstrap.sh --with-toolset=gcc --with-icu --with-python=/usr/bin/python2 - - _bindir="bin.linuxx86" - [ "${CARCH}" = "x86_64" ] && _bindir="bin.linuxx86_64" - - install -d -m 755 "${_stagedir}"/bin - install "${srcdir}"/${pkgbase}_${_boostver}/tools/build/v2/engine/${_bindir}/bjam "${_stagedir}"/bin/bjam - - pushd tools - for _tool in bcp inspect quickbook compiler_status process_jam_log wave; do - "${_stagedir}"/bin/bjam --toolset=gcc $_tool - done - "${_stagedir}"/bin/bjam --toolset=gcc cflags="-std=gnu++11" library_status - popd - cp -a dist/bin/* "${_stagedir}"/bin - - #boostbook is needed by quickbook - install -d -m 755 "${_stagedir}"/share/boostbook - cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/ - - # default "minimal" install: "release link=shared,static - # runtime-link=shared threading=single,multi" - # --layout=tagged will add the "-mt" suffix for multithreaded libraries - # and installs includes in /usr/include/boost. - # --layout=system no longer adds the -mt suffix for multi-threaded libs. - # install to ${_stagedir} in preparation for split packaging - "${_stagedir}"/bin/bjam \ - release \ - debug-symbols=off \ - threading=multi \ - runtime-link=shared \ - link=shared \ - toolset=gcc \ - --layout=system \ - --prefix="${_stagedir}" \ - ${JOBS} \ - install - - find ${_stagedir} -name \*.a -exec rm -f {} \; -} - -package_boost() { - pkgdesc="Free peer-reviewed portable C++ source libraries - Development" - depends=("boost-libs=${pkgver}") - optdepends=('python: for python bindings' - 'python2: for python2 bindings' - 'boost-build: to use boost jam for building your project.') - - install -d -m 755 "${pkgdir}"/usr - cp -a "${_stagedir}"/{bin,include,share} "${pkgdir}"/usr - - install -D -m 644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ - "${pkgdir}"/usr/share/licenses/boost/LICENSE_1_0.txt -} - -package_boost-libs() { - pkgdesc="Free peer-reviewed portable C++ source libraries - Runtime" - depends=('bzip2' 'zlib' 'icu') - optdepends=('openmpi: for mpi support') - - install -d -m 755 "${pkgdir}"/usr - cp -a "${_stagedir}"/lib "${pkgdir}"/usr - - install -D -m 644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ - "${pkgdir}"/usr/share/licenses/boost-libs/LICENSE_1_0.txt -} Copied: boost/repos/extra-i686/PKGBUILD (from rev 180861, boost/trunk/PKGBUILD) =================================================================== --- extra-i686/PKGBUILD (rev 0) +++ extra-i686/PKGBUILD 2013-03-27 13:30:16 UTC (rev 180862) @@ -0,0 +1,107 @@ +# $Id$ +# Maintainer: Stéphane Gaudreault <steph...@archlinux.org> +# Maintainer: Ionut Biru <ib...@archlinux.org> +# Contributor: kevin <ke...@archlinux.org> +# Contributor: Giovanni Scafora <giova...@archlinux.org> +# Contributor: Kritoke <krit...@gamebox.net> +# Contributor: Luca Roccia <little_r...@users.sourceforge.net> + +pkgbase=boost +pkgname=('boost-libs' 'boost') +pkgver=1.52.0 +_boostver=${pkgver//./_} +pkgrel=3 +url="http://www.boost.org/" +arch=('i686' 'x86_64') +license=('custom') +makedepends=('icu>=51.1' 'python' 'python2' 'bzip2' 'zlib' 'openmpi') +source=(http://downloads.sourceforge.net/${pkgbase}/${pkgbase}_${_boostver}.tar.gz + boost-1.52.0-python3.patch) +sha1sums=('1120430030315b0a94b6d63fc04662960db2444c' + '34026072a7cb2534164f20e77bb71a5c75093307') + +_stagedir="${srcdir}/stagedir" + +build() { + local JOBS="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" + + cd "${srcdir}/${pkgbase}_${_boostver}" + + # Fix build errors with python 3 + sed -i "/PYTHON_ROOT/s/print sys.prefix/print(sys.prefix)/g" bootstrap.sh + patch -Np1 -i ../boost-1.52.0-python3.patch + + # Shut up strict aliasing warnings + echo "using gcc : : : <compileflags>-fno-strict-aliasing ;" >> ./tools/build/v2/user-config.jam + # Add an extra python version. This does not replace anything and python 2.x need to be the default. + echo "using python : 3.3 : /usr/bin/python3 : /usr/include/python3.3m : /usr/lib ;" >> ./tools/build/v2/user-config.jam + # Support for OpenMPI + echo "using mpi ;" >> ./tools/build/v2/user-config.jam + + ./bootstrap.sh --with-toolset=gcc --with-icu --with-python=/usr/bin/python2 + + _bindir="bin.linuxx86" + [ "${CARCH}" = "x86_64" ] && _bindir="bin.linuxx86_64" + + install -d -m 755 "${_stagedir}"/bin + install "${srcdir}"/${pkgbase}_${_boostver}/tools/build/v2/engine/${_bindir}/bjam "${_stagedir}"/bin/bjam + + pushd tools + for _tool in bcp inspect quickbook compiler_status process_jam_log wave; do + "${_stagedir}"/bin/bjam --toolset=gcc $_tool + done + "${_stagedir}"/bin/bjam --toolset=gcc cflags="-std=gnu++11" library_status + popd + cp -a dist/bin/* "${_stagedir}"/bin + + #boostbook is needed by quickbook + install -d -m 755 "${_stagedir}"/share/boostbook + cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/ + + # default "minimal" install: "release link=shared,static + # runtime-link=shared threading=single,multi" + # --layout=tagged will add the "-mt" suffix for multithreaded libraries + # and installs includes in /usr/include/boost. + # --layout=system no longer adds the -mt suffix for multi-threaded libs. + # install to ${_stagedir} in preparation for split packaging + "${_stagedir}"/bin/bjam \ + variant=release \ + debug-symbols=off \ + threading=multi \ + runtime-link=shared \ + link=shared \ + toolset=gcc \ + python=2.7 \ + --layout=system \ + --prefix="${_stagedir}" \ + ${JOBS} \ + install + + find ${_stagedir} -name \*.a -exec rm -f {} \; +} + +package_boost() { + pkgdesc="Free peer-reviewed portable C++ source libraries - Development" + depends=("boost-libs=${pkgver}") + optdepends=('python: for python bindings' + 'python2: for python2 bindings' + 'boost-build: to use boost jam for building your project.') + + install -d -m 755 "${pkgdir}"/usr + cp -a "${_stagedir}"/{bin,include,share} "${pkgdir}"/usr + + install -D -m 644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ + "${pkgdir}"/usr/share/licenses/boost/LICENSE_1_0.txt +} + +package_boost-libs() { + pkgdesc="Free peer-reviewed portable C++ source libraries - Runtime" + depends=('bzip2' 'zlib' 'icu') + optdepends=('openmpi: for mpi support') + + install -d -m 755 "${pkgdir}"/usr + cp -a "${_stagedir}"/lib "${pkgdir}"/usr + + install -D -m 644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ + "${pkgdir}"/usr/share/licenses/boost-libs/LICENSE_1_0.txt +} Deleted: extra-i686/boost-1.52.0-python3.patch =================================================================== --- extra-i686/boost-1.52.0-python3.patch 2013-03-27 13:29:26 UTC (rev 180861) +++ extra-i686/boost-1.52.0-python3.patch 2013-03-27 13:30:16 UTC (rev 180862) @@ -1,96 +0,0 @@ -diff -Naur boost_1_53_0.ori/libs/mpi/src/python/datatypes.cpp boost_1_53_0/libs/mpi/src/python/datatypes.cpp ---- boost_1_53_0.ori/libs/mpi/src/python/datatypes.cpp 2007-11-25 13:38:02.000000000 -0500 -+++ boost_1_53_0/libs/mpi/src/python/datatypes.cpp 2013-03-11 20:59:57.171732691 -0400 -@@ -13,6 +13,10 @@ - #include <boost/mpi/python/serialize.hpp> - #include <boost/mpi.hpp> - -+#if PY_MAJOR_VERSION >= 3 -+#define PyInt_Type PyLong_Type -+#endif -+ - namespace boost { namespace mpi { namespace python { - - void export_datatypes() -diff -Naur boost_1_53_0.ori/libs/mpi/src/python/py_environment.cpp boost_1_53_0/libs/mpi/src/python/py_environment.cpp ---- boost_1_53_0.ori/libs/mpi/src/python/py_environment.cpp 2007-11-25 13:38:02.000000000 -0500 -+++ boost_1_53_0/libs/mpi/src/python/py_environment.cpp 2013-03-11 21:02:12.961737401 -0400 -@@ -11,6 +11,9 @@ - * This file reflects the Boost.MPI "environment" class into Python - * methods at module level. - */ -+ -+#include <locale> -+#include <string> - #include <boost/python.hpp> - #include <boost/mpi.hpp> - -@@ -50,11 +53,65 @@ - - // If anything changed, convert C-style argc/argv into Python argv - if (mpi_argv != my_argv) -+ { -+#if PY_MAJOR_VERSION >= 3 -+ // Code stolen from py3k/Modules/python.c. -+ -+ wchar_t **argv_copy = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc); -+ /* We need a second copies, as Python might modify the first one. */ -+ wchar_t **argv_copy2 = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc); -+ -+ if (!argv_copy || !argv_copy2) { -+ fprintf(stderr, "out of memory\n"); -+ return false; -+ } -+ -+ std::locale mylocale; -+ mbstate_t mystate; -+ -+ const std::codecvt<char, wchar_t, mbstate_t>& myfacet = -+ std::use_facet<std::codecvt<char, wchar_t, mbstate_t> >(mylocale); -+ -+ for (int i = 0; i < mpi_argc; i++) -+ { -+ size_t length = strlen(mpi_argv[i]); -+ -+ wchar_t *dest = (wchar_t *) PyMem_Malloc(sizeof(wchar_t) * (length + 1)); -+ -+ const char *from_next; -+ wchar_t *to_next; -+ -+ std::codecvt<wchar_t,char,mbstate_t>::result myresult = -+ myfacet.out(mystate, -+ mpi_argv[i], mpi_argv[i] + length + 1, from_next, -+ dest, dest+length+1, to_next); -+ -+ if (myresult != std::codecvt<wchar_t,char,mbstate_t>::ok ) -+ { -+ fprintf(stderr, "failure translating argv\n"); -+ return 1; -+ } -+ -+ argv_copy2[i] = argv_copy[i] = dest; -+ if (!argv_copy[i]) -+ return false; -+ } -+ -+ PySys_SetArgv(mpi_argc, argv_copy); -+ -+ for (int i = 0; i < mpi_argc; i++) { -+ PyMem_Free(argv_copy2[i]); -+ } -+ PyMem_Free(argv_copy); -+ PyMem_Free(argv_copy2); -+#else - PySys_SetArgv(mpi_argc, mpi_argv); -+#endif -+ } - -- for (int arg = 0; arg < my_argc; ++arg) -- free(my_argv[arg]); -- delete [] my_argv; -+ for (int arg = 0; arg < mpi_argc; ++arg) -+ free(mpi_argv[arg]); -+ delete [] mpi_argv; - - return true; - } Copied: boost/repos/extra-i686/boost-1.52.0-python3.patch (from rev 180861, boost/trunk/boost-1.52.0-python3.patch) =================================================================== --- extra-i686/boost-1.52.0-python3.patch (rev 0) +++ extra-i686/boost-1.52.0-python3.patch 2013-03-27 13:30:16 UTC (rev 180862) @@ -0,0 +1,96 @@ +diff -Naur boost_1_53_0.ori/libs/mpi/src/python/datatypes.cpp boost_1_53_0/libs/mpi/src/python/datatypes.cpp +--- boost_1_53_0.ori/libs/mpi/src/python/datatypes.cpp 2007-11-25 13:38:02.000000000 -0500 ++++ boost_1_53_0/libs/mpi/src/python/datatypes.cpp 2013-03-11 20:59:57.171732691 -0400 +@@ -13,6 +13,10 @@ + #include <boost/mpi/python/serialize.hpp> + #include <boost/mpi.hpp> + ++#if PY_MAJOR_VERSION >= 3 ++#define PyInt_Type PyLong_Type ++#endif ++ + namespace boost { namespace mpi { namespace python { + + void export_datatypes() +diff -Naur boost_1_53_0.ori/libs/mpi/src/python/py_environment.cpp boost_1_53_0/libs/mpi/src/python/py_environment.cpp +--- boost_1_53_0.ori/libs/mpi/src/python/py_environment.cpp 2007-11-25 13:38:02.000000000 -0500 ++++ boost_1_53_0/libs/mpi/src/python/py_environment.cpp 2013-03-11 21:02:12.961737401 -0400 +@@ -11,6 +11,9 @@ + * This file reflects the Boost.MPI "environment" class into Python + * methods at module level. + */ ++ ++#include <locale> ++#include <string> + #include <boost/python.hpp> + #include <boost/mpi.hpp> + +@@ -50,11 +53,65 @@ + + // If anything changed, convert C-style argc/argv into Python argv + if (mpi_argv != my_argv) ++ { ++#if PY_MAJOR_VERSION >= 3 ++ // Code stolen from py3k/Modules/python.c. ++ ++ wchar_t **argv_copy = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc); ++ /* We need a second copies, as Python might modify the first one. */ ++ wchar_t **argv_copy2 = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc); ++ ++ if (!argv_copy || !argv_copy2) { ++ fprintf(stderr, "out of memory\n"); ++ return false; ++ } ++ ++ std::locale mylocale; ++ mbstate_t mystate; ++ ++ const std::codecvt<char, wchar_t, mbstate_t>& myfacet = ++ std::use_facet<std::codecvt<char, wchar_t, mbstate_t> >(mylocale); ++ ++ for (int i = 0; i < mpi_argc; i++) ++ { ++ size_t length = strlen(mpi_argv[i]); ++ ++ wchar_t *dest = (wchar_t *) PyMem_Malloc(sizeof(wchar_t) * (length + 1)); ++ ++ const char *from_next; ++ wchar_t *to_next; ++ ++ std::codecvt<wchar_t,char,mbstate_t>::result myresult = ++ myfacet.out(mystate, ++ mpi_argv[i], mpi_argv[i] + length + 1, from_next, ++ dest, dest+length+1, to_next); ++ ++ if (myresult != std::codecvt<wchar_t,char,mbstate_t>::ok ) ++ { ++ fprintf(stderr, "failure translating argv\n"); ++ return 1; ++ } ++ ++ argv_copy2[i] = argv_copy[i] = dest; ++ if (!argv_copy[i]) ++ return false; ++ } ++ ++ PySys_SetArgv(mpi_argc, argv_copy); ++ ++ for (int i = 0; i < mpi_argc; i++) { ++ PyMem_Free(argv_copy2[i]); ++ } ++ PyMem_Free(argv_copy); ++ PyMem_Free(argv_copy2); ++#else + PySys_SetArgv(mpi_argc, mpi_argv); ++#endif ++ } + +- for (int arg = 0; arg < my_argc; ++arg) +- free(my_argv[arg]); +- delete [] my_argv; ++ for (int arg = 0; arg < mpi_argc; ++arg) ++ free(mpi_argv[arg]); ++ delete [] mpi_argv; + + return true; + } Deleted: extra-x86_64/PKGBUILD =================================================================== --- extra-x86_64/PKGBUILD 2013-03-27 13:29:26 UTC (rev 180861) +++ extra-x86_64/PKGBUILD 2013-03-27 13:30:16 UTC (rev 180862) @@ -1,106 +0,0 @@ -# $Id$ -# Maintainer: Stéphane Gaudreault <steph...@archlinux.org> -# Maintainer: Ionut Biru <ib...@archlinux.org> -# Contributor: kevin <ke...@archlinux.org> -# Contributor: Giovanni Scafora <giova...@archlinux.org> -# Contributor: Kritoke <krit...@gamebox.net> -# Contributor: Luca Roccia <little_r...@users.sourceforge.net> - -pkgbase=boost -pkgname=('boost-libs' 'boost') -pkgver=1.52.0 -_boostver=${pkgver//./_} -pkgrel=2 -url="http://www.boost.org/" -arch=('i686' 'x86_64') -license=('custom') -makedepends=('icu>=51.1' 'python' 'python2' 'bzip2' 'zlib' 'openmpi') -source=(http://downloads.sourceforge.net/${pkgbase}/${pkgbase}_${_boostver}.tar.gz - boost-1.52.0-python3.patch) -sha1sums=('1120430030315b0a94b6d63fc04662960db2444c' - '34026072a7cb2534164f20e77bb71a5c75093307') - -_stagedir="${srcdir}/stagedir" - -build() { - local JOBS="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" - - cd "${srcdir}/${pkgbase}_${_boostver}" - - # Fix build errors with python 3 - sed -i "/PYTHON_ROOT/s/print sys.prefix/print(sys.prefix)/g" bootstrap.sh - patch -Np1 -i ../boost-1.52.0-python3.patch - - # Shut up strict aliasing warnings - echo "using gcc : : : <compileflags>-fno-strict-aliasing ;" >> ./tools/build/v2/user-config.jam - # Add an extra python version. This does not replace anything and python 2.x need to be the default. - echo "using python : 3.3 : /usr/bin/python3 : /usr/include/python3.3m : /usr/lib ;" >> ./tools/build/v2/user-config.jam - # Support for OpenMPI - echo "using mpi ;" >> ./tools/build/v2/user-config.jam - - ./bootstrap.sh --with-toolset=gcc --with-icu --with-python=/usr/bin/python2 - - _bindir="bin.linuxx86" - [ "${CARCH}" = "x86_64" ] && _bindir="bin.linuxx86_64" - - install -d -m 755 "${_stagedir}"/bin - install "${srcdir}"/${pkgbase}_${_boostver}/tools/build/v2/engine/${_bindir}/bjam "${_stagedir}"/bin/bjam - - pushd tools - for _tool in bcp inspect quickbook compiler_status process_jam_log wave; do - "${_stagedir}"/bin/bjam --toolset=gcc $_tool - done - "${_stagedir}"/bin/bjam --toolset=gcc cflags="-std=gnu++11" library_status - popd - cp -a dist/bin/* "${_stagedir}"/bin - - #boostbook is needed by quickbook - install -d -m 755 "${_stagedir}"/share/boostbook - cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/ - - # default "minimal" install: "release link=shared,static - # runtime-link=shared threading=single,multi" - # --layout=tagged will add the "-mt" suffix for multithreaded libraries - # and installs includes in /usr/include/boost. - # --layout=system no longer adds the -mt suffix for multi-threaded libs. - # install to ${_stagedir} in preparation for split packaging - "${_stagedir}"/bin/bjam \ - release \ - debug-symbols=off \ - threading=multi \ - runtime-link=shared \ - link=shared \ - toolset=gcc \ - --layout=system \ - --prefix="${_stagedir}" \ - ${JOBS} \ - install - - find ${_stagedir} -name \*.a -exec rm -f {} \; -} - -package_boost() { - pkgdesc="Free peer-reviewed portable C++ source libraries - Development" - depends=("boost-libs=${pkgver}") - optdepends=('python: for python bindings' - 'python2: for python2 bindings' - 'boost-build: to use boost jam for building your project.') - - install -d -m 755 "${pkgdir}"/usr - cp -a "${_stagedir}"/{bin,include,share} "${pkgdir}"/usr - - install -D -m 644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ - "${pkgdir}"/usr/share/licenses/boost/LICENSE_1_0.txt -} - -package_boost-libs() { - pkgdesc="Free peer-reviewed portable C++ source libraries - Runtime" - depends=('bzip2' 'zlib' 'icu') - optdepends=('openmpi: for mpi support') - - install -d -m 755 "${pkgdir}"/usr - cp -a "${_stagedir}"/lib "${pkgdir}"/usr - - install -D -m 644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ - "${pkgdir}"/usr/share/licenses/boost-libs/LICENSE_1_0.txt -} Copied: boost/repos/extra-x86_64/PKGBUILD (from rev 180861, boost/trunk/PKGBUILD) =================================================================== --- extra-x86_64/PKGBUILD (rev 0) +++ extra-x86_64/PKGBUILD 2013-03-27 13:30:16 UTC (rev 180862) @@ -0,0 +1,107 @@ +# $Id$ +# Maintainer: Stéphane Gaudreault <steph...@archlinux.org> +# Maintainer: Ionut Biru <ib...@archlinux.org> +# Contributor: kevin <ke...@archlinux.org> +# Contributor: Giovanni Scafora <giova...@archlinux.org> +# Contributor: Kritoke <krit...@gamebox.net> +# Contributor: Luca Roccia <little_r...@users.sourceforge.net> + +pkgbase=boost +pkgname=('boost-libs' 'boost') +pkgver=1.52.0 +_boostver=${pkgver//./_} +pkgrel=3 +url="http://www.boost.org/" +arch=('i686' 'x86_64') +license=('custom') +makedepends=('icu>=51.1' 'python' 'python2' 'bzip2' 'zlib' 'openmpi') +source=(http://downloads.sourceforge.net/${pkgbase}/${pkgbase}_${_boostver}.tar.gz + boost-1.52.0-python3.patch) +sha1sums=('1120430030315b0a94b6d63fc04662960db2444c' + '34026072a7cb2534164f20e77bb71a5c75093307') + +_stagedir="${srcdir}/stagedir" + +build() { + local JOBS="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" + + cd "${srcdir}/${pkgbase}_${_boostver}" + + # Fix build errors with python 3 + sed -i "/PYTHON_ROOT/s/print sys.prefix/print(sys.prefix)/g" bootstrap.sh + patch -Np1 -i ../boost-1.52.0-python3.patch + + # Shut up strict aliasing warnings + echo "using gcc : : : <compileflags>-fno-strict-aliasing ;" >> ./tools/build/v2/user-config.jam + # Add an extra python version. This does not replace anything and python 2.x need to be the default. + echo "using python : 3.3 : /usr/bin/python3 : /usr/include/python3.3m : /usr/lib ;" >> ./tools/build/v2/user-config.jam + # Support for OpenMPI + echo "using mpi ;" >> ./tools/build/v2/user-config.jam + + ./bootstrap.sh --with-toolset=gcc --with-icu --with-python=/usr/bin/python2 + + _bindir="bin.linuxx86" + [ "${CARCH}" = "x86_64" ] && _bindir="bin.linuxx86_64" + + install -d -m 755 "${_stagedir}"/bin + install "${srcdir}"/${pkgbase}_${_boostver}/tools/build/v2/engine/${_bindir}/bjam "${_stagedir}"/bin/bjam + + pushd tools + for _tool in bcp inspect quickbook compiler_status process_jam_log wave; do + "${_stagedir}"/bin/bjam --toolset=gcc $_tool + done + "${_stagedir}"/bin/bjam --toolset=gcc cflags="-std=gnu++11" library_status + popd + cp -a dist/bin/* "${_stagedir}"/bin + + #boostbook is needed by quickbook + install -d -m 755 "${_stagedir}"/share/boostbook + cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/ + + # default "minimal" install: "release link=shared,static + # runtime-link=shared threading=single,multi" + # --layout=tagged will add the "-mt" suffix for multithreaded libraries + # and installs includes in /usr/include/boost. + # --layout=system no longer adds the -mt suffix for multi-threaded libs. + # install to ${_stagedir} in preparation for split packaging + "${_stagedir}"/bin/bjam \ + variant=release \ + debug-symbols=off \ + threading=multi \ + runtime-link=shared \ + link=shared \ + toolset=gcc \ + python=2.7 \ + --layout=system \ + --prefix="${_stagedir}" \ + ${JOBS} \ + install + + find ${_stagedir} -name \*.a -exec rm -f {} \; +} + +package_boost() { + pkgdesc="Free peer-reviewed portable C++ source libraries - Development" + depends=("boost-libs=${pkgver}") + optdepends=('python: for python bindings' + 'python2: for python2 bindings' + 'boost-build: to use boost jam for building your project.') + + install -d -m 755 "${pkgdir}"/usr + cp -a "${_stagedir}"/{bin,include,share} "${pkgdir}"/usr + + install -D -m 644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ + "${pkgdir}"/usr/share/licenses/boost/LICENSE_1_0.txt +} + +package_boost-libs() { + pkgdesc="Free peer-reviewed portable C++ source libraries - Runtime" + depends=('bzip2' 'zlib' 'icu') + optdepends=('openmpi: for mpi support') + + install -d -m 755 "${pkgdir}"/usr + cp -a "${_stagedir}"/lib "${pkgdir}"/usr + + install -D -m 644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ + "${pkgdir}"/usr/share/licenses/boost-libs/LICENSE_1_0.txt +} Deleted: extra-x86_64/boost-1.52.0-python3.patch =================================================================== --- extra-x86_64/boost-1.52.0-python3.patch 2013-03-27 13:29:26 UTC (rev 180861) +++ extra-x86_64/boost-1.52.0-python3.patch 2013-03-27 13:30:16 UTC (rev 180862) @@ -1,96 +0,0 @@ -diff -Naur boost_1_53_0.ori/libs/mpi/src/python/datatypes.cpp boost_1_53_0/libs/mpi/src/python/datatypes.cpp ---- boost_1_53_0.ori/libs/mpi/src/python/datatypes.cpp 2007-11-25 13:38:02.000000000 -0500 -+++ boost_1_53_0/libs/mpi/src/python/datatypes.cpp 2013-03-11 20:59:57.171732691 -0400 -@@ -13,6 +13,10 @@ - #include <boost/mpi/python/serialize.hpp> - #include <boost/mpi.hpp> - -+#if PY_MAJOR_VERSION >= 3 -+#define PyInt_Type PyLong_Type -+#endif -+ - namespace boost { namespace mpi { namespace python { - - void export_datatypes() -diff -Naur boost_1_53_0.ori/libs/mpi/src/python/py_environment.cpp boost_1_53_0/libs/mpi/src/python/py_environment.cpp ---- boost_1_53_0.ori/libs/mpi/src/python/py_environment.cpp 2007-11-25 13:38:02.000000000 -0500 -+++ boost_1_53_0/libs/mpi/src/python/py_environment.cpp 2013-03-11 21:02:12.961737401 -0400 -@@ -11,6 +11,9 @@ - * This file reflects the Boost.MPI "environment" class into Python - * methods at module level. - */ -+ -+#include <locale> -+#include <string> - #include <boost/python.hpp> - #include <boost/mpi.hpp> - -@@ -50,11 +53,65 @@ - - // If anything changed, convert C-style argc/argv into Python argv - if (mpi_argv != my_argv) -+ { -+#if PY_MAJOR_VERSION >= 3 -+ // Code stolen from py3k/Modules/python.c. -+ -+ wchar_t **argv_copy = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc); -+ /* We need a second copies, as Python might modify the first one. */ -+ wchar_t **argv_copy2 = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc); -+ -+ if (!argv_copy || !argv_copy2) { -+ fprintf(stderr, "out of memory\n"); -+ return false; -+ } -+ -+ std::locale mylocale; -+ mbstate_t mystate; -+ -+ const std::codecvt<char, wchar_t, mbstate_t>& myfacet = -+ std::use_facet<std::codecvt<char, wchar_t, mbstate_t> >(mylocale); -+ -+ for (int i = 0; i < mpi_argc; i++) -+ { -+ size_t length = strlen(mpi_argv[i]); -+ -+ wchar_t *dest = (wchar_t *) PyMem_Malloc(sizeof(wchar_t) * (length + 1)); -+ -+ const char *from_next; -+ wchar_t *to_next; -+ -+ std::codecvt<wchar_t,char,mbstate_t>::result myresult = -+ myfacet.out(mystate, -+ mpi_argv[i], mpi_argv[i] + length + 1, from_next, -+ dest, dest+length+1, to_next); -+ -+ if (myresult != std::codecvt<wchar_t,char,mbstate_t>::ok ) -+ { -+ fprintf(stderr, "failure translating argv\n"); -+ return 1; -+ } -+ -+ argv_copy2[i] = argv_copy[i] = dest; -+ if (!argv_copy[i]) -+ return false; -+ } -+ -+ PySys_SetArgv(mpi_argc, argv_copy); -+ -+ for (int i = 0; i < mpi_argc; i++) { -+ PyMem_Free(argv_copy2[i]); -+ } -+ PyMem_Free(argv_copy); -+ PyMem_Free(argv_copy2); -+#else - PySys_SetArgv(mpi_argc, mpi_argv); -+#endif -+ } - -- for (int arg = 0; arg < my_argc; ++arg) -- free(my_argv[arg]); -- delete [] my_argv; -+ for (int arg = 0; arg < mpi_argc; ++arg) -+ free(mpi_argv[arg]); -+ delete [] mpi_argv; - - return true; - } Copied: boost/repos/extra-x86_64/boost-1.52.0-python3.patch (from rev 180861, boost/trunk/boost-1.52.0-python3.patch) =================================================================== --- extra-x86_64/boost-1.52.0-python3.patch (rev 0) +++ extra-x86_64/boost-1.52.0-python3.patch 2013-03-27 13:30:16 UTC (rev 180862) @@ -0,0 +1,96 @@ +diff -Naur boost_1_53_0.ori/libs/mpi/src/python/datatypes.cpp boost_1_53_0/libs/mpi/src/python/datatypes.cpp +--- boost_1_53_0.ori/libs/mpi/src/python/datatypes.cpp 2007-11-25 13:38:02.000000000 -0500 ++++ boost_1_53_0/libs/mpi/src/python/datatypes.cpp 2013-03-11 20:59:57.171732691 -0400 +@@ -13,6 +13,10 @@ + #include <boost/mpi/python/serialize.hpp> + #include <boost/mpi.hpp> + ++#if PY_MAJOR_VERSION >= 3 ++#define PyInt_Type PyLong_Type ++#endif ++ + namespace boost { namespace mpi { namespace python { + + void export_datatypes() +diff -Naur boost_1_53_0.ori/libs/mpi/src/python/py_environment.cpp boost_1_53_0/libs/mpi/src/python/py_environment.cpp +--- boost_1_53_0.ori/libs/mpi/src/python/py_environment.cpp 2007-11-25 13:38:02.000000000 -0500 ++++ boost_1_53_0/libs/mpi/src/python/py_environment.cpp 2013-03-11 21:02:12.961737401 -0400 +@@ -11,6 +11,9 @@ + * This file reflects the Boost.MPI "environment" class into Python + * methods at module level. + */ ++ ++#include <locale> ++#include <string> + #include <boost/python.hpp> + #include <boost/mpi.hpp> + +@@ -50,11 +53,65 @@ + + // If anything changed, convert C-style argc/argv into Python argv + if (mpi_argv != my_argv) ++ { ++#if PY_MAJOR_VERSION >= 3 ++ // Code stolen from py3k/Modules/python.c. ++ ++ wchar_t **argv_copy = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc); ++ /* We need a second copies, as Python might modify the first one. */ ++ wchar_t **argv_copy2 = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc); ++ ++ if (!argv_copy || !argv_copy2) { ++ fprintf(stderr, "out of memory\n"); ++ return false; ++ } ++ ++ std::locale mylocale; ++ mbstate_t mystate; ++ ++ const std::codecvt<char, wchar_t, mbstate_t>& myfacet = ++ std::use_facet<std::codecvt<char, wchar_t, mbstate_t> >(mylocale); ++ ++ for (int i = 0; i < mpi_argc; i++) ++ { ++ size_t length = strlen(mpi_argv[i]); ++ ++ wchar_t *dest = (wchar_t *) PyMem_Malloc(sizeof(wchar_t) * (length + 1)); ++ ++ const char *from_next; ++ wchar_t *to_next; ++ ++ std::codecvt<wchar_t,char,mbstate_t>::result myresult = ++ myfacet.out(mystate, ++ mpi_argv[i], mpi_argv[i] + length + 1, from_next, ++ dest, dest+length+1, to_next); ++ ++ if (myresult != std::codecvt<wchar_t,char,mbstate_t>::ok ) ++ { ++ fprintf(stderr, "failure translating argv\n"); ++ return 1; ++ } ++ ++ argv_copy2[i] = argv_copy[i] = dest; ++ if (!argv_copy[i]) ++ return false; ++ } ++ ++ PySys_SetArgv(mpi_argc, argv_copy); ++ ++ for (int i = 0; i < mpi_argc; i++) { ++ PyMem_Free(argv_copy2[i]); ++ } ++ PyMem_Free(argv_copy); ++ PyMem_Free(argv_copy2); ++#else + PySys_SetArgv(mpi_argc, mpi_argv); ++#endif ++ } + +- for (int arg = 0; arg < my_argc; ++arg) +- free(my_argv[arg]); +- delete [] my_argv; ++ for (int arg = 0; arg < mpi_argc; ++arg) ++ free(mpi_argv[arg]); ++ delete [] mpi_argv; + + return true; + }