diff options
author | Robbert van der Helm | 2021-06-23 12:25:24 +0200 |
---|---|---|
committer | Robbert van der Helm | 2021-06-23 12:25:24 +0200 |
commit | b93a71312b32cb9cc707b1f4092c1c1e22068ada (patch) | |
tree | a2ee09d93a813fd017f25a4cc4ab3d023ec943aa | |
parent | 5e3112cf3ffd2dcd9c0fbaa745ae255472afd34a (diff) | |
download | aur-b93a71312b32cb9cc707b1f4092c1c1e22068ada.tar.gz |
Update for Boost 1.76
This also changes the PKGBUILD to match the upstream changes from
https://github.com/archlinux/svntogit-packages/tree/packages/boost/trunk.
-rw-r--r-- | .SRCINFO | 12 | ||||
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | PKGBUILD | 119 |
3 files changed, 65 insertions, 68 deletions
@@ -1,7 +1,7 @@ pkgbase = lib32-boost-libs pkgdesc = Free peer-reviewed portable C++ source libraries - runtime libraries (32-bit) - pkgver = 1.75.0 - pkgrel = 2 + pkgver = 1.76.0 + pkgrel = 1 url = http://www.boost.org arch = x86_64 groups = lib32 @@ -10,7 +10,6 @@ pkgbase = lib32-boost-libs makedepends = lib32-bzip2 makedepends = lib32-zlib makedepends = lib32-zstd - makedepends = findutils makedepends = python depends = lib32-bzip2 depends = lib32-zlib @@ -28,6 +27,7 @@ pkgbase = lib32-boost-libs provides = libboost_graph.so provides = libboost_graph_parallel.so provides = libboost_iostreams.so + provides = libboost_json.so provides = libboost_locale.so provides = libboost_log.so provides = libboost_log_setup.so @@ -53,12 +53,10 @@ pkgbase = lib32-boost-libs provides = libboost_wave.so provides = libboost_wserialization.so options = staticlibs - source = https://boostorg.jfrog.io/artifactory/main/release/1.75.0/source/boost_1_75_0.tar.bz2 + source = https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.gz source = boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch - sha256sums = 953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb + sha256sums = 7bd7ddceec1a1dfdcbdb3e609b60d01739c38390a5f956385a12f3122049f0ca sha256sums = aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee - b2sums = ce7ecd8bcee518ce54f7e5302f202acbea60cedd6ae9248708c0bb5bbc2713607b2e1967a9e6f77cc20a4c008c1ee4db651def55937efc80407487a7a44fa8d6 - b2sums = e5f6d4884eaa557d5547e7e079c2edb4ed9f2f4cd8579aa32a2150f824a5d04413f2a91e79b3139d5b915da6a46f7835f1438ad53f33096973f1a99f378ec1d3 pkgname = lib32-boost-libs diff --git a/.gitignore b/.gitignore index b137ca341e5d..5050f2b65bce 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ src/ pkg/ -*.tar.bz2 +*.tar.gz *.pkg.tar.* boost-ublas-c++20-iterator.patch @@ -5,21 +5,21 @@ # Contributor: andy123 < ajs AT online DOT de > pkgname=lib32-boost-libs -pkgver=1.75.0 -_boostver=${pkgver//./_} -pkgrel=2 -url='http://www.boost.org' +pkgver=1.76.0 +pkgrel=1 +_srcname=boost_${pkgver//./_} +pkgdesc="Free peer-reviewed portable C++ source libraries - runtime libraries (32-bit)" +url="http://www.boost.org" arch=('x86_64') -pkgdesc='Free peer-reviewed portable C++ source libraries - runtime libraries (32-bit)' license=('custom') groups=('lib32') +makedepends=('lib32-icu' 'lib32-bzip2' 'lib32-zlib' 'lib32-zstd' 'python') depends=('lib32-bzip2' 'lib32-zlib' 'lib32-icu' 'lib32-zstd') -makedepends=('lib32-icu' 'lib32-bzip2' 'lib32-zlib' 'lib32-zstd' 'findutils' 'python') provides=(libboost_atomic.so libboost_chrono.so libboost_container.so libboost_context.so libboost_contract.so libboost_coroutine.so libboost_date_time.so libboost_fiber.so libboost_filesystem.so libboost_graph.so libboost_graph_parallel.so libboost_iostreams.so - libboost_locale.so libboost_log.so libboost_log_setup.so + libboost_json.so libboost_locale.so libboost_log.so libboost_log_setup.so libboost_math_c99.so libboost_math_c99f.so libboost_math_c99l.so libboost_math_tr1.so libboost_math_tr1f.so libboost_math_tr1l.so libboost_prg_exec_monitor.so libboost_program_options.so @@ -29,94 +29,93 @@ provides=(libboost_atomic.so libboost_chrono.so libboost_container.so libboost_timer.so libboost_type_erasure.so libboost_unit_test_framework.so libboost_wave.so libboost_wserialization.so) options=('staticlibs') -# FIXME: The repository used in the orignal Arch package seems to be gone. This -# download is listed on Boost's own download page so it should be safe, -# but we should check what the regular boost PKGBUILD is doing after -# that gets updated: -# https://github.com/archlinux/svntogit-packages/blob/packages/boost/trunk/PKGBUILD -source=(https://boostorg.jfrog.io/artifactory/main/release/${pkgver}/source/boost_${_boostver}.tar.bz2 - boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch) -sha256sums=('953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb' +source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz + boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch) +sha256sums=('7bd7ddceec1a1dfdcbdb3e609b60d01739c38390a5f956385a12f3122049f0ca' 'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee') -b2sums=('ce7ecd8bcee518ce54f7e5302f202acbea60cedd6ae9248708c0bb5bbc2713607b2e1967a9e6f77cc20a4c008c1ee4db651def55937efc80407487a7a44fa8d6' - 'e5f6d4884eaa557d5547e7e079c2edb4ed9f2f4cd8579aa32a2150f824a5d04413f2a91e79b3139d5b915da6a46f7835f1438ad53f33096973f1a99f378ec1d3') # This version of lib32-boost-libs does not include support OpenMPI or the # Python bindings since there are no (up to date) lib32 packages available for # them prepare() { - cd boost_${_boostver} + cd $_srcname # https://github.com/boostorg/ublas/pull/97 patch -Np2 -i ../boost-ublas-c++20-iterator.patch } build() { + local JOBS="$(sed 's/.*\(-j *[0-9]\+\).*/\1/' <<<$MAKEFLAGS)" + + # We need b2 before we can compile Boost itself, but this should just be built + # for the native architecture + pushd $_srcname/tools/build + ./bootstrap.sh --cxxflags="$CXXFLAGS $LDFLAGS" + ./b2 install --prefix="$srcdir"/fakeinstall + ln -s b2 "$srcdir"/fakeinstall/bin/bjam + popd + export CC='gcc' - export CFLAGS='-m32' + export CFLAGS+=' -m32' export CXX='g++' - export CXXFLAGS='-m32' - export LDFLAGS='-m32' + export CXXFLAGS+=' -m32' + export LDFLAGS+=' -m32' export PKG_CONFIG_PATH='/usr/lib32/pkgconfig' - export _stagedir="${srcdir}/stagedir" - local JOBS="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" - - cd boost_${_boostver} - + cd $_srcname # There are currently no up to date lib32-python packages available ./bootstrap.sh --with-toolset=gcc --with-icu --with-python= - install -Dm755 tools/build/src/engine/b2 "${_stagedir}"/bin/b2 - # Same for OpenMPI - # # Support for OpenMPI - # echo "using mpi ;" >> project-config.jam + # # support for OpenMPI + # echo "using mpi ;" >>project-config.jam # boostbook is needed by quickbook - install -dm755 "${_stagedir}"/share/boostbook - cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/ + install -dm755 "$srcdir"/fakeinstall/share/boostbook + cp -a tools/boostbook/{xsl,dtd} "$srcdir"/fakeinstall/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/b2 \ - variant=release \ - debug-symbols=off \ - threading=multi \ - runtime-link=shared \ - link=shared,static \ - toolset=gcc \ - address-model=32 \ - --without-python \ - --without-mpi \ - cflags="${CPPFLAGS} ${CFLAGS} -fPIC -O3" \ - cxxflags="${CPPFLAGS} ${CXXFLAGS} -std=c++14 -fPIC -O3" \ - linkflags="${LDFLAGS}" \ - --layout=system \ - ${JOBS} \ - \ - --prefix="${_stagedir}" \ - install + # Since we're sticking to the original PKGBUILD we'll still do this + # fakeinstall thing, even though we're generating only one package + # install to $srcdir/fakeinstall in preparation for split packaging + ./b2 install \ + variant=release \ + debug-symbols=off \ + threading=multi \ + runtime-link=shared \ + link=shared,static \ + toolset=gcc \ + address-model=32 \ + --without-python \ + --without-mpi \ + cflags="$CPPFLAGS $CFLAGS -fPIC -O3" \ + cxxflags="$CPPFLAGS $CXXFLAGS -fPIC -O3" \ + linkflags="$LDFLAGS" \ + --layout=system \ + $JOBS \ + \ + --prefix="$srcdir"/fakeinstall } package() { # We're including both static libraries and shared objects here. The regular # boost package splits those between the `boost` and `boost-libs` packages. install -dm755 "${pkgdir}"/usr/lib32 - cp -a "${_stagedir}"/lib/* "${pkgdir}"/usr/lib32 + cp -a fakeinstall/lib/* "${pkgdir}"/usr/lib32 # This would be needed if built with Python support + # # https://github.com/boostorg/mpi/issues/112 + # install -d "$pkgdir"/usr/lib/python3.9/site-packages/boost + # touch "$pkgdir"/usr/lib/python3.9/site-packages/boost/__init__.py + # python -m compileall -o 0 -o 1 -o 2 "$pkgdir"/usr/lib/python3.9/site-packages/boost + # cp fakeinstall/lib/boost-python3.9/mpi.so \ + # "$pkgdir"/usr/lib32/python3.9/site-packages/boost/mpi.so + # # https://github.com/boostorg/python/issues/203#issuecomment-391477685 # for _lib in python numpy; do - # ln -srL "${pkgdir}"/usr/lib32/libboost_${_lib}{27,}.so - # ln -srL "${pkgdir}"/usr/lib32/libboost_${_lib}3{9,}.so + # ln -srL "$pkgdir"/usr/lib32/libboost_${_lib}3{9,}.so # done - install -Dm644 "${srcdir}/"boost_${_boostver}/LICENSE_1_0.txt \ + install -Dm644 $_srcname/LICENSE_1_0.txt \ "${pkgdir}"/usr/share/licenses/lib32-boost-libs/LICENSE_1_0.txt } |