diff options
Diffstat (limited to 'community/mozjs68/APKBUILD')
-rw-r--r-- | community/mozjs68/APKBUILD | 127 |
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" |