diff options
Diffstat (limited to 'abs/extra/boost/PKGBUILD')
-rw-r--r-- | abs/extra/boost/PKGBUILD | 163 |
1 files changed, 78 insertions, 85 deletions
diff --git a/abs/extra/boost/PKGBUILD b/abs/extra/boost/PKGBUILD index 7629843..68774ae 100644 --- a/abs/extra/boost/PKGBUILD +++ b/abs/extra/boost/PKGBUILD @@ -1,113 +1,106 @@ -# $Id: PKGBUILD 163703 2012-07-18 01:05:09Z ibiru $ -# Maintainer: kevin <kevin@archlinux.org> +# $Id$ +# Maintainer: Ionut Biru <ibiru@archlinux.org> +# Contributor: Stéphane Gaudreault <stephane@archlinux.org> +# Contributor: kevin <kevin@archlinux.org> # Contributor: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Kritoke <kritoke@gamebox.net> # Contributor: Luca Roccia <little_rock@users.sourceforge.net> pkgbase=boost pkgname=('boost-libs' 'boost') -pkgver=1.50.0 +pkgver=1.57.0 _boostver=${pkgver//./_} -pkgrel=1 +pkgrel=2 +url='http://www.boost.org/' arch=('i686' 'x86_64') -url="http://www.boost.org/" -makedepends=('icu' 'python2' 'bzip2' 'zlib' 'openmpi') -source=(http://downloads.sourceforge.net/${pkgbase}/${pkgbase}_${_boostver}.tar.gz) license=('custom') -md5sums=('dbc07ab0254df3dda6300fd737b3f264') +makedepends=('icu>=53.1' 'python2' 'bzip2' 'zlib' 'openmpi') +source=(https://downloads.sourceforge.net/project/${pkgbase}/${pkgbase}/${pkgver}/${pkgbase}_${_boostver}.tar.bz2 + 0001-Add-missing-include-to-signals2-trackable.hpp.patch) +sha1sums=('e151557ae47afd1b43dc3fac46f8b04a8fe51c12' + '35bc8ad7493a641ec708a691036fe5319aec70cd') -_stagedir="${srcdir}/stagedir" +prepare() { + cd ${pkgbase}_${_boostver} + + # https://github.com/boostorg/signals2/pull/8 + patch -Np2 -i ../0001-Add-missing-include-to-signals2-trackable.hpp.patch +} build() { - # set python path for bjam - cd "${srcdir}/${pkgbase}_${_boostver}/tools" - echo "using python : 2.7 : /usr/bin/python2 ;" >> build/v2/user-config.jam - #echo "using python : 3.2 : /usr/bin/python : /usr/include/python3.2mu : /usr/lib ;" >> build/v2/user-config.jam - echo "using mpi ;" >> build/v2/user-config.jam - - cd "${srcdir}"/${pkgbase}_${_boostver} - - # build bjam - cd "${srcdir}/${pkgbase}_${_boostver}/tools/build/v2/engine" - ./build.sh cc - - _bindir="bin.linuxx86" - [ "${CARCH}" = "x86_64" ] && _bindir="bin.linuxx86_64" - - install -d "${_stagedir}"/usr/bin - install ${_bindir}/bjam "${_stagedir}"/usr/bin/bjam - - # build tools - cd "${srcdir}/${pkgbase}_${_boostver}/tools/" - "${_stagedir}"/usr/bin/bjam --toolset=gcc - - # copy the tools - cd "${srcdir}/${pkgbase}_${_boostver}/dist/bin" - for i in *;do - install -m755 "${i}" "${_stagedir}/usr/bin/${i}" - done - - #boostbook needed by quickbook - cd "${srcdir}/${pkgbase}_${_boostver}/dist/" - cp -r share "${_stagedir}" - - # build libs - cd "${srcdir}/${pkgbase}_${_boostver}" - - # 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}"/usr/bin/bjam \ - release debug-symbols=off threading=multi \ - runtime-link=shared link=shared,static \ - cflags=-fno-strict-aliasing \ + export _stagedir="${srcdir}/stagedir" + local JOBS="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" + + cd ${pkgbase}_${_boostver} + + ./bootstrap.sh --with-toolset=gcc --with-icu --with-python=/usr/bin/python2 + + _bindir="bin.linuxx86" + [[ "${CARCH}" = "x86_64" ]] && _bindir="bin.linuxx86_64" + install -Dm755 tools/build/src/engine/$_bindir/b2 "${_stagedir}"/bin/b2 + + # Add an extra python version. This does not replace anything and python 2.x + # need to be the default. + #echo "using python : 3.4 : /usr/bin/python3 : /usr/include/python3.4m : /usr/lib ;" \ + # >> 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/ + + # 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 \ - --prefix="${_stagedir}" \ - -sTOOLS=gcc \ + python=2.7 \ + cflags="${CPPFLAGS} ${CFLAGS} -O3" linkflags="${LDFLAGS}" \ --layout=system \ - ${MAKEFLAGS} \ + --prefix="${_stagedir}" \ + ${JOBS} \ install } 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 "${pkgdir}"/usr/{include,lib,share} - # headers/source files - cp -r "${_stagedir}"/include/ "${pkgdir}"/usr/ + pkgdesc='Free peer-reviewed portable C++ source libraries - development headers' + depends=("boost-libs=${pkgver}") + optdepends=('python: for python bindings' + 'python2: for python2 bindings' + 'boost-build: to use boost jam for building your project.') + options=('staticlibs') - # static libs - cp -r "${_stagedir}"/lib/*.a "${pkgdir}"/usr/lib/ + install -dm755 "${pkgdir}"/usr + cp -a "${_stagedir}"/{bin,include,share} "${pkgdir}"/usr - # utilities (bjam, bcp, pyste) - cp -r "${_stagedir}"/usr/* "${pkgdir}"/usr/ + install -d "${pkgdir}"/usr/lib + cp -a "${_stagedir}"/lib/*.a "${pkgdir}"/usr/lib/ - #boostbook - cp -r "${_stagedir}"/share/* "${pkgdir}"/usr/share + install -Dm644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ + "${pkgdir}"/usr/share/licenses/boost/LICENSE_1_0.txt - # license - install -D -m644 "${srcdir}/${pkgbase}_${_boostver}/LICENSE_1_0.txt" \ - "${pkgdir}"/usr/share/licenses/boost/LICENSE_1_0.txt + ln -s /usr/bin/b2 "$pkgdir"/usr/bin/bjam } package_boost-libs() { - pkgdesc="Free peer-reviewed portable C++ source libraries - Runtime" - depends=('gcc-libs' 'bzip2' 'zlib' 'icu') - optdepends=('openmpi: for mpi support') + pkgdesc='Free peer-reviewed portable C++ source libraries - runtime libraries' + depends=('bzip2' 'zlib' 'icu') + optdepends=('openmpi: for mpi support') - install -d "${pkgdir}/usr/lib" - #shared libs - cp -r "${_stagedir}"/lib/*.so{,.*} "${pkgdir}/usr/lib/" + install -dm755 "${pkgdir}"/usr + cp -a "${_stagedir}"/lib "${pkgdir}"/usr + rm "${pkgdir}"/usr/lib/*.a - # license - install -D -m644 "${srcdir}/${pkgbase}_${_boostver}/LICENSE_1_0.txt" \ - "${pkgdir}"/usr/share/licenses/boost-libs/LICENSE_1_0.txt + install -Dm644 "${srcdir}/"${pkgbase}_${_boostver}/LICENSE_1_0.txt \ + "${pkgdir}"/usr/share/licenses/boost-libs/LICENSE_1_0.txt } |