Update android boost packages to 1.84.0
This commit is contained in:
parent
2abc6e91b9
commit
c77e67b04e
|
@ -3,153 +3,146 @@
|
|||
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
|
||||
# you also find the URL of a binary repository.
|
||||
|
||||
_pkgname=boost
|
||||
_pkg_arch=aarch64
|
||||
_android_arch=arm64-v8a
|
||||
_boost_arch=arm
|
||||
_boost_address_model=64
|
||||
|
||||
pkgname=android-$_pkg_arch-$_pkgname
|
||||
pkgver=1.81.0
|
||||
_srcname=boost_${pkgver//./_}
|
||||
_android_arch=aarch64
|
||||
pkgname=android-${_android_arch}-boost
|
||||
pkgver=1.84.0
|
||||
pkgrel=1
|
||||
url='https://www.boost.org/'
|
||||
_srcname=boost_${pkgver//./_}
|
||||
arch=('any')
|
||||
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
|
||||
url="https://www.boost.org/"
|
||||
license=('custom')
|
||||
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)"
|
||||
depends=("android-$_pkg_arch-libiconv")
|
||||
options=(!buildflags staticlibs !strip !emptydirs)
|
||||
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment')
|
||||
conflicts=("android-$_pkgname-$_android_arch")
|
||||
replaces=("android-$_pkgname-$_android_arch")
|
||||
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz
|
||||
boost-1.81.0-phoenix-multiple-definitions.patch
|
||||
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch
|
||||
no-versioned-shlibs.patch
|
||||
disable-version-check.patch)
|
||||
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6'
|
||||
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb'
|
||||
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee'
|
||||
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23'
|
||||
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b')
|
||||
depends=("android-${_android_arch}-bzip2"
|
||||
"android-${_android_arch}-icu"
|
||||
"android-${_android_arch}-zlib"
|
||||
"android-${_android_arch}-zstd")
|
||||
makedepends=('android-environment')
|
||||
if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
|
||||
makedepends+=("android-${_android_arch}-openmpi")
|
||||
optdepends+=("android-${_android_arch}-openmpi: for mpi support")
|
||||
fi
|
||||
options=(!strip !buildflags staticlibs !emptydirs)
|
||||
source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
|
||||
"boost-1.81.0-phoenix-multiple-definitions.patch"
|
||||
"boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
|
||||
"disable-version-check.patch")
|
||||
md5sums=('9cbfb9076ed06384471802b850698a6d'
|
||||
'cb1c25777e9b85af62366e7c930244b8'
|
||||
'991daf28f76ea0383620ccaf971decba'
|
||||
'6290eb4fa0cab451aac92e12e85ef073')
|
||||
|
||||
prepare() {
|
||||
cd ${_srcname}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
# https://github.com/boostorg/phoenix/issues/111
|
||||
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
|
||||
|
||||
# https://github.com/boostorg/ublas/pull/97
|
||||
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch
|
||||
|
||||
patch -i ../no-versioned-shlibs.patch
|
||||
patch -Np2 -i ../boost-ublas-c++20-iterator.patch
|
||||
patch -p1 -i ../disable-version-check.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
source android-env ${_pkg_arch}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
local _stagedir="${srcdir}/stagedir"
|
||||
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})"
|
||||
local target_flags=" \
|
||||
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT"
|
||||
local common_flags=" \
|
||||
$target_flags \
|
||||
-fexceptions \
|
||||
-DANDROID \
|
||||
-O3 -DNDEBUG \
|
||||
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \
|
||||
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1"
|
||||
local ld_flags=" \
|
||||
$target_flags \
|
||||
-fexceptions"
|
||||
# Platform specific patches
|
||||
case "$_android_arch" in
|
||||
aarch64)
|
||||
_boost_arch=arm
|
||||
_boost_address_model=64
|
||||
;;
|
||||
armv7a-eabi)
|
||||
_boost_arch=arm
|
||||
_boost_address_model=32
|
||||
;;
|
||||
x86)
|
||||
_boost_arch=x86
|
||||
_boost_address_model=32
|
||||
;;
|
||||
x86-64)
|
||||
_boost_arch=x86
|
||||
_boost_address_model=64
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
cd ${_srcname}
|
||||
./bootstrap.sh -with-toolset=gcc
|
||||
|
||||
msg2 'Bootstrapping b2'
|
||||
./bootstrap.sh --with-toolset=gcc
|
||||
# support for OpenMPI
|
||||
if [[ _boost_address_model == 64 ]]; then
|
||||
_boost_mpi='using mpi ;'
|
||||
else
|
||||
_boost_mpi=''
|
||||
fi
|
||||
|
||||
install -Dm755 tools/build/src/engine/b2 "${_stagedir}"/bin/b2
|
||||
userConfigs=$srcdir/$_srcname/user-config.jam
|
||||
|
||||
# Support for OpenMPI
|
||||
echo "using mpi ;" >> project-config.jam
|
||||
cat << EOF > "${userConfigs}"
|
||||
${_boost_mpi}
|
||||
using clang : android : ${ANDROID_CXX} :
|
||||
<archiver>${ANDROID_AR} \
|
||||
<assembler>${ANDROID_AS}
|
||||
;
|
||||
EOF
|
||||
|
||||
# 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 $ANDROID_PREFIX/include/boost.
|
||||
# --layout=system no longer adds the -mt suffix for multi-threaded libs.
|
||||
# install to ${_stagedir} for consistency with regular boost package
|
||||
msg2 'Invoking build via b2'
|
||||
export PATH=$ANDROID_CROSS_PREFIX:$PATH
|
||||
"${_stagedir}"/bin/b2 \
|
||||
--with-atomic \
|
||||
--with-chrono \
|
||||
--with-container \
|
||||
--with-date_time \
|
||||
--with-exception \
|
||||
--with-fiber \
|
||||
--with-filesystem \
|
||||
--with-graph \
|
||||
--with-graph_parallel \
|
||||
--with-iostreams \
|
||||
--with-locale \
|
||||
--with-log \
|
||||
--with-math \
|
||||
--with-mpi \
|
||||
--with-program_options \
|
||||
--with-random \
|
||||
--with-regex \
|
||||
--with-serialization \
|
||||
--with-system \
|
||||
--with-test \
|
||||
--with-thread \
|
||||
--with-timer \
|
||||
--with-type_erasure \
|
||||
--with-wave \
|
||||
--with-stacktrace \
|
||||
variant=release \
|
||||
debug-symbols=off \
|
||||
threading=multi \
|
||||
runtime-link=shared \
|
||||
link=shared,static \
|
||||
target-os=android \
|
||||
toolset=clang-android \
|
||||
architecture=$_boost_arch \
|
||||
address-model=$_boost_address_model \
|
||||
-sICONV_PATH="$ANDROID_PREFIX" \
|
||||
cflags="$common_flags" \
|
||||
cxxflags="$common_flags -frtti -std=gnu++17" \
|
||||
linkflags="$ld_flags" \
|
||||
--layout=system \
|
||||
${jobs} \
|
||||
\
|
||||
--prefix="${_stagedir}" \
|
||||
install
|
||||
./b2 install \
|
||||
--prefix="$srcdir/fakeinstall" \
|
||||
--user-config="${userConfigs}" \
|
||||
--layout=system \
|
||||
--with-atomic \
|
||||
--with-chrono \
|
||||
--with-container \
|
||||
--with-date_time \
|
||||
--with-exception \
|
||||
--with-fiber \
|
||||
--with-filesystem \
|
||||
--with-graph \
|
||||
--with-graph_parallel \
|
||||
--with-iostreams \
|
||||
--with-locale \
|
||||
--with-log \
|
||||
--with-math \
|
||||
--with-mpi \
|
||||
--with-program_options \
|
||||
--with-random \
|
||||
--with-regex \
|
||||
--with-serialization \
|
||||
--with-system \
|
||||
--with-test \
|
||||
--with-thread \
|
||||
--with-timer \
|
||||
--with-type_erasure \
|
||||
--with-wave \
|
||||
--with-stacktrace \
|
||||
-sICONV_PATH="${ANDROID_PREFIX}" \
|
||||
variant=release \
|
||||
debug-symbols=off \
|
||||
runtime-link=shared \
|
||||
link=shared,static \
|
||||
target-os=android \
|
||||
toolset=clang-android \
|
||||
architecture=$_boost_arch \
|
||||
threading=multi \
|
||||
address-model=$_boost_address_model \
|
||||
cflags="${CXXFLAGS}" \
|
||||
cxxflags="${CFLAGS}" \
|
||||
linkflags="${LDFLAGS}"
|
||||
}
|
||||
|
||||
package() {
|
||||
source android-env ${_pkg_arch}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
local _stagedir="${srcdir}/stagedir"
|
||||
install -dm755 "${pkgdir}$ANDROID_PREFIX"
|
||||
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
|
||||
find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
|
||||
find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
|
||||
|
||||
local libdir="${pkgdir}$ANDROID_PREFIX"/lib
|
||||
install -d "${libdir}"
|
||||
cp -a "${_stagedir}"/lib/*.a "${libdir}"/
|
||||
install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
|
||||
|
||||
install -dm755 "${pkgdir}$ANDROID_PREFIX"
|
||||
cp -a "${_stagedir}"/lib "${pkgdir}$ANDROID_PREFIX"
|
||||
|
||||
install -Dm644 "${srcdir}/"${_srcname}/LICENSE_1_0.txt \
|
||||
"${pkgdir}"/usr/share/licenses/$pkgname/LICENSE_1_0.txt
|
||||
|
||||
find "${libdir}" -iname '*.a' -exec $ANDROID_STRIP -g {} \;
|
||||
find "${libdir}" -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
|
||||
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
||||
|
|
|
@ -3,153 +3,146 @@
|
|||
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
|
||||
# you also find the URL of a binary repository.
|
||||
|
||||
_pkgname=boost
|
||||
_pkg_arch=armv7a-eabi
|
||||
_android_arch=armeabi-v7a
|
||||
_boost_arch=arm
|
||||
_boost_address_model=32
|
||||
|
||||
pkgname=android-$_pkg_arch-$_pkgname
|
||||
pkgver=1.81.0
|
||||
_srcname=boost_${pkgver//./_}
|
||||
_android_arch=armv7a-eabi
|
||||
pkgname=android-${_android_arch}-boost
|
||||
pkgver=1.84.0
|
||||
pkgrel=1
|
||||
url='https://www.boost.org/'
|
||||
_srcname=boost_${pkgver//./_}
|
||||
arch=('any')
|
||||
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
|
||||
url="https://www.boost.org/"
|
||||
license=('custom')
|
||||
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)"
|
||||
depends=("android-$_pkg_arch-libiconv")
|
||||
options=(!buildflags staticlibs !strip !emptydirs)
|
||||
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment')
|
||||
conflicts=("android-$_pkgname-$_android_arch")
|
||||
replaces=("android-$_pkgname-$_android_arch")
|
||||
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz
|
||||
boost-1.81.0-phoenix-multiple-definitions.patch
|
||||
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch
|
||||
no-versioned-shlibs.patch
|
||||
disable-version-check.patch)
|
||||
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6'
|
||||
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb'
|
||||
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee'
|
||||
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23'
|
||||
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b')
|
||||
depends=("android-${_android_arch}-bzip2"
|
||||
"android-${_android_arch}-icu"
|
||||
"android-${_android_arch}-zlib"
|
||||
"android-${_android_arch}-zstd")
|
||||
makedepends=('android-environment')
|
||||
if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
|
||||
makedepends+=("android-${_android_arch}-openmpi")
|
||||
optdepends+=("android-${_android_arch}-openmpi: for mpi support")
|
||||
fi
|
||||
options=(!strip !buildflags staticlibs !emptydirs)
|
||||
source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
|
||||
"boost-1.81.0-phoenix-multiple-definitions.patch"
|
||||
"boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
|
||||
"disable-version-check.patch")
|
||||
md5sums=('9cbfb9076ed06384471802b850698a6d'
|
||||
'cb1c25777e9b85af62366e7c930244b8'
|
||||
'991daf28f76ea0383620ccaf971decba'
|
||||
'6290eb4fa0cab451aac92e12e85ef073')
|
||||
|
||||
prepare() {
|
||||
cd ${_srcname}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
# https://github.com/boostorg/phoenix/issues/111
|
||||
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
|
||||
|
||||
# https://github.com/boostorg/ublas/pull/97
|
||||
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch
|
||||
|
||||
patch -i ../no-versioned-shlibs.patch
|
||||
patch -Np2 -i ../boost-ublas-c++20-iterator.patch
|
||||
patch -p1 -i ../disable-version-check.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
source android-env ${_pkg_arch}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
local _stagedir="${srcdir}/stagedir"
|
||||
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})"
|
||||
local target_flags=" \
|
||||
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT"
|
||||
local common_flags=" \
|
||||
$target_flags \
|
||||
-fexceptions \
|
||||
-DANDROID \
|
||||
-O3 -DNDEBUG \
|
||||
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \
|
||||
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1"
|
||||
local ld_flags=" \
|
||||
$target_flags \
|
||||
-fexceptions"
|
||||
# Platform specific patches
|
||||
case "$_android_arch" in
|
||||
aarch64)
|
||||
_boost_arch=arm
|
||||
_boost_address_model=64
|
||||
;;
|
||||
armv7a-eabi)
|
||||
_boost_arch=arm
|
||||
_boost_address_model=32
|
||||
;;
|
||||
x86)
|
||||
_boost_arch=x86
|
||||
_boost_address_model=32
|
||||
;;
|
||||
x86-64)
|
||||
_boost_arch=x86
|
||||
_boost_address_model=64
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
cd ${_srcname}
|
||||
./bootstrap.sh -with-toolset=gcc
|
||||
|
||||
msg2 'Bootstrapping b2'
|
||||
./bootstrap.sh --with-toolset=gcc
|
||||
# support for OpenMPI
|
||||
if [[ _boost_address_model == 64 ]]; then
|
||||
_boost_mpi='using mpi ;'
|
||||
else
|
||||
_boost_mpi=''
|
||||
fi
|
||||
|
||||
install -Dm755 tools/build/src/engine/b2 "${_stagedir}"/bin/b2
|
||||
userConfigs=$srcdir/$_srcname/user-config.jam
|
||||
|
||||
# Support for OpenMPI
|
||||
echo "using mpi ;" >> project-config.jam
|
||||
cat << EOF > "${userConfigs}"
|
||||
${_boost_mpi}
|
||||
using clang : android : ${ANDROID_CXX} :
|
||||
<archiver>${ANDROID_AR} \
|
||||
<assembler>${ANDROID_AS}
|
||||
;
|
||||
EOF
|
||||
|
||||
# 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 $ANDROID_PREFIX/include/boost.
|
||||
# --layout=system no longer adds the -mt suffix for multi-threaded libs.
|
||||
# install to ${_stagedir} for consistency with regular boost package
|
||||
msg2 'Invoking build via b2'
|
||||
export PATH=$ANDROID_CROSS_PREFIX:$PATH
|
||||
"${_stagedir}"/bin/b2 \
|
||||
--with-atomic \
|
||||
--with-chrono \
|
||||
--with-container \
|
||||
--with-date_time \
|
||||
--with-exception \
|
||||
--with-fiber \
|
||||
--with-filesystem \
|
||||
--with-graph \
|
||||
--with-graph_parallel \
|
||||
--with-iostreams \
|
||||
--with-locale \
|
||||
--with-log \
|
||||
--with-math \
|
||||
--with-mpi \
|
||||
--with-program_options \
|
||||
--with-random \
|
||||
--with-regex \
|
||||
--with-serialization \
|
||||
--with-system \
|
||||
--with-test \
|
||||
--with-thread \
|
||||
--with-timer \
|
||||
--with-type_erasure \
|
||||
--with-wave \
|
||||
--with-stacktrace \
|
||||
variant=release \
|
||||
debug-symbols=off \
|
||||
threading=multi \
|
||||
runtime-link=shared \
|
||||
link=shared,static \
|
||||
target-os=android \
|
||||
toolset=clang-android \
|
||||
architecture=$_boost_arch \
|
||||
address-model=$_boost_address_model \
|
||||
-sICONV_PATH="$ANDROID_PREFIX" \
|
||||
cflags="$common_flags" \
|
||||
cxxflags="$common_flags -frtti -std=gnu++17" \
|
||||
linkflags="$ld_flags" \
|
||||
--layout=system \
|
||||
${jobs} \
|
||||
\
|
||||
--prefix="${_stagedir}" \
|
||||
install
|
||||
./b2 install \
|
||||
--prefix="$srcdir/fakeinstall" \
|
||||
--user-config="${userConfigs}" \
|
||||
--layout=system \
|
||||
--with-atomic \
|
||||
--with-chrono \
|
||||
--with-container \
|
||||
--with-date_time \
|
||||
--with-exception \
|
||||
--with-fiber \
|
||||
--with-filesystem \
|
||||
--with-graph \
|
||||
--with-graph_parallel \
|
||||
--with-iostreams \
|
||||
--with-locale \
|
||||
--with-log \
|
||||
--with-math \
|
||||
--with-mpi \
|
||||
--with-program_options \
|
||||
--with-random \
|
||||
--with-regex \
|
||||
--with-serialization \
|
||||
--with-system \
|
||||
--with-test \
|
||||
--with-thread \
|
||||
--with-timer \
|
||||
--with-type_erasure \
|
||||
--with-wave \
|
||||
--with-stacktrace \
|
||||
-sICONV_PATH="${ANDROID_PREFIX}" \
|
||||
variant=release \
|
||||
debug-symbols=off \
|
||||
runtime-link=shared \
|
||||
link=shared,static \
|
||||
target-os=android \
|
||||
toolset=clang-android \
|
||||
architecture=$_boost_arch \
|
||||
threading=multi \
|
||||
address-model=$_boost_address_model \
|
||||
cflags="${CXXFLAGS}" \
|
||||
cxxflags="${CFLAGS}" \
|
||||
linkflags="${LDFLAGS}"
|
||||
}
|
||||
|
||||
package() {
|
||||
source android-env ${_pkg_arch}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
local _stagedir="${srcdir}/stagedir"
|
||||
install -dm755 "${pkgdir}$ANDROID_PREFIX"
|
||||
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
|
||||
find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
|
||||
find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
|
||||
|
||||
local libdir="${pkgdir}$ANDROID_PREFIX"/lib
|
||||
install -d "${libdir}"
|
||||
cp -a "${_stagedir}"/lib/*.a "${libdir}"/
|
||||
install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
|
||||
|
||||
install -dm755 "${pkgdir}$ANDROID_PREFIX"
|
||||
cp -a "${_stagedir}"/lib "${pkgdir}$ANDROID_PREFIX"
|
||||
|
||||
install -Dm644 "${srcdir}/"${_srcname}/LICENSE_1_0.txt \
|
||||
"${pkgdir}"/usr/share/licenses/$pkgname/LICENSE_1_0.txt
|
||||
|
||||
find "${libdir}" -iname '*.a' -exec $ANDROID_STRIP -g {} \;
|
||||
find "${libdir}" -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
|
||||
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
||||
|
|
|
@ -3,153 +3,146 @@
|
|||
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
|
||||
# you also find the URL of a binary repository.
|
||||
|
||||
_pkgname=boost
|
||||
_pkg_arch=x86-64
|
||||
_android_arch=x86_64
|
||||
_boost_arch=x86
|
||||
_boost_address_model=64
|
||||
|
||||
pkgname=android-$_pkg_arch-$_pkgname
|
||||
pkgver=1.81.0
|
||||
_srcname=boost_${pkgver//./_}
|
||||
pkgname=android-${_android_arch}-boost
|
||||
pkgver=1.84.0
|
||||
pkgrel=1
|
||||
url='https://www.boost.org/'
|
||||
_srcname=boost_${pkgver//./_}
|
||||
arch=('any')
|
||||
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
|
||||
url="https://www.boost.org/"
|
||||
license=('custom')
|
||||
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)"
|
||||
depends=("android-$_pkg_arch-libiconv")
|
||||
options=(!buildflags staticlibs !strip !emptydirs)
|
||||
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment')
|
||||
conflicts=("android-$_pkgname-$_android_arch")
|
||||
replaces=("android-$_pkgname-$_android_arch")
|
||||
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz
|
||||
boost-1.81.0-phoenix-multiple-definitions.patch
|
||||
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch
|
||||
no-versioned-shlibs.patch
|
||||
disable-version-check.patch)
|
||||
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6'
|
||||
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb'
|
||||
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee'
|
||||
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23'
|
||||
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b')
|
||||
depends=("android-${_android_arch}-bzip2"
|
||||
"android-${_android_arch}-icu"
|
||||
"android-${_android_arch}-zlib"
|
||||
"android-${_android_arch}-zstd")
|
||||
makedepends=('android-environment')
|
||||
if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
|
||||
makedepends+=("android-${_android_arch}-openmpi")
|
||||
optdepends+=("android-${_android_arch}-openmpi: for mpi support")
|
||||
fi
|
||||
options=(!strip !buildflags staticlibs !emptydirs)
|
||||
source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
|
||||
"boost-1.81.0-phoenix-multiple-definitions.patch"
|
||||
"boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
|
||||
"disable-version-check.patch")
|
||||
md5sums=('9cbfb9076ed06384471802b850698a6d'
|
||||
'cb1c25777e9b85af62366e7c930244b8'
|
||||
'991daf28f76ea0383620ccaf971decba'
|
||||
'6290eb4fa0cab451aac92e12e85ef073')
|
||||
|
||||
prepare() {
|
||||
cd ${_srcname}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
# https://github.com/boostorg/phoenix/issues/111
|
||||
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
|
||||
|
||||
# https://github.com/boostorg/ublas/pull/97
|
||||
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch
|
||||
|
||||
patch -i ../no-versioned-shlibs.patch
|
||||
patch -Np2 -i ../boost-ublas-c++20-iterator.patch
|
||||
patch -p1 -i ../disable-version-check.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
source android-env ${_pkg_arch}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
local _stagedir="${srcdir}/stagedir"
|
||||
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})"
|
||||
local target_flags=" \
|
||||
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT"
|
||||
local common_flags=" \
|
||||
$target_flags \
|
||||
-fexceptions \
|
||||
-DANDROID \
|
||||
-O3 -DNDEBUG \
|
||||
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \
|
||||
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1"
|
||||
local ld_flags=" \
|
||||
$target_flags \
|
||||
-fexceptions"
|
||||
# Platform specific patches
|
||||
case "$_android_arch" in
|
||||
aarch64)
|
||||
_boost_arch=arm
|
||||
_boost_address_model=64
|
||||
;;
|
||||
armv7a-eabi)
|
||||
_boost_arch=arm
|
||||
_boost_address_model=32
|
||||
;;
|
||||
x86)
|
||||
_boost_arch=x86
|
||||
_boost_address_model=32
|
||||
;;
|
||||
x86-64)
|
||||
_boost_arch=x86
|
||||
_boost_address_model=64
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
cd ${_srcname}
|
||||
./bootstrap.sh -with-toolset=gcc
|
||||
|
||||
msg2 'Bootstrapping b2'
|
||||
./bootstrap.sh --with-toolset=gcc
|
||||
# support for OpenMPI
|
||||
if [[ _boost_address_model == 64 ]]; then
|
||||
_boost_mpi='using mpi ;'
|
||||
else
|
||||
_boost_mpi=''
|
||||
fi
|
||||
|
||||
install -Dm755 tools/build/src/engine/b2 "${_stagedir}"/bin/b2
|
||||
userConfigs=$srcdir/$_srcname/user-config.jam
|
||||
|
||||
# Support for OpenMPI
|
||||
echo "using mpi ;" >> project-config.jam
|
||||
cat << EOF > "${userConfigs}"
|
||||
${_boost_mpi}
|
||||
using clang : android : ${ANDROID_CXX} :
|
||||
<archiver>${ANDROID_AR} \
|
||||
<assembler>${ANDROID_AS}
|
||||
;
|
||||
EOF
|
||||
|
||||
# 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 $ANDROID_PREFIX/include/boost.
|
||||
# --layout=system no longer adds the -mt suffix for multi-threaded libs.
|
||||
# install to ${_stagedir} for consistency with regular boost package
|
||||
msg2 'Invoking build via b2'
|
||||
export PATH=$ANDROID_CROSS_PREFIX:$PATH
|
||||
"${_stagedir}"/bin/b2 \
|
||||
--with-atomic \
|
||||
--with-chrono \
|
||||
--with-container \
|
||||
--with-date_time \
|
||||
--with-exception \
|
||||
--with-fiber \
|
||||
--with-filesystem \
|
||||
--with-graph \
|
||||
--with-graph_parallel \
|
||||
--with-iostreams \
|
||||
--with-locale \
|
||||
--with-log \
|
||||
--with-math \
|
||||
--with-mpi \
|
||||
--with-program_options \
|
||||
--with-random \
|
||||
--with-regex \
|
||||
--with-serialization \
|
||||
--with-system \
|
||||
--with-test \
|
||||
--with-thread \
|
||||
--with-timer \
|
||||
--with-type_erasure \
|
||||
--with-wave \
|
||||
--with-stacktrace \
|
||||
variant=release \
|
||||
debug-symbols=off \
|
||||
threading=multi \
|
||||
runtime-link=shared \
|
||||
link=shared,static \
|
||||
target-os=android \
|
||||
toolset=clang-android \
|
||||
architecture=$_boost_arch \
|
||||
address-model=$_boost_address_model \
|
||||
-sICONV_PATH="$ANDROID_PREFIX" \
|
||||
cflags="$common_flags" \
|
||||
cxxflags="$common_flags -frtti -std=gnu++17" \
|
||||
linkflags="$ld_flags" \
|
||||
--layout=system \
|
||||
${jobs} \
|
||||
\
|
||||
--prefix="${_stagedir}" \
|
||||
install
|
||||
./b2 install \
|
||||
--prefix="$srcdir/fakeinstall" \
|
||||
--user-config="${userConfigs}" \
|
||||
--layout=system \
|
||||
--with-atomic \
|
||||
--with-chrono \
|
||||
--with-container \
|
||||
--with-date_time \
|
||||
--with-exception \
|
||||
--with-fiber \
|
||||
--with-filesystem \
|
||||
--with-graph \
|
||||
--with-graph_parallel \
|
||||
--with-iostreams \
|
||||
--with-locale \
|
||||
--with-log \
|
||||
--with-math \
|
||||
--with-mpi \
|
||||
--with-program_options \
|
||||
--with-random \
|
||||
--with-regex \
|
||||
--with-serialization \
|
||||
--with-system \
|
||||
--with-test \
|
||||
--with-thread \
|
||||
--with-timer \
|
||||
--with-type_erasure \
|
||||
--with-wave \
|
||||
--with-stacktrace \
|
||||
-sICONV_PATH="${ANDROID_PREFIX}" \
|
||||
variant=release \
|
||||
debug-symbols=off \
|
||||
runtime-link=shared \
|
||||
link=shared,static \
|
||||
target-os=android \
|
||||
toolset=clang-android \
|
||||
architecture=$_boost_arch \
|
||||
threading=multi \
|
||||
address-model=$_boost_address_model \
|
||||
cflags="${CXXFLAGS}" \
|
||||
cxxflags="${CFLAGS}" \
|
||||
linkflags="${LDFLAGS}"
|
||||
}
|
||||
|
||||
package() {
|
||||
source android-env ${_pkg_arch}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
local _stagedir="${srcdir}/stagedir"
|
||||
install -dm755 "${pkgdir}$ANDROID_PREFIX"
|
||||
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
|
||||
find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
|
||||
find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
|
||||
|
||||
local libdir="${pkgdir}$ANDROID_PREFIX"/lib
|
||||
install -d "${libdir}"
|
||||
cp -a "${_stagedir}"/lib/*.a "${libdir}"/
|
||||
install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
|
||||
|
||||
install -dm755 "${pkgdir}$ANDROID_PREFIX"
|
||||
cp -a "${_stagedir}"/lib "${pkgdir}$ANDROID_PREFIX"
|
||||
|
||||
install -Dm644 "${srcdir}/"${_srcname}/LICENSE_1_0.txt \
|
||||
"${pkgdir}"/usr/share/licenses/$pkgname/LICENSE_1_0.txt
|
||||
|
||||
find "${libdir}" -iname '*.a' -exec $ANDROID_STRIP -g {} \;
|
||||
find "${libdir}" -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
|
||||
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
||||
|
|
|
@ -3,153 +3,146 @@
|
|||
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
|
||||
# you also find the URL of a binary repository.
|
||||
|
||||
_pkgname=boost
|
||||
_pkg_arch=x86
|
||||
_android_arch=x86
|
||||
_boost_arch=x86
|
||||
_boost_address_model=32
|
||||
|
||||
pkgname=android-$_pkg_arch-$_pkgname
|
||||
pkgver=1.81.0
|
||||
_srcname=boost_${pkgver//./_}
|
||||
pkgname=android-${_android_arch}-boost
|
||||
pkgver=1.84.0
|
||||
pkgrel=1
|
||||
url='https://www.boost.org/'
|
||||
_srcname=boost_${pkgver//./_}
|
||||
arch=('any')
|
||||
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
|
||||
url="https://www.boost.org/"
|
||||
license=('custom')
|
||||
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)"
|
||||
depends=("android-$_pkg_arch-libiconv")
|
||||
options=(!buildflags staticlibs !strip !emptydirs)
|
||||
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment')
|
||||
conflicts=("android-$_pkgname-$_android_arch")
|
||||
replaces=("android-$_pkgname-$_android_arch")
|
||||
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz
|
||||
boost-1.81.0-phoenix-multiple-definitions.patch
|
||||
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch
|
||||
no-versioned-shlibs.patch
|
||||
disable-version-check.patch)
|
||||
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6'
|
||||
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb'
|
||||
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee'
|
||||
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23'
|
||||
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b')
|
||||
depends=("android-${_android_arch}-bzip2"
|
||||
"android-${_android_arch}-icu"
|
||||
"android-${_android_arch}-zlib"
|
||||
"android-${_android_arch}-zstd")
|
||||
makedepends=('android-environment')
|
||||
if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
|
||||
makedepends+=("android-${_android_arch}-openmpi")
|
||||
optdepends+=("android-${_android_arch}-openmpi: for mpi support")
|
||||
fi
|
||||
options=(!strip !buildflags staticlibs !emptydirs)
|
||||
source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
|
||||
"boost-1.81.0-phoenix-multiple-definitions.patch"
|
||||
"boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
|
||||
"disable-version-check.patch")
|
||||
md5sums=('9cbfb9076ed06384471802b850698a6d'
|
||||
'cb1c25777e9b85af62366e7c930244b8'
|
||||
'991daf28f76ea0383620ccaf971decba'
|
||||
'6290eb4fa0cab451aac92e12e85ef073')
|
||||
|
||||
prepare() {
|
||||
cd ${_srcname}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
# https://github.com/boostorg/phoenix/issues/111
|
||||
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
|
||||
|
||||
# https://github.com/boostorg/ublas/pull/97
|
||||
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch
|
||||
|
||||
patch -i ../no-versioned-shlibs.patch
|
||||
patch -Np2 -i ../boost-ublas-c++20-iterator.patch
|
||||
patch -p1 -i ../disable-version-check.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
source android-env ${_pkg_arch}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
local _stagedir="${srcdir}/stagedir"
|
||||
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})"
|
||||
local target_flags=" \
|
||||
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT"
|
||||
local common_flags=" \
|
||||
$target_flags \
|
||||
-fexceptions \
|
||||
-DANDROID \
|
||||
-O3 -DNDEBUG \
|
||||
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \
|
||||
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1"
|
||||
local ld_flags=" \
|
||||
$target_flags \
|
||||
-fexceptions"
|
||||
# Platform specific patches
|
||||
case "$_android_arch" in
|
||||
aarch64)
|
||||
_boost_arch=arm
|
||||
_boost_address_model=64
|
||||
;;
|
||||
armv7a-eabi)
|
||||
_boost_arch=arm
|
||||
_boost_address_model=32
|
||||
;;
|
||||
x86)
|
||||
_boost_arch=x86
|
||||
_boost_address_model=32
|
||||
;;
|
||||
x86-64)
|
||||
_boost_arch=x86
|
||||
_boost_address_model=64
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
cd ${_srcname}
|
||||
./bootstrap.sh -with-toolset=gcc
|
||||
|
||||
msg2 'Bootstrapping b2'
|
||||
./bootstrap.sh --with-toolset=gcc
|
||||
# support for OpenMPI
|
||||
if [[ _boost_address_model == 64 ]]; then
|
||||
_boost_mpi='using mpi ;'
|
||||
else
|
||||
_boost_mpi=''
|
||||
fi
|
||||
|
||||
install -Dm755 tools/build/src/engine/b2 "${_stagedir}"/bin/b2
|
||||
userConfigs=$srcdir/$_srcname/user-config.jam
|
||||
|
||||
# Support for OpenMPI
|
||||
echo "using mpi ;" >> project-config.jam
|
||||
cat << EOF > "${userConfigs}"
|
||||
${_boost_mpi}
|
||||
using clang : android : ${ANDROID_CXX} :
|
||||
<archiver>${ANDROID_AR} \
|
||||
<assembler>${ANDROID_AS}
|
||||
;
|
||||
EOF
|
||||
|
||||
# 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 $ANDROID_PREFIX/include/boost.
|
||||
# --layout=system no longer adds the -mt suffix for multi-threaded libs.
|
||||
# install to ${_stagedir} for consistency with regular boost package
|
||||
msg2 'Invoking build via b2'
|
||||
export PATH=$ANDROID_CROSS_PREFIX:$PATH
|
||||
"${_stagedir}"/bin/b2 \
|
||||
--with-atomic \
|
||||
--with-chrono \
|
||||
--with-container \
|
||||
--with-date_time \
|
||||
--with-exception \
|
||||
--with-fiber \
|
||||
--with-filesystem \
|
||||
--with-graph \
|
||||
--with-graph_parallel \
|
||||
--with-iostreams \
|
||||
--with-locale \
|
||||
--with-log \
|
||||
--with-math \
|
||||
--with-mpi \
|
||||
--with-program_options \
|
||||
--with-random \
|
||||
--with-regex \
|
||||
--with-serialization \
|
||||
--with-system \
|
||||
--with-test \
|
||||
--with-thread \
|
||||
--with-timer \
|
||||
--with-type_erasure \
|
||||
--with-wave \
|
||||
--with-stacktrace \
|
||||
variant=release \
|
||||
debug-symbols=off \
|
||||
threading=multi \
|
||||
runtime-link=shared \
|
||||
link=shared,static \
|
||||
target-os=android \
|
||||
toolset=clang-android \
|
||||
architecture=$_boost_arch \
|
||||
address-model=$_boost_address_model \
|
||||
-sICONV_PATH="$ANDROID_PREFIX" \
|
||||
cflags="$common_flags" \
|
||||
cxxflags="$common_flags -frtti -std=gnu++17" \
|
||||
linkflags="$ld_flags" \
|
||||
--layout=system \
|
||||
${jobs} \
|
||||
\
|
||||
--prefix="${_stagedir}" \
|
||||
install
|
||||
./b2 install \
|
||||
--prefix="$srcdir/fakeinstall" \
|
||||
--user-config="${userConfigs}" \
|
||||
--layout=system \
|
||||
--with-atomic \
|
||||
--with-chrono \
|
||||
--with-container \
|
||||
--with-date_time \
|
||||
--with-exception \
|
||||
--with-fiber \
|
||||
--with-filesystem \
|
||||
--with-graph \
|
||||
--with-graph_parallel \
|
||||
--with-iostreams \
|
||||
--with-locale \
|
||||
--with-log \
|
||||
--with-math \
|
||||
--with-mpi \
|
||||
--with-program_options \
|
||||
--with-random \
|
||||
--with-regex \
|
||||
--with-serialization \
|
||||
--with-system \
|
||||
--with-test \
|
||||
--with-thread \
|
||||
--with-timer \
|
||||
--with-type_erasure \
|
||||
--with-wave \
|
||||
--with-stacktrace \
|
||||
-sICONV_PATH="${ANDROID_PREFIX}" \
|
||||
variant=release \
|
||||
debug-symbols=off \
|
||||
runtime-link=shared \
|
||||
link=shared,static \
|
||||
target-os=android \
|
||||
toolset=clang-android \
|
||||
architecture=$_boost_arch \
|
||||
threading=multi \
|
||||
address-model=$_boost_address_model \
|
||||
cflags="${CXXFLAGS}" \
|
||||
cxxflags="${CFLAGS}" \
|
||||
linkflags="${LDFLAGS}"
|
||||
}
|
||||
|
||||
package() {
|
||||
source android-env ${_pkg_arch}
|
||||
cd "${srcdir}/$_srcname"
|
||||
source android-env ${_android_arch}
|
||||
|
||||
local _stagedir="${srcdir}/stagedir"
|
||||
install -dm755 "${pkgdir}$ANDROID_PREFIX"
|
||||
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
|
||||
find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
|
||||
find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
|
||||
|
||||
local libdir="${pkgdir}$ANDROID_PREFIX"/lib
|
||||
install -d "${libdir}"
|
||||
cp -a "${_stagedir}"/lib/*.a "${libdir}"/
|
||||
install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
|
||||
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
|
||||
|
||||
install -dm755 "${pkgdir}$ANDROID_PREFIX"
|
||||
cp -a "${_stagedir}"/lib "${pkgdir}$ANDROID_PREFIX"
|
||||
|
||||
install -Dm644 "${srcdir}/"${_srcname}/LICENSE_1_0.txt \
|
||||
"${pkgdir}"/usr/share/licenses/$pkgname/LICENSE_1_0.txt
|
||||
|
||||
find "${libdir}" -iname '*.a' -exec $ANDROID_STRIP -g {} \;
|
||||
find "${libdir}" -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
|
||||
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
||||
|
|
Loading…
Reference in New Issue