blob: ef30debe5a44e9f5a7f7b130b84ab951c0f19214 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
# Maintainer: Gonzalo Exequiel Pedone <hipersayan DOT x AT gmail DOT com>
# Contributor: Martchus <martchus@gmx.net>
_android_arch=riscv64
pkgname=android-${_android_arch}-boost
pkgver=1.87.0
pkgrel=1
arch=('any')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android ${_android_arch})"
url="https://www.boost.org/"
license=('custom')
groups=('android-boost')
depends=("android-${_android_arch}-bzip2"
"android-${_android_arch}-icu"
"android-${_android_arch}-zlib"
"android-${_android_arch}-zstd")
makedepends=('android-cmake'
"android-${_android_arch}-openmpi")
optdepends=("android-${_android_arch}-openmpi: for mpi support")
options=(!strip !buildflags staticlibs !emptydirs)
source=("https://github.com/boostorg/boost/releases/download/boost-${pkgver}/boost-${pkgver}-cmake.tar.xz"
'0001-Disable-wordexp.patch')
md5sums=('d55d43218e81ca3d0fc14436b7665bf1'
'd880b3d0c05ef6da0d44912cdb82ef1c')
prepare() {
cd "${srcdir}/boost-${pkgver}"
patch -Np1 -i ../0001-Disable-wordexp.patch
}
build() {
cd "${srcdir}/boost-${pkgver}"
source android-env ${_android_arch}
./bootstrap.sh -with-toolset=gcc
android-${_android_arch}-cmake \
-S . \
-B build-shared \
-DBUILD_SHARED_LIBS=ON \
-DBOOST_ENABLE_MPI=ON \
-DBOOST_IOSTREAMS_ENABLE_BZIP2=ON \
-DBOOST_IOSTREAMS_ENABLE_LZMA=ON \
-DBOOST_IOSTREAMS_ENABLE_ZLIB=ON \
-DBOOST_IOSTREAMS_ENABLE_ZSTD=ON \
-DBOOST_LOCALE_ENABLE_ICONV=ON \
-DBOOST_LOCALE_ENABLE_ICU=ON \
-DZLIB_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DZLIB_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libz.so" \
-DBZIP2_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DBZIP2_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libbz2.so" \
-DLIBLZMA_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}/lzma" \
-DLIBLZMA_LIBRARY="${ANDROID_PREFIX_LIB}/liblzma.so" \
-Dzstd_DIR="${ANDROID_PREFIX_LIB}/cmake/zstd" \
-DIconv_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DIconv_LIBRARY="${ANDROID_PREFIX_LIB}/libiconv.so" \
-DICU_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DICU_LIBRARY="${ANDROID_PREFIX_LIB}/libiconv.so" \
-DICU_DATA_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libicudata.so" \
-DICU_I18N_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libicui18n.so" \
-DICU_UC_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libicuuc.so" \
-DMPI_C_HEADER_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DMPI_CXX_HEADER_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DMPI_mpi_LIBRARY="${ANDROID_PREFIX_LIB}/libmpi.so" \
-DCMAKE_CXX_FLAGS="-DBOOST_ALL_NO_EMBEDDED_GDB_SCRIPTS -DBOOST_STACKTRACE_LIBCXX_RUNTIME_MAY_CAUSE_MEMORY_LEAK" \
-Wno-dev \
${extra_options}
make -C build-shared $MAKEFLAGS
android-${_android_arch}-cmake \
-S . \
-B build-static \
-DBUILD_SHARED_LIBS=OFF \
-DBOOST_ENABLE_MPI=OFF \
-DBOOST_IOSTREAMS_ENABLE_BZIP2=ON \
-DBOOST_IOSTREAMS_ENABLE_LZMA=ON \
-DBOOST_IOSTREAMS_ENABLE_ZLIB=ON \
-DBOOST_IOSTREAMS_ENABLE_ZSTD=ON \
-DBOOST_LOCALE_ENABLE_ICONV=ON \
-DBOOST_LOCALE_ENABLE_ICU=ON \
-DZLIB_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DZLIB_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libz.a" \
-DBZIP2_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DBZIP2_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libbz2.a" \
-DLIBLZMA_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}/lzma" \
-DLIBLZMA_LIBRARY="${ANDROID_PREFIX_LIB}/liblzma.a" \
-Dzstd_DIR="${ANDROID_PREFIX_LIB}/cmake/zstd" \
-DIconv_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DIconv_LIBRARY="${ANDROID_PREFIX_LIB}/libiconv.a" \
-DICU_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DICU_LIBRARY="${ANDROID_PREFIX_LIB}/libiconv.a" \
-DICU_DATA_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libicudata.a" \
-DICU_I18N_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libicui18n.a" \
-DICU_UC_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libicuuc.a" \
-DMPI_C_HEADER_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DMPI_CXX_HEADER_DIR="${ANDROID_PREFIX_INCLUDE}" \
-DMPI_mpi_LIBRARY="${ANDROID_PREFIX_LIB}/libmpi.a" \
-DCMAKE_CXX_FLAGS="-DBOOST_ALL_NO_EMBEDDED_GDB_SCRIPTS -DBOOST_STACKTRACE_LIBCXX_RUNTIME_MAY_CAUSE_MEMORY_LEAK" \
-Wno-dev \
${extra_options}
make -C build-static $MAKEFLAGS
}
package() {
cd "${srcdir}/boost-${pkgver}"
source android-env ${_android_arch}
make -C build-shared DESTDIR="${pkgdir}" install
make -C build-static DESTDIR="${pkgdir}" install
${ANDROID_STRIP} -g --strip-unneeded "${pkgdir}/${ANDROID_PREFIX_LIB}"/*.so
${ANDROID_STRIP} -g "${pkgdir}/${ANDROID_PREFIX_LIB}"/*.a
install -Dm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE_1_0.txt
}
|