aboutsummaryrefslogtreecommitdiffstats
path: root/community/mozjs68/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/mozjs68/APKBUILD')
-rw-r--r--community/mozjs68/APKBUILD127
1 files changed, 127 insertions, 0 deletions
diff --git a/community/mozjs68/APKBUILD b/community/mozjs68/APKBUILD
new file mode 100644
index 0000000000..58bbf0f9ef
--- /dev/null
+++ b/community/mozjs68/APKBUILD
@@ -0,0 +1,127 @@
+# Contributor: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+pkgname=mozjs68
+pkgver=68.5.0
+pkgrel=2
+pkgdesc="Standalone Mozilla JavaScript engine"
+url="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
+arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust and cargo
+license="MPL-2.0"
+depends_dev="
+ icu-dev
+ nspr-dev
+ libffi-dev
+ readline-dev
+ "
+makedepends="
+ $depends_dev
+ zlib-dev
+ python2
+ python3-dev
+ perl
+ sed
+ autoconf2.13
+ linux-headers
+ rust
+ cargo
+ llvm9
+ clang-dev
+ "
+subpackages="$pkgname-dev"
+source="https://ftp.mozilla.org/pub/firefox/releases/${pkgver}esr/source/firefox-${pkgver}esr.source.tar.xz
+ 0001-silence-sandbox-violations.patch
+ disable-jslint.patch
+ fix-musl-build.patch
+ fix-rust-target.patch
+ fd6847c9416f9eebde636e21d794d25d1be8791d.patch
+ "
+builddir="$srcdir"/firefox-$pkgver
+_builddir="$builddir/js/src"
+
+# secfixes:
+# 60.7.2-r0:
+# - CVE-2019-11708
+# - CVE-2019-11707
+
+build() {
+ cd "$_builddir"
+
+ export LDFLAGS="$LDFLAGS -Wl,-z,stack-size=1048576"
+
+ # avoid complains about autoconf
+ touch configure
+
+ # Fix broken ARM_ARCH check which doesn't work with newer GCCs it seems.
+ case "$CTARGET" in
+ armv*)
+ ARM_ARCH=$(echo ${CTARGET#*armv} | sed "s|-.*||")
+ sed -i "s|ARM_ARCH=.*|ARM_ARCH=$ARM_ARCH|" "$builddir"/build/autoconf/arch.m4
+ ;;
+ esac
+
+ case "$CARCH" in
+ x86)
+ export RUST_TARGET="i686-unknown-linux-musl"
+ ;;
+ x86_64)
+ export RUST_TARGET="$CTARGET"
+ ;;
+ aarch64)
+ export RUST_TARGET="aarch64-unknown-linux-musl"
+ ;;
+ armv7)
+ export RUST_TARGET="armv7-unknown-linux-musleabihf"
+ ;;
+ armhf)
+ export RUST_TARGET="arm-unknown-linux-musleabihf"
+ ;;
+ ppc64le)
+ export RUST_TARGET="powerpc64le-unknown-linux-musl"
+ ;;
+ esac
+
+ export SHELL=/bin/ash
+ export PYTHON=/usr/bin/python2
+ ./configure --prefix=/usr \
+ --with-clang-path=/usr/bin/clang \
+ --with-intl-api \
+ --with-libclang-path=/usr/lib \
+ --with-system-icu \
+ --with-system-nspr \
+ --with-system-zlib \
+ --enable-ctypes \
+ --enable-hardening \
+ --enable-optimize="$CFLAGS -O2" \
+ --enable-readline \
+ --enable-release \
+ --enable-shared-js \
+ --enable-system-ffi \
+ --enable-tests \
+ --disable-debug \
+ --disable-debug-symbols \
+ --disable-jemalloc \
+ --disable-strip \
+ --enable-unaligned-private-values
+ make
+}
+
+check() {
+ cd "$_builddir"
+ dist/bin/jsapi-tests \
+ --format=none \
+ --exclude-random \
+ basic
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install
+ rm -f "$pkgdir"/usr/lib/*.ajs
+}
+
+sha512sums="0acf4ecd47bccf062ab330231e36355f5d84e66ab411f653ae3160583613840925bb473c0f7dfa4b15311a543940293c4633516851c9466c4b0133c9271710d3 firefox-68.5.0esr.source.tar.xz
+4d30f4b64b6d9ba03099831aef18f6dffa7f0ff537d71502b8975329c9fa5025f02a43f45cf1311116d917fb507d5961163d659bb4c9f43c22bd61d14d0afb2f 0001-silence-sandbox-violations.patch
+6e9e7d811b92e32af29cebec6cb59763004f30b990842b8dd036f971f10d6659e8dbd771f0d61c8a42ea0ac4a6937466c1e6fd450a08efab8a0c7bab4ef3a1ec disable-jslint.patch
+bc91c2fb15eb22acb8acc36d086fb18fbf6f202b4511d138769b5ecaaed4a673349c55f808270c762616fafa42e3b01e74dc0af1dcbeea1289e043926e2750c8 fix-musl-build.patch
+1bf1f579ced0ca47d156eb45962114f9867cf224c2ba34dfc106227648322ecf729243d2a6e84b72cb011abadc36ed84990960bded764fd4243fc9cb22084ce5 fix-rust-target.patch
+60845dcb034b2c4459c30f7d5f25c8176cf42df794e2cc0e86c3e2abb6541c24b962f3a16ca70a288d4d6f377b68d00b2904b22463108559612053d835d9bff1 fd6847c9416f9eebde636e21d794d25d1be8791d.patch"