summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBritney Fransen <brfransen@gmail.com>2020-10-04 19:34:21 (GMT)
committerBritney Fransen <brfransen@gmail.com>2020-10-04 19:34:21 (GMT)
commit6c3bc4d1980df372e7898ce079f30bd4f4fe63a8 (patch)
treecedbe28148d6e1bb7b511e7cf830e5ba3fe10979
parent446610273b6078848d9405bfc38b44640a0dc572 (diff)
downloadlinhes_pkgbuild-6c3bc4d1980df372e7898ce079f30bd4f4fe63a8.zip
linhes_pkgbuild-6c3bc4d1980df372e7898ce079f30bd4f4fe63a8.tar.gz
linhes_pkgbuild-6c3bc4d1980df372e7898ce079f30bd4f4fe63a8.tar.bz2
js52: 52.9.0
-rw-r--r--abs/extra/js52/PKGBUILD106
-rw-r--r--abs/extra/js52/mozjs52-disable-wformat.patch12
-rw-r--r--abs/extra/js52/mozjs52-fix-soname.patch34
-rw-r--r--abs/extra/js52/mozjs52-include-configure-script.patch63
4 files changed, 76 insertions, 139 deletions
diff --git a/abs/extra/js52/PKGBUILD b/abs/extra/js52/PKGBUILD
index 6338a13..9f79858 100644
--- a/abs/extra/js52/PKGBUILD
+++ b/abs/extra/js52/PKGBUILD
@@ -1,72 +1,94 @@
-# $Id$
-# Contributor: Ionut Biru <ibiru@archlinux.org>
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
pkgname=js52
-pkgver=52.7.3
-pkgrel=1
-_ffver=${pkgver%%.*}
-pkgdesc="JavaScript interpreter and libraries - Version $_ffver"
+pkgver=52.9.0
+pkgrel=4
+pkgdesc="JavaScript interpreter and libraries - Version 52"
arch=(x86_64)
url="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
license=(MPL)
depends=(gcc-libs readline zlib sh)
-makedepends=(python2 zip autoconf2.13 mercurial)
-_repo=https://hg.mozilla.org/mozilla-unified
-source=("hg+$_repo#tag=FIREFOX_${pkgver//./_}esr_RELEASE"
+makedepends=(python2 zip autoconf2.13)
+_relver=${pkgver}esr
+source=(https://archive.mozilla.org/pub/firefox/releases/$_relver/source/firefox-$_relver.source.tar.xz
mozjs52-copy-headers.patch
mozjs52-disable-mozglue.patch
- mozjs52-fix-soname.patch
- mozjs52-include-configure-script.patch)
-sha256sums=('SKIP'
+ mozjs52-disable-wformat.patch)
+sha256sums=('c01d09658c53c1b3a496e353a24dad03b26b81d3b1d099abc26a06f81c199dd6'
'c5b3a88e4d10ef149aba6fc48d431db54ff266323fa22a5d549028fd794423cc'
'5a84f02521f37de873991dd360a4c4bfdbdd2fb4a218e11be73f9cbbf02050e8'
- '06389b8e30465bb8e6fab6144dadedffa30595f143a686524da175b5cf5e8a27'
- 'd91a89acd88bfc747a255050757a0c17139bf5c3508c2e1c3c6bb2056786a344')
+ '4c5a1662e36c6a5a11db0263bb264d104ff801789d5b6bc6a6104439457afb90')
+
+# Make sure the duplication between bin and lib is found
+COMPRESSZST+=(--long)
prepare() {
- cd mozilla-unified
+ cd firefox-$_relver
+ mkdir obj
- # https://anonscm.debian.org/git/pkg-gnome/mozjs52.git/tree/debian/patches
- patch -Np1 -i ../mozjs52-fix-soname.patch
+ # https://salsa.debian.org/gnome-team/mozjs52/tree/debian/master/debian/patches
patch -Np1 -i ../mozjs52-copy-headers.patch
patch -Np1 -i ../mozjs52-disable-mozglue.patch
- patch -Np1 -i ../mozjs52-include-configure-script.patch
+
+ # New errors in test code as of GCC 9
+ patch -Np1 -i ../mozjs52-disable-wformat.patch
}
build() {
+ local configure_args=(
+ --prefix=/usr
+ --disable-debug
+ --disable-debug-symbols
+ --disable-jemalloc
+ --disable-strip
+ --enable-gold
+ --enable-optimize="-O2"
+ --enable-pie
+ --enable-posix-nspr-emulation
+ --enable-readline
+ --enable-release
+ --enable-shared-js
+ --enable-tests
+ --with-intl-api
+ --with-system-zlib
+ --without-system-icu
+ ) flags=(
+ -fno-delete-null-pointer-checks
+ -fno-strict-aliasing
+ -fno-tree-vrp
+ )
+
+ cd firefox-$_relver/obj
+
unset CPPFLAGS
- CFLAGS+=' -fno-delete-null-pointer-checks -fno-strict-aliasing -fno-tree-vrp -flto=3'
- CXXFLAGS+=' -fno-delete-null-pointer-checks -fno-strict-aliasing -fno-tree-vrp -flto=3'
- export CC=gcc CXX=g++ PYTHON=/usr/bin/python2 SHELL=/bin/bash
+ CFLAGS+=" ${flags[*]}"
+ CXXFLAGS+=" ${flags[*]}"
+ export CC=gcc CXX=g++ PYTHON=/usr/bin/python2
- cd mozilla-unified/js/src
- sh configure \
- --prefix=/usr \
- --disable-debug \
- --disable-debug-symbols \
- --disable-strip \
- --enable-gold \
- --enable-optimize="-O2" \
- --enable-pie \
- --enable-posix-nspr-emulation \
- --enable-readline \
- --enable-release \
- --enable-shared-js \
- --enable-tests \
- --with-intl-api \
- --with-system-zlib \
- --without-system-icu
+ sh ../js/src/configure "${configure_args[@]}"
make
}
check() {
- cd mozilla-unified/js/src
- python2 tests/jstests.py -d -s -t 300 --no-progress ../../js/src/js/src/shell/js
- python2 jit-test/jit_test.py -s -t 300 --no-progress ../../js/src/js/src/shell/js basic
+ local jstests_extra_args=(
+ --format=none
+ --exclude-random
+ ) jittest_extra_args=(
+ --format=none
+ --timeout 300
+ ) jittest_test_args=(
+ basic
+ )
+
+ cd firefox-$_relver/obj
+ make -C js/src check-jstests check-jit-test \
+ JSTESTS_EXTRA_ARGS="${jstests_extra_args[*]}" \
+ JITTEST_EXTRA_ARGS="${jittest_extra_args[*]}" \
+ JITTEST_TEST_ARGS="${jittest_test_args[*]}"
}
package() {
- cd mozilla-unified/js/src
+ cd firefox-$_relver/obj
make DESTDIR="$pkgdir" install
rm "$pkgdir"/usr/lib/*.ajs
find "$pkgdir"/usr/{lib/pkgconfig,include} -type f -exec chmod -c a-x {} +
diff --git a/abs/extra/js52/mozjs52-disable-wformat.patch b/abs/extra/js52/mozjs52-disable-wformat.patch
new file mode 100644
index 0000000..71e9ac3
--- /dev/null
+++ b/abs/extra/js52/mozjs52-disable-wformat.patch
@@ -0,0 +1,12 @@
+diff -u -r firefox-52.9.0esr/js/src/jsapi-tests/moz.build firefox-52.9.0esr-noerror/js/src/jsapi-tests/moz.build
+--- firefox-52.9.0esr/js/src/jsapi-tests/moz.build 2017-04-11 02:13:16.000000000 +0000
++++ firefox-52.9.0esr-noerror/js/src/jsapi-tests/moz.build 2019-06-20 20:10:31.092230735 +0000
+@@ -147,7 +147,7 @@
+ OS_LIBS += CONFIG['MOZ_ZLIB_LIBS']
+
+ if CONFIG['GNU_CXX']:
+- CXXFLAGS += ['-Wno-shadow', '-Werror=format']
++ CXXFLAGS += ['-Wno-shadow']
+
+ # This is intended as a temporary workaround to enable VS2015.
+ if CONFIG['_MSC_VER']:
diff --git a/abs/extra/js52/mozjs52-fix-soname.patch b/abs/extra/js52/mozjs52-fix-soname.patch
deleted file mode 100644
index a91107c..0000000
--- a/abs/extra/js52/mozjs52-fix-soname.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From: Laszlo Boszormenyi (GCS) <gcs@debian.org>
-Date: Fri, 02 May 2014 22:20:45 +0200
-Subject: fix soname
-
-Add soname switch to linker, regardless of Operating System
-
-Bug-Debian: http://bugs.debian.org/746705
----
- config/rules.mk | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-Index: mozjs52-52.2.1~artful1/config/rules.mk
-===================================================================
---- mozjs52-52.2.1~artful1.orig/config/rules.mk
-+++ mozjs52-52.2.1~artful1/config/rules.mk
-@@ -418,7 +418,7 @@ endif # AIX
- #
- # Linux: add -Bsymbolic flag for components
- #
--ifeq ($(OS_ARCH),Linux)
-+#ifeq ($(OS_ARCH),Linux)
- ifdef IS_COMPONENT
- EXTRA_DSO_LDOPTS += -Wl,-Bsymbolic
- endif
-@@ -426,7 +426,8 @@ ifdef LD_VERSION_SCRIPT
- EXTRA_DSO_LDOPTS += -Wl,--version-script,$(LD_VERSION_SCRIPT)
- EXTRA_DEPS += $(LD_VERSION_SCRIPT)
- endif
--endif
-+#endif
-+EXTRA_DSO_LDOPTS += -Wl,-soname,lib$(JS_LIBRARY_NAME).so.0
-
- ifdef SYMBOLS_FILE
- ifeq ($(OS_TARGET),WINNT)
diff --git a/abs/extra/js52/mozjs52-include-configure-script.patch b/abs/extra/js52/mozjs52-include-configure-script.patch
deleted file mode 100644
index 523e657..0000000
--- a/abs/extra/js52/mozjs52-include-configure-script.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From 4a06a1a6a71293decb83aee7adb74bc709493106 Mon Sep 17 00:00:00 2001
-From: Philip Chimento <philip.chimento@gmail.com>
-Date: Wed, 5 Jul 2017 22:57:09 -0700
-Subject: [PATCH] build: Include configure script, be nicer about options
-
-A configure script is not included in the SpiderMonkey tarball by
-default. Also, we have to account for JHbuild passing extra unknown
-options like --disable-Werror.
-
-https://bugzilla.mozilla.org/show_bug.cgi?id=1379540
----
- js/src/configure | 9 +++++++++
- python/mozbuild/mozbuild/configure/__init__.py | 2 +-
- python/mozbuild/mozbuild/configure/options.py | 6 +++++-
- 3 files changed, 15 insertions(+), 2 deletions(-)
- create mode 100755 js/src/configure
-
-diff --git a/js/src/configure b/js/src/configure
-new file mode 100755
-index 00000000..f1ef8c49
---- /dev/null
-+++ b/js/src/configure
-@@ -0,0 +1,9 @@
-+#!/bin/sh
-+
-+SRCDIR=$(dirname $0)
-+TOPSRCDIR="$SRCDIR"/../..
-+export OLD_CONFIGURE="$SRCDIR"/old-configure
-+
-+set -- "$@" --enable-project=js
-+
-+which python2.7 > /dev/null && exec python2.7 "$TOPSRCDIR/configure.py" "$@" || exec python "$TOPSRCDIR/configure.py" "$@"
-diff --git a/python/mozbuild/mozbuild/configure/__init__.py b/python/mozbuild/mozbuild/configure/__init__.py
-index 0fe640ca..09b460d3 100644
---- a/python/mozbuild/mozbuild/configure/__init__.py
-+++ b/python/mozbuild/mozbuild/configure/__init__.py
-@@ -356,7 +356,7 @@ def run(self, path=None):
- # All options should have been removed (handled) by now.
- for arg in self._helper:
- without_value = arg.split('=', 1)[0]
-- raise InvalidOptionError('Unknown option: %s' % without_value)
-+ print('Ignoring', without_value, ': Unknown option')
-
- # Run the execution queue
- for func, args in self._execution_queue:
-diff --git a/python/mozbuild/mozbuild/configure/options.py b/python/mozbuild/mozbuild/configure/options.py
-index 4310c862..15bfe425 100644
---- a/python/mozbuild/mozbuild/configure/options.py
-+++ b/python/mozbuild/mozbuild/configure/options.py
-@@ -402,7 +402,11 @@ def __init__(self, environ=os.environ, argv=sys.argv):
-
- def add(self, arg, origin='command-line', args=None):
- assert origin != 'default'
-- prefix, name, values = Option.split_option(arg)
-+ try:
-+ prefix, name, values = Option.split_option(arg)
-+ except InvalidOptionError as e:
-+ print('Ignoring', arg, ':', e)
-+ return
- if args is None:
- args = self._extra_args
- if args is self._extra_args and name in self._extra_args:
-