This commit is contained in:
milisbir 2018-05-10 22:33:01 +03:00
parent f0b5d67797
commit e32f6556f3
2 changed files with 102 additions and 0 deletions

View File

@ -0,0 +1,66 @@
From 7e6d628456af3e99ebcb9a01a27e1461585082a4 Mon Sep 17 00:00:00 2001
From: Till Schneidereit <till@tillschneidereit.net>
Date: Thu, 1 Oct 2015 12:59:09 +0200
Subject: [PATCH] Disable MOZ_GLUE_IN_PROGRAM in stand-alone builds on all
platforms
Otherwise, build fails not being able to find HashBytes.
Patch ported forward to mozjs52 by Philip Chimento
<philip.chimento@gmail.com>.
https://bugzilla.mozilla.org/show_bug.cgi?id=1176787
---
js/src/old-configure.in | 23 ++++++++++++++---------
mozglue/build/moz.build | 2 +-
2 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/js/src/old-configure.in b/js/src/old-configure.in
index 1c5c9e21..ff0617e3 100644
--- a/js/src/old-configure.in
+++ b/js/src/old-configure.in
@@ -1623,16 +1623,21 @@ dnl ========================================================
dnl = Enable jemalloc
dnl ========================================================
-case "${OS_TARGET}" in
-Android|WINNT|Darwin)
+dnl In stand-alone builds we always only want to link executables against mozglue.
+if test "$JS_STANDALONE"; then
MOZ_GLUE_IN_PROGRAM=
- ;;
-*)
- dnl On !Android !Windows !OSX, we only want to link executables against mozglue
- MOZ_GLUE_IN_PROGRAM=1
- AC_DEFINE(MOZ_GLUE_IN_PROGRAM)
- ;;
-esac
+else
+ case "${OS_TARGET}" in
+ Android|WINNT|Darwin)
+ MOZ_GLUE_IN_PROGRAM=
+ ;;
+ *)
+ dnl On !Android !Windows !OSX, we only want to link executables against mozglue
+ MOZ_GLUE_IN_PROGRAM=1
+ AC_DEFINE(MOZ_GLUE_IN_PROGRAM)
+ ;;
+ esac
+fi
if test "$MOZ_MEMORY"; then
if test "x$MOZ_DEBUG" = "x1"; then
diff --git a/mozglue/build/moz.build b/mozglue/build/moz.build
index d2897477..e3be5a2b 100644
--- a/mozglue/build/moz.build
+++ b/mozglue/build/moz.build
@@ -6,7 +6,7 @@
# Build mozglue as a shared lib on Windows, OSX and Android.
# If this is ever changed, update MOZ_SHARED_MOZGLUE in browser/installer/Makefile.in
-if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android'):
+if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android') and not CONFIG['JS_STANDALONE']:
SharedLibrary('mozglue')
else:
Library('mozglue')

View File

@ -0,0 +1,36 @@
# Tanım: JavaScript interpreter and libraries
# URL: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey
# Paketçi: milisarge
# Gerekler: python zip autoconf2 nspr
# Grup:
isim=js52
surum=52.3.0esr
devir=1
kaynak=(https://ftp.mozilla.org/pub/firefox/releases/52.3.0esr/source/firefox-52.3.0esr.source.tar.xz
mozjs52-disable-mozglue.patch)
derle() {
cd firefox-$surum
# Workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=1236085
patch -p1 -i ../mozjs52-disable-mozglue.patch
cd js/src
rm configure
autoconf-2.13
rm -r editline
rm -r ctypes/libffi
[[ -z "$MOZJS_DEBUG" ]] || DBG_OPTIONS='--enable-debug --disable-optimize'
cd firefox-$surum/js/src
# spidermonkey is broken with ICU 59 and it won't be fix on FF52
# https://bugzilla.mozilla.org/show_bug.cgi?id=1353650
./configure --prefix=/usr --with-system-nspr \
--enable-readline $DBG_OPTIONS
make
cd "$SRC/firefox-$surum/js/src/tests"
python2 jstests.py ../js/src/js
cd "$SRC/firefox-$surum/js/src/jit-test"
python2 jit_test.py ../js/src/js
cd firefox-$surum/js/src
make DESTDIR="$PKG" install
install -Dm644 mozglue/build/libmozglue.a "$PKG"/usr/lib/libmozglue.a
}