Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gnometesting.git;a=commitdiff;h=953b8981fb0142790c1bc9f48ecd439c1378aa66
commit 953b8981fb0142790c1bc9f48ecd439c1378aa66 Author: Baste <[email protected]> Date: Wed Apr 12 11:57:23 2017 +0200 mozjs-38.2.1-1-x86_64 - 24.2.0 -> 38.2.1 diff --git a/source/devel/mozjs/FrugalBuild b/source/devel/mozjs/FrugalBuild index 816579d..ca809f9 100644 --- a/source/devel/mozjs/FrugalBuild +++ b/source/devel/mozjs/FrugalBuild @@ -2,33 +2,38 @@ # Maintainer: Baste <[email protected]> pkgname=mozjs -pkgver=24.2.0 -pkgrel=4 +pkgver=38.2.1 +pkgrel=1 pkgdesc="JavaScript interpreter and libraries" -url="https://developer.mozilla.org/En/SpiderMonkey/17" -depends=('nspr' 'readline' 'zlib' 'libstdc++>=6.3.1-4') +url="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Releases/38" +depends=('nspr' 'readline' 'zlib' 'libstdc++>=6.3.1-4' 'icu4c') makedepends=() groups=('devel') archs=("x86_64") -source=(http://ftp.mozilla.org/pub/mozilla.org/js/$pkgname-$pkgver.tar.bz2) +source=(https://people.mozilla.org/~sstangl/mozjs-38.2.1.rc0.tar.bz2 upstream.patch link.patch) up2date="lynx -dump -source http://ftp.mozilla.org/pub/mozilla.org/js/ | grep -m1 mozjs | sed 's/.*js-\(.*\).tar.*/\1/'" -_F_cd_path="$pkgname-$pkgver/js/src" -sha1sums=('ce779081cc11bd0c871c6f303fc4a0091cf4fe66') +_F_cd_path="mozjs-38.0.0" +sha1sums=('e25d69718d846a73ee7897a82945a5f920b4be78' \ + '35f5e42e4caaff4a0e809bfdc8c7504bc37e1e43' \ + '432758063859715e4965601b9e5bef8c23525be1') options+=('static') build() { - - Fcd - rm -rf editline ctypes/libffi || Fdie - sed -i 's/(defined\((@TEMPLATE_FILE)\))/\1/' config/milestone.pl || Fdie - Fbuild \ - --with-system-nspr \ - --enable-threadsafe \ - --enable-readline \ - --enable-system-ffi - Fexec strip $Fdestdir/usr/lib/*.a || Fdie - + # Remove zlib directory (to be sure using system version) + rm -rf modules/zlib + Fpatchall + cd js/src + autoconf-2.13 + # Correct sed expression for new sed + sed -i 's|\^\[:space:\]|^\[\[:space:\]\]|g' configure + Fmake --with-system-nspr --enable-system-ffi \ + --with-system-zlib --with-system-icu --with-intl-api --enable-ctypes \ + --enable-threadsafe --enable-system-ffi --enable-shared-js \ + --enable-gcgenerational --disable-optimize --enable-pie + Fmakeinstall + Frm usr/lib/*.ajs + Frm usr/bin/js38 } # optimization OK diff --git a/source/devel/mozjs/link.patch b/source/devel/mozjs/link.patch new file mode 100644 index 0000000..5991e63 --- /dev/null +++ b/source/devel/mozjs/link.patch @@ -0,0 +1,11 @@ +--- a/python/mozbuild/mozbuild/backend/recursivemake.py ++++ b/python/mozbuild/mozbuild/backend/recursivemake.py +@@ -796,7 +796,7 @@ + return + + for source, dest, _ in self._walk_hierarchy(obj, exports): +- self._install_manifests['dist_include'].add_symlink(source, dest) ++ self._install_manifests['dist_include'].add_copy(source, dest) + + if not os.path.exists(source): + raise Exception('File listed in EXPORTS does not exist: %s' % source) \ No newline at end of file diff --git a/source/devel/mozjs/upstream.patch b/source/devel/mozjs/upstream.patch new file mode 100644 index 0000000..5153ea7 --- /dev/null +++ b/source/devel/mozjs/upstream.patch @@ -0,0 +1,217 @@ +Submitted By: Douglas R. Reno <renodr at linuxfromscratch dot org> +Date: 2017-04-01 +Inital Package Version: 38.2.1 +Upstream Status: Declined +Origin: https://git.gnome.org/browse/jhbuild/tree/patches +Description: Fixes build and functionality problems within mozjs38. + +diff -Naurp mozjs-38.0.0.orig/js/src/configure mozjs-38.0.0/js/src/configure +--- mozjs-38.0.0.orig/js/src/configure 2015-09-17 15:38:10.000000000 -0500 ++++ mozjs-38.0.0/js/src/configure 2017-04-01 19:31:59.958994141 -0500 +@@ -1662,9 +1662,9 @@ esac + + fi + +-MOZILLA_VERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir` +-MOZILLA_UAVERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --uaversion` +-MOZILLA_SYMBOLVERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --symbolversion` ++MOZILLA_VERSION=`python $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir` ++MOZILLA_UAVERSION=`python $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --uaversion` ++MOZILLA_SYMBOLVERSION=`python $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --symbolversion` + + cat >> confdefs.pytmp <<EOF + (''' MOZILLA_VERSION ''', r''' "$MOZILLA_VERSION" ''') +@@ -1696,8 +1696,13 @@ MOZJS_MINOR_VERSION=`echo $MOZILLA_VERSI + MOZJS_PATCH_VERSION=`echo $MOZILLA_VERSION | sed "s|^[0-9]*\.[0-9]*[^0-9]*||"` + IS_ALPHA=`echo $MOZILLA_VERSION | grep '[ab]'` + ++if test -n "$JS_STANDALONE"; then ++JS_SHELL_NAME=js$MOZJS_MAJOR_VERSION ++JS_CONFIG_NAME=js$MOZJS_MAJOR_VERSION-config ++else + JS_SHELL_NAME=js + JS_CONFIG_NAME=js-config ++fi + + + if test -n "$IS_ALPHA"; then +diff -Naurp mozjs-38.0.0.orig/js/src/configure.in mozjs-38.0.0/js/src/configure.in +--- mozjs-38.0.0.orig/js/src/configure.in 2015-09-17 15:12:18.000000000 -0500 ++++ mozjs-38.0.0/js/src/configure.in 2017-04-01 19:31:59.959994147 -0500 +@@ -236,9 +236,9 @@ fi + dnl ============================================================== + dnl Get mozilla version from central milestone file + dnl ============================================================== +-MOZILLA_VERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir` +-MOZILLA_UAVERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --uaversion` +-MOZILLA_SYMBOLVERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --symbolversion` ++MOZILLA_VERSION=`python $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir` ++MOZILLA_UAVERSION=`python $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --uaversion` ++MOZILLA_SYMBOLVERSION=`python $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --symbolversion` + + AC_DEFINE_UNQUOTED(MOZILLA_VERSION,"$MOZILLA_VERSION") + AC_DEFINE_UNQUOTED(MOZILLA_VERSION_U,$MOZILLA_VERSION) +@@ -252,16 +252,13 @@ MOZJS_MINOR_VERSION=`echo $MOZILLA_VERSI + MOZJS_PATCH_VERSION=`echo $MOZILLA_VERSION | sed "s|^[0-9]*\.[0-9]*[^0-9]*||"` + IS_ALPHA=`echo $MOZILLA_VERSION | grep '[ab]'` + +-dnl XXX in a temporary bid to avoid developer anger at renaming files +-dnl XXX before "js" symlinks exist, don't change names. +-dnl +-dnl if test -n "$JS_STANDALONE"; then +-dnl JS_SHELL_NAME=js$MOZJS_MAJOR_VERSION +-dnl JS_CONFIG_NAME=js$MOZJS_MAJOR_VERSION-config +-dnl else ++if test -n "$JS_STANDALONE"; then ++JS_SHELL_NAME=js$MOZJS_MAJOR_VERSION ++JS_CONFIG_NAME=js$MOZJS_MAJOR_VERSION-config ++else + JS_SHELL_NAME=js + JS_CONFIG_NAME=js-config +-dnl fi ++fi + + changequote([,]) + if test -n "$IS_ALPHA"; then +diff -Naurp mozjs-38.0.0.orig/js/src/jit/RegisterSets.h mozjs-38.0.0/js/src/jit/RegisterSets.h +--- mozjs-38.0.0.orig/js/src/jit/RegisterSets.h 2015-09-17 15:12:22.000000000 -0500 ++++ mozjs-38.0.0/js/src/jit/RegisterSets.h 2017-04-01 19:31:59.961994157 -0500 +@@ -7,7 +7,6 @@ + #ifndef jit_RegisterSets_h + #define jit_RegisterSets_h + +-#include "mozilla/Alignment.h" + #include "mozilla/MathAlgorithms.h" + + #include "jit/JitAllocPolicy.h" +@@ -26,8 +25,8 @@ struct AnyRegister { + Code code_; + + public: +- AnyRegister() +- { } ++ AnyRegister() = default; ++ + explicit AnyRegister(Register gpr) { + code_ = gpr.code(); + } +@@ -156,7 +155,7 @@ class ValueOperand + } + #endif + +- ValueOperand() {} ++ ValueOperand() = default; + }; + + // Registers to hold either either a typed or untyped value. +@@ -165,46 +164,25 @@ class TypedOrValueRegister + // Type of value being stored. + MIRType type_; + +- // Space to hold either an AnyRegister or a ValueOperand. + union U { +- mozilla::AlignedStorage2<AnyRegister> typed; +- mozilla::AlignedStorage2<ValueOperand> value; ++ AnyRegister typed; ++ ValueOperand value; + } data; + +- AnyRegister& dataTyped() { +- MOZ_ASSERT(hasTyped()); +- return *data.typed.addr(); +- } +- ValueOperand& dataValue() { +- MOZ_ASSERT(hasValue()); +- return *data.value.addr(); +- } +- +- AnyRegister dataTyped() const { +- MOZ_ASSERT(hasTyped()); +- return *data.typed.addr(); +- } +- const ValueOperand& dataValue() const { +- MOZ_ASSERT(hasValue()); +- return *data.value.addr(); +- } +- + public: + +- TypedOrValueRegister() +- : type_(MIRType_None) +- {} ++ TypedOrValueRegister() = default; + + TypedOrValueRegister(MIRType type, AnyRegister reg) + : type_(type) + { +- dataTyped() = reg; ++ data.typed = reg; + } + + MOZ_IMPLICIT TypedOrValueRegister(ValueOperand value) + : type_(MIRType_Value) + { +- dataValue() = value; ++ data.value = value; + } + + MIRType type() const { +@@ -220,11 +198,13 @@ class TypedOrValueRegister + } + + AnyRegister typedReg() const { +- return dataTyped(); ++ MOZ_ASSERT(hasTyped()); ++ return data.typed; + } + + ValueOperand valueReg() const { +- return dataValue(); ++ MOZ_ASSERT(hasValue()); ++ return data.value; + } + + AnyRegister scratchReg() { +@@ -240,19 +220,18 @@ class ConstantOrRegister + // Whether a constant value is being stored. + bool constant_; + +- // Space to hold either a Value or a TypedOrValueRegister. + union U { +- mozilla::AlignedStorage2<Value> constant; +- mozilla::AlignedStorage2<TypedOrValueRegister> reg; ++ Value constant; ++ TypedOrValueRegister reg; + } data; + + Value& dataValue() { + MOZ_ASSERT(constant()); +- return *data.constant.addr(); ++ return data.constant; + } + TypedOrValueRegister& dataReg() { + MOZ_ASSERT(!constant()); +- return *data.reg.addr(); ++ return data.reg; + } + + public: +diff -Naurp mozjs-38.0.0.orig/js/src/Makefile.in mozjs-38.0.0/js/src/Makefile.in +--- mozjs-38.0.0.orig/js/src/Makefile.in 2015-09-17 15:12:18.000000000 -0500 ++++ mozjs-38.0.0/js/src/Makefile.in 2017-04-01 19:31:59.961994157 -0500 +@@ -208,10 +208,13 @@ endif + SCRIPTS = $(JS_CONFIG_NAME) + SDK_BINARY = $(JS_CONFIG_NAME) + +-$(LIBRARY_NAME).pc: js.pc ++$(JS_CONFIG_NAME): js-config + cp $^ $@ + +-install:: $(LIBRARY_NAME).pc ++$(JS_LIBRARY_NAME).pc: js.pc ++ cp $^ $@ ++ ++install:: $(JS_LIBRARY_NAME).pc + $(SYSINSTALL) $^ $(DESTDIR)$(libdir)/pkgconfig + + install:: js-config.h \ No newline at end of file _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
