summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorGonzalo Exequiel Pedone2024-02-20 14:29:06 -0300
committerGonzalo Exequiel Pedone2024-02-20 14:29:06 -0300
commitc8967014935291edb8096dd295ec6dd924382eea (patch)
tree728c33ccf24f8f218264dbee1e649f4c49cfb3bd
downloadaur-c8967014935291edb8096dd295ec6dd924382eea.tar.gz
New package.
-rw-r--r--.SRCINFO20
-rw-r--r--.gitignore6
-rw-r--r--0001-Fix-configure-file.patch39
-rw-r--r--PKGBUILD92
4 files changed, 157 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..0f0d630cc33b
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,20 @@
+pkgbase = android-armv7a-eabi-nspr
+ pkgdesc = Netscape Portable Runtime (android)
+ pkgver = 4.35
+ pkgrel = 1
+ url = https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR
+ arch = any
+ license = MPL-2.0
+ makedepends = android-configure
+ makedepends = zip
+ depends = android-ndk
+ options = !strip
+ options = !buildflags
+ options = staticlibs
+ options = !emptydirs
+ source = https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v4.35/src/nspr-4.35.tar.gz
+ source = 0001-Fix-configure-file.patch
+ sha256sums = 7ea3297ea5969b5d25a5dd8d47f2443cda88e9ee746301f6e1e1426f8a6abc8f
+ sha256sums = 1d83aad5546f7ee9f5e06f36e7ce9e49613edb2e3609e4e01c84a604f9195106
+
+pkgname = android-armv7a-eabi-nspr
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..b5b03b115225
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,6 @@
+pkg
+src
+*.tar.xz
+*.tar.gz
+*.tar.bz2
+*.asc
diff --git a/0001-Fix-configure-file.patch b/0001-Fix-configure-file.patch
new file mode 100644
index 000000000000..896013d756da
--- /dev/null
+++ b/0001-Fix-configure-file.patch
@@ -0,0 +1,39 @@
+--- a/nspr/configure
++++ b/nspr/configure
+@@ -2721,25 +2721,23 @@
+
+ case "$target_cpu" in
+ i?86)
+- if ! test -e "$android_toolchain"/bin/"$android_tool_prefix"-gcc; then
++ if ! test -e "@ANDROID_CC@"; then
+ android_tool_prefix="i686-android-linux"
+ fi
+ ;;
+ esac
+
+- AS="$android_toolchain"/bin/"$android_tool_prefix"-as
+- CC="$android_toolchain"/bin/"$android_tool_prefix"-gcc
+- CXX="$android_toolchain"/bin/"$android_tool_prefix"-g++
+- CPP="$android_toolchain"/bin/"$android_tool_prefix"-cpp
+- LD="$android_toolchain"/bin/"$android_tool_prefix"-ld
+- AR="$android_toolchain"/bin/"$android_tool_prefix"-ar
+- RANLIB="$android_toolchain"/bin/"$android_tool_prefix"-ranlib
+- STRIP="$android_toolchain"/bin/"$android_tool_prefix"-strip
++ AS=@ANDROID_AS@
++ CC=@ANDROID_CC@
++ CXX=@ANDROID_CXX@
++ CPP=@ANDROID_CPP@
++ LD=@ANDROID_LD@
++ AR=@ANDROID_AR@
++ RANLIB=@ANDROID_RANLIB@
++ STRIP=@ANDROID_STRIP@
+
+- CPPFLAGS="-I$android_platform/usr/include $CPPFLAGS"
+- CFLAGS="-mandroid -I$android_platform/usr/include -fno-short-enums -fno-exceptions $CFLAGS"
+- CXXFLAGS="-mandroid -I$android_platform/usr/include -fpic -fno-short-enums -fno-exceptions $CXXFLAGS"
+- LDFLAGS="-mandroid -L$android_platform/usr/lib -Wl,-rpath-link=$android_platform/usr/lib --sysroot=$android_platform $LDFLAGS"
++ CFLAGS="-fno-short-enums -fno-exceptions $CFLAGS"
++ CXXFLAGS="-fpic -fno-short-enums -fno-exceptions $CXXFLAGS"
+
+ $as_echo "#define ANDROID 1" >>confdefs.h
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..b23365ff87e0
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,92 @@
+# Maintainer: Gonzalo Exequiel Pedone <hipersayan DOT x AT gmail DOT com>
+# Contributor: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
+# Contributor: Jan de Groot <jgc@archlinux.org>
+# Contributor: Alexander Baldeck <alexander@archlinux.org>
+
+_android_arch=armv7a-eabi
+
+pkgname=android-${_android_arch}-nspr
+pkgver=4.35
+pkgrel=1
+arch=('any')
+pkgdesc="Netscape Portable Runtime (android)"
+url="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR"
+license=('MPL-2.0')
+depends=('android-ndk')
+makedepends=('android-configure'
+ 'zip')
+options=(!strip !buildflags staticlibs !emptydirs)
+source=("https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${pkgver}/src/nspr-${pkgver}.tar.gz"
+ '0001-Fix-configure-file.patch')
+sha256sums=('7ea3297ea5969b5d25a5dd8d47f2443cda88e9ee746301f6e1e1426f8a6abc8f'
+ '1d83aad5546f7ee9f5e06f36e7ce9e49613edb2e3609e4e01c84a604f9195106')
+
+prepare() {
+ cd "${srcdir}/nspr-${pkgver}"
+ source android-env ${_android_arch}
+
+ patch -Np1 -i ../0001-Fix-configure-file.patch
+
+ sed -i "s|@ANDROID_CC@|${ANDROID_CC}|g" nspr/configure
+ sed -i "s|@ANDROID_CXX@|${ANDROID_CXX}|g" nspr/configure
+ sed -i "s|@ANDROID_CPP@|cpp|g" nspr/configure
+ sed -i "s|@ANDROID_AS@|${ANDROID_AS}|g" nspr/configure
+ sed -i "s|@ANDROID_AR@|${ANDROID_AR}|g" nspr/configure
+ sed -i "s|@ANDROID_LD@|${ANDROID_LD}|g" nspr/configure
+ sed -i "s|@ANDROID_RANLIB@|${ANDROID_RANLIB}|g" nspr/configure
+ sed -i "s|@ANDROID_STRIP@|${ANDROID_STRIP}|g" nspr/configure
+}
+
+build() {
+ unset CFLAGS
+ unset CXXFLAGS
+
+ cd "${srcdir}/nspr-${pkgver}/nspr"
+ source android-env ${_android_arch}
+
+ # Platform specific patches
+ case "$_android_arch" in
+ aarch64)
+ enable64bit='--enable-64bit'
+ ;;
+ x86-64)
+ enable64bit='--enable-64bit'
+ ;;
+ *)
+ ;;
+ esac
+
+ android-${_android_arch}-configure \
+ --with-android-ndk="${ANDROID_NDK_HOME}" \
+ --with-android-toolchain="${ANDROID_TOOLCHAIN}" \
+ --with-android-platform="${ANDROID_PLATFORM}" \
+ --with-android-version="${ANDROID_MINIMUM_PLATFORM}" \
+ --includedir="${ANDROID_PREFIX_INCLUDE}/nspr" \
+ $enable64bit \
+ --enable-optimize \
+ --disable-debug \
+ --enable-64bit
+
+ make \
+ -C config \
+ CC=/usr/bin/gcc \
+ CXX=/usr/bin/g++ \
+ CFLAGS=" -DXP_UNIX=1" \
+ $MAKEFLAGS || true
+ make \
+ NSINSTALL=$(pwd)/config/nsinstall \
+ RANLIB=${ANDROID_RANLIB} \
+ $MAKEFLAGS
+}
+
+package() {
+ cd "${srcdir}/nspr-${pkgver}/nspr"
+ source android-env ${_android_arch}
+
+ make DESTDIR="$pkgdir" install
+ rm "$pkgdir/${ANDROID_PREFIX_BIN}"/{compile-et.pl,prerr.properties}
+ ${ANDROID_STRIP} -g --strip-unneeded "${pkgdir}"/${ANDROID_PREFIX_LIB}/*.so
+ ${ANDROID_STRIP} -g "$pkgdir"/${ANDROID_PREFIX_LIB}/*.a
+ ln -s nspr.pc "$pkgdir/${ANDROID_PREFIX_LIB}/pkgconfig/mozilla-nspr.pc"
+ rm -r "$pkgdir/${ANDROID_PREFIX_INCLUDE}/nspr/md"
+}