diff --git a/system/base/spidermonkey/actions.py b/system/base/spidermonkey/actions.py index c9338c92..54a5ea6b 100644 --- a/system/base/spidermonkey/actions.py +++ b/system/base/spidermonkey/actions.py @@ -18,17 +18,16 @@ def setup(): #shelltools.system("sed -i 's/(defined\((@TEMPLATE_FILE)\))/\1/' config/milestone.pl ") shelltools.export("CC", "gcc") shelltools.export("CXX", "g++") - + shelltools.system("mkdir -p build-js") shelltools.cd("build-js") - + shelltools.system("../js/src/configure \ - --prefix=/usr \ - --libdir=/usr/lib \ - --enable-readline \ - --enable-posix-nspr-emulation \ + --prefix=/usr \ + --libdir=/usr/lib \ + --enable-readline \ --with-intl-api \ - --disable-debug \ + --disable-debug \ --disable-debug-symbols \ --disable-jemalloc \ --disable-strip \ @@ -41,30 +40,31 @@ def setup(): --enable-tests \ --with-intl-api \ --with-system-zlib \ + --with-system-nspr \ --without-system-icu") def build(): shelltools.cd("build-js") autotools.make() - + def check(): shelltools.cd("build-js") - + #autotools.make("-C js/src check-jstests") #autotools.make("-C js/src check-jit-test") - + def install(): shelltools.cd("build-js") autotools.rawInstall("DESTDIR=%s" % get.installDIR()) pisitools.remove("/usr/lib/*.ajs") - + #for polkit #pisitools.rename("/usr/lib/pkgconfig/mozjs-..pc", "mozjs-17.0.pc") #pisitools.remove("usr/lib/libmozjs-..a") - + shelltools.cd("..") pisitools.dodoc("README*") - + # add link for polkit #pisitools.dosym("libmozjs-..so", "/usr/lib/libmozjs-17.0.so") diff --git a/system/base/spidermonkey/files/mozjs68-fix-soname.patch b/system/base/spidermonkey/files/mozjs78-fix-soname.patch similarity index 62% rename from system/base/spidermonkey/files/mozjs68-fix-soname.patch rename to system/base/spidermonkey/files/mozjs78-fix-soname.patch index 3e7da233..546157fc 100644 --- a/system/base/spidermonkey/files/mozjs68-fix-soname.patch +++ b/system/base/spidermonkey/files/mozjs78-fix-soname.patch @@ -1,6 +1,6 @@ -diff -Nuar a/js/src/build/Makefile.in b/js/src/build/Makefile.in ---- a/js/src/build/Makefile.in 2020-07-20 21:02:51.000000000 +0000 -+++ b/js/src/build/Makefile.in 2020-08-28 15:16:55.659934940 +0000 +"Carried over from mozjs68" +--- a/js/src/build/Makefile.in ++++ b/js/src/build/Makefile.in @@ -78,6 +78,8 @@ endif ifneq (,$(SHARED_LIBRARY)) @@ -10,14 +10,13 @@ diff -Nuar a/js/src/build/Makefile.in b/js/src/build/Makefile.in ifeq ($(OS_ARCH),Darwin) install_name_tool -id $(abspath $(libdir)/$(SHARED_LIBRARY)) $(DESTDIR)$(libdir)/$(SHARED_LIBRARY) endif -diff -Nuar a/js/src/build/moz.build b/js/src/build/moz.build ---- a/js/src/build/moz.build 2020-07-20 21:02:51.000000000 +0000 -+++ b/js/src/build/moz.build 2020-08-28 15:18:37.389927600 +0000 +--- a/js/src/build/moz.build ++++ b/js/src/build/moz.build @@ -25,6 +25,7 @@ if CONFIG['JS_SHARED_LIBRARY']: GeckoSharedLibrary('js', linkage=None) SHARED_LIBRARY_NAME = CONFIG['JS_LIBRARY_NAME'] + LDFLAGS += ['-Wl,-soname,lib{}.so.0'.format(SHARED_LIBRARY_NAME)] - + # Ensure symbol versions of shared library on Linux do not conflict - # with those in libxul. + # with those in libxul. \ No newline at end of file diff --git a/system/base/spidermonkey/files/mozjs78-silence-sandbox-violations.patch b/system/base/spidermonkey/files/mozjs78-silence-sandbox-violations.patch new file mode 100644 index 00000000..12c8c2e0 --- /dev/null +++ b/system/base/spidermonkey/files/mozjs78-silence-sandbox-violations.patch @@ -0,0 +1,27 @@ +"Carried over + updated from mozjs68" +Upstream: no +From 9ad10569e11a2fb96377188f895bc66abcc9511d Mon Sep 17 00:00:00 2001 +From: Marc-Antoine Perennou +Date: Wed, 5 Sep 2018 15:05:24 +0200 +Subject: [PATCH] silence sandbox violations + +Signed-off-by: Marc-Antoine Perennou +--- + python/mozbuild/mozbuild/frontend/emitter.py | 5 ----- + 1 file changed, 5 deletions(-) + +--- a/python/mozbuild/mozbuild/frontend/emitter.py ++++ b/python/mozbuild/mozbuild/frontend/emitter.py +@@ -1239,12 +1239,6 @@ class TreeMetadataEmitter(LoggingMixin): + 'is a filename, but a directory is required: %s ' + '(resolved to %s)' % (local_include, full_path), + context) +- if (full_path == context.config.topsrcdir or +- full_path == context.config.topobjdir): +- raise SandboxValidationError( +- 'Path specified in LOCAL_INCLUDES ' +- '(%s) resolves to the topsrcdir or topobjdir (%s), which is ' +- 'not allowed' % (local_include, full_path), context) + include_obj = LocalInclude(context, local_include) + local_includes.append(include_obj.path.full_path) + yield include_obj \ No newline at end of file diff --git a/system/base/spidermonkey/pspec.xml b/system/base/spidermonkey/pspec.xml index 5f1ae37a..5a05ad1c 100644 --- a/system/base/spidermonkey/pspec.xml +++ b/system/base/spidermonkey/pspec.xml @@ -12,18 +12,20 @@ library Stand-alone JavaScript C Library Spidermonkey is Mozilla's C implementation of JavaScript. - https://ftp.mozilla.org/pub/firefox/releases/68.12.0esr/source/firefox-68.12.0esr.source.tar.xz + https://ftp.mozilla.org/pub/firefox/releases/78.10.1esr/source/firefox-78.10.1esr.source.tar.xz - python3 + python3-devel zlib-devel nspr-devel readline-devel - libffi-devel autoconf213 + rust + llvm - Remove-unused-LLVM-and-Rust-build-dependencies.patch - mozjs68-fix-soname.patch + mozjs78-silence-sandbox-violations.patch + mozjs78-fix-soname.patch + @@ -53,11 +55,18 @@ /usr/include /usr/lib/pkgconfig - + + + 2021-05-28 + 78.10.1 + Version bump + Berk Çakar + berk2238@hotmail.com + 2020-12-09 68.12.0