summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD119
1 files changed, 31 insertions, 88 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 554463e52e29..ac4a71b94c4b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -7,19 +7,12 @@
_android_arch=x86-64
pkgname=android-${_android_arch}-openmpi
-
-if [[ "${_android_arch}" == armv7a-eabi || "${_android_arch}" == x86 ]]; then
- pkgver=4.1.6
- is_32_bits=true
-else
- pkgver=5.0.2
-fi
-
-pkgrel=4
+pkgver=5.0.3
+pkgrel=1
arch=('any')
-pkgdesc="High performance message passing library (MPI) (Android, ${_android_arch})"
+pkgdesc="High performance message passing library (MPI) (Android ${_android_arch})"
url='https://www.open-mpi.org'
-license=('BSD-3-Clause AND LicenseRef-MPICH')
+license=('BSD-3-Clause AND LicenseRef- MPICH')
depends=("android-${_android_arch}-hwloc"
"android-${_android_arch}-libevent"
"android-${_android_arch}-libfabric"
@@ -38,101 +31,48 @@ optdepends=("android-${_android_arch}-openssh: for execution on remote hosts via
options=(!strip !buildflags staticlibs !emptydirs)
source=("https://www.open-mpi.org/software/ompi/v${pkgver%.*}/downloads/openmpi-$pkgver.tar.bz2"
'0001-Remove-shmctl.patch'
- '0002-Remove-getdtablesize.patch'
- '0003-Disable-address-patch-in-x86.patch'
'0004-Remove-getifaddrs.patch'
- '0005-Fix-missing-macros-32.patch'
'0006-Add-missing-headers.patch'
- '0007-Fix-missing-macros-64.patch')
-
-if [ "${is_32_bits}" == true ]; then
- _src_md5sum='c9b1c974cfc23c77c0fbdb965cd58a1c'
-else
- _src_md5sum='047ea0985b79d30d5a24ee72cbf5f4bf'
-fi
-
-md5sums=(${_src_md5sum}
+ '0007-Fix-missing-macros.patch'
+ '0008-Force-32-bit-build.patch')
+md5sums=('af6896a78969b258da908d424c1c34ca'
'137c5041b5a3a47574b5630b0ff82b4e'
- '34b93930fb47257b3a77e51bd2a13de6'
- 'f4b8f79f3f0cc039d2fcfca113e419e8'
'49fc1b27cf765f847ce5350a0b38d3f4'
- 'dfec77ec53288e16acbbd7c35f12e3c6'
'15e07e34a261129ccc56fe58d115827e'
- '2801669c30f3f834ee56b5b0eeef9206')
+ '2801669c30f3f834ee56b5b0eeef9206'
+ '44d0ecc271eea6fc0722f02c4bd1c001')
prepare() {
cd "${srcdir}/openmpi-$pkgver"
source android-env ${_android_arch}
- export PERL=perl
-
- if [ "${is_32_bits}" == true ]; then
- pushd config
- autom4te --language=m4sh opal_get_version.m4sh -o opal_get_version.sh
- popd
-
- autoreconf -fi || true
- fi
+ patch -Np1 -i ../0008-Force-32-bit-build.patch
if [ "${ANDROID_MINIMUM_PLATFORM}" -lt 26 ]; then
patch -Np1 -i ../0001-Remove-shmctl.patch
fi
- if [ "${is_32_bits}" == true ]; then
- patch -Np1 -i ../0002-Remove-getdtablesize.patch
- patch -Np1 -i ../0005-Fix-missing-macros-32.patch
-
- if [ "${_android_arch}" == x86 ]; then
- patch -Np1 -i ../0003-Disable-address-patch-in-x86.patch
- fi
- else
- patch -Np1 -i ../0006-Add-missing-headers.patch
- patch -Np1 -i ../0007-Fix-missing-macros-64.patch
+ patch -Np1 -i ../0006-Add-missing-headers.patch
+ patch -Np1 -i ../0007-Fix-missing-macros.patch
- if [ "${ANDROID_MINIMUM_PLATFORM}" -lt 24 ]; then
- patch -Np1 -i ../0004-Remove-getifaddrs.patch
- fi
+ if [ "${ANDROID_MINIMUM_PLATFORM}" -lt 24 ]; then
+ patch -Np1 -i ../0004-Remove-getifaddrs.patch
fi
- # workaround for https://github.com/open-mpi/ompi/issues/12257
- sed -i 's|WRAPPER__FCFLAGS|WRAPPER_FCFLAGS|g' configure
- sed -i 's|WRAPPER_EXTRA_FCFLAGS|WRAPPER_FCFLAGS|g' configure
sed -i "s|\"-I${ANDROID_PREFIX_INCLUDE}\",||" opal/tools/wrappers/opal_wrapper.c
malloc_fname=opal_malloc
mv -f opal/util/malloc.h "opal/util/${malloc_fname}.h"
- if [ "${is_32_bits}" == true ]; then
- sed -i "s|opal/util/malloc.h|opal/util/${malloc_fname}.h|g" opal/runtime/opal_cr.c
- sed -i "s|opal/util/malloc.h|opal/util/${malloc_fname}.h|g" orte/mca/ess/env/ess_env_module.c
- sed -i "s|opal/util/malloc.h|opal/util/${malloc_fname}.h|g" orte/mca/ess/hnp/ess_hnp_module.c
- else
- sed -i "s|opal/util/malloc.h|opal/util/${malloc_fname}.h|g" opal/runtime/opal_init_core.c
- fi
-
+ sed -i "s|opal/util/malloc.h|opal/util/${malloc_fname}.h|g" opal/runtime/opal_init_core.c
sed -i "s|opal/util/malloc.h|opal/util/${malloc_fname}.h|g" opal/include/opal_config_bottom.h
sed -i "s|opal/util/malloc.h|opal/util/${malloc_fname}.h|g" opal/runtime/opal_finalize.c
sed -i "s|opal/util/malloc.h|opal/util/${malloc_fname}.h|g" opal/runtime/opal_init.c
sed -i "s|opal/util/malloc.h|opal/util/${malloc_fname}.h|g" opal/util/malloc.c
-
- if [ "${is_32_bits}" == true ]; then
- sed -i "s| malloc.h | ${malloc_fname}.h |g" configure
- sed -i "s| malloc.h | ${malloc_fname}.h |g" configure.ac
- fi
-
sed -i "s| malloc.h | ${malloc_fname}.h |g" opal/util/Makefile.am
sed -i "s| malloc.h | ${malloc_fname}.h |g" opal/util/Makefile.in
- sed -i "s|rindex|strrchr|g" oshmem/mca/memheap/base/memheap_base_static.c
-
- if [ "${is_32_bits}" == true ]; then
- sed -i "s|rindex|strrchr|g" orte/mca/plm/rsh/plm_rsh_module.c
- fi
-
- if [ "${is_32_bits}" == true ]; then
- sed -i 's|bcmp|memcmp|g' ompi/mca/topo/treematch/treematch/tm_malloc.c
- else
- sed -i 's|bcmp|memcmp|g' 3rd-party/treematch/tm_malloc.c
- fi
+ sed -i 's|bcmp|memcmp|g' 3rd-party/treematch/tm_malloc.c
+ sed -i 's|LDFLAGS -no-undefined|LDFLAGS|g' configure
}
build() {
@@ -170,22 +110,26 @@ build() {
# TODO: remove ac_cv_func_sem_open=no when there is a glibc release fixing https://sourceware.org/bugzilla/show_bug.cgi?id=30789
ac_cv_func_sem_open=no ./configure \
- --host=${host} \
- --prefix=${ANDROID_PREFIX} \
- --libdir=${ANDROID_PREFIX_LIB} \
- --includedir=${ANDROID_PREFIX_INCLUDE} \
+ --host="${host}" \
+ --prefix="${ANDROID_PREFIX}" \
+ --libdir="${ANDROID_PREFIX_LIB}" \
+ --includedir="${ANDROID_PREFIX_INCLUDE}" \
--sysconfdir="${ANDROID_PREFIX_ETC}/openmpi" \
--enable-shared \
--enable-static \
--enable-builtin-atomics \
--enable-pretty-print-stacktrace \
+ --enable-sphinx=no \
+ --enable-binaries=no \
+ --enable-pmix-binaries=no \
--disable-mpi-fortran \
--disable-oshmem-fortran \
- --disable-sphinx \
+ --with-tests-examples=no \
--with-hwloc=external \
--with-libevent=external \
--with-pmix=external \
--with-prrte=external
+ sed -i 's| test docs||g' Makefile
make V=1 $MAKEFLAGS
}
@@ -193,11 +137,10 @@ package() {
cd "${srcdir}/openmpi-$pkgver"
source android-env ${_android_arch}
- make DESTDIR="$pkgdir" install
- rm -rf "$pkgdir/usr"
- rm -rf "$pkgdir/${ANDROID_PREFIX_BIN}"
- rm -rf "$pkgdir/${ANDROID_PREFIX_SHARE}"
- ${ANDROID_STRIP} -g --strip-unneeded "${pkgdir}"/${ANDROID_PREFIX_LIB}/*.so
- ${ANDROID_STRIP} -g "$pkgdir"/${ANDROID_PREFIX_LIB}/*.a
+ make DESTDIR="${pkgdir}" install
+ rm -rf "${pkgdir}/${ANDROID_PREFIX_BIN}"
+ rm -rf "${pkgdir}/${ANDROID_PREFIX_SHARE}"
+ ${ANDROID_STRIP} -g --strip-unneeded "${pkgdir}/${ANDROID_PREFIX_LIB}"/*.so
+ ${ANDROID_STRIP} -g "${pkgdir}/${ANDROID_PREFIX_LIB}"/*.a
rm -f "${pkgdir}/${ANDROID_PREFIX_LIB}"/*.so.*
}