[oe-commits] [meta-openembedded] 08/13: mozjs: upgrade 60.5.2 -> 60.9.0 and rework

git at git.openembedded.org git at git.openembedded.org
Tue Jan 21 16:03:09 UTC 2020


This is an automated email from the git hooks/post-receive script.

khem pushed a commit to branch master-next
in repository meta-openembedded.

commit 2233aa0691b1ac04a0f15491ac5f5281570dc991
Author: Andreas Müller <schnitzeltony at gmail.com>
AuthorDate: Tue Jan 21 08:04:18 2020 +0100

    mozjs: upgrade 60.5.2 -> 60.9.0 and rework
    
    * build with firefox-esr sources to simplyfy upgrade path
    * cleanup: Should make python2-> python3 transition easier
    
    Signed-off-by: Andreas Müller <schnitzeltony at gmail.com>
    Signed-off-by: Khem Raj <raj.khem at gmail.com>
---
 .../0001-do-not-create-python-environment.patch    | 15 ++----
 ...se-autoconf-2.13-to-refresh-old.configure.patch | 42 ----------------
 ...010-fix-cross-compilation-on-i586-targets.patch | 20 +++++---
 .../mozjs/{mozjs_60.5.2.bb => mozjs_60.9.0.bb}     | 56 +++++++++++-----------
 4 files changed, 45 insertions(+), 88 deletions(-)

diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0001-do-not-create-python-environment.patch b/meta-oe/recipes-extended/mozjs/mozjs/0001-do-not-create-python-environment.patch
index a3c1b69..985fc36 100644
--- a/meta-oe/recipes-extended/mozjs/mozjs/0001-do-not-create-python-environment.patch
+++ b/meta-oe/recipes-extended/mozjs/mozjs/0001-do-not-create-python-environment.patch
@@ -8,10 +8,12 @@ Use oe's python environment rather than create one of host
 Upstream-Status: Inappropriate [oe specific]
 
 Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
+
+Rebase to 60.9.0 (firefox-esr sources)
+Signed-off-by: Andreas Müller <schnitzeltony at gmail.com>
 ---
  build/moz.configure/init.configure | 18 ------------------
  configure.py                       | 10 +++++++++-
- js/src/old-configure               |  4 ++--
  3 files changed, 11 insertions(+), 21 deletions(-)
 
 --- a/build/moz.configure/init.configure
@@ -60,14 +62,3 @@ Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
  from mozbuild.configure import ConfigureSandbox
  from mozbuild.makeutil import Makefile
  from mozbuild.pythonutil import iter_modules_in_path
---- a/js/src/old-configure
-+++ b/js/src/old-configure
-@@ -9974,7 +9974,7 @@ if test "$JS_STANDALONE"; then
-   
- if test "$no_recursion" != yes; then
-   trap '' EXIT
--  if ! $PYTHON $_topsrcdir/build/subconfigure.py --list subconfigures --skip skip_subconfigures; then
-+  if ! PYTHONPATH=$_topsrcdir/python/mozbuild/ $PYTHON $_topsrcdir/build/subconfigure.py --list subconfigures --skip skip_subconfigures; then
-       exit 1
-   fi
- fi
diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0004-do-not-use-autoconf-2.13-to-refresh-old.configure.patch b/meta-oe/recipes-extended/mozjs/mozjs/0004-do-not-use-autoconf-2.13-to-refresh-old.configure.patch
deleted file mode 100644
index 4cba79c..0000000
--- a/meta-oe/recipes-extended/mozjs/mozjs/0004-do-not-use-autoconf-2.13-to-refresh-old.configure.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From a46adb74b5ba5e17d676d31d70faca76c1381d15 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia at windriver.com>
-Date: Thu, 12 Jul 2018 21:25:46 +0800
-Subject: [PATCH 4/5] do not use autoconf 2.13 to refresh old.configure
-
-Upstream-Status: Inappropriate [oe specific]
-
-Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
----
- build/moz.configure/old.configure | 2 +-
- js/src/old-configure              | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/build/moz.configure/old.configure b/build/moz.configure/old.configure
-index ece47f4..a73900f 100644
---- a/build/moz.configure/old.configure
-+++ b/build/moz.configure/old.configure
-@@ -83,7 +83,7 @@ def prepare_configure(old_configure, mozconfig, autoconf, build_env, shell,
-             old_configure = os.path.join(old_configure_dir, 'js', 'src',
-                                          os.path.basename(old_configure))
- 
--    refresh = True
-+    refresh = False
-     if exists(old_configure):
-         mtime = getmtime(old_configure)
-         aclocal = os.path.join(build_env.topsrcdir, 'build', 'autoconf',
-diff --git a/js/src/old-configure b/js/src/old-configure
-index 75b00e1..8a8ef52 100644
---- a/js/src/old-configure
-+++ b/js/src/old-configure
-@@ -619,7 +619,7 @@ if test -z "$srcdir"; then
-   ac_prog=$0
-   ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
-   test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
--  srcdir=$ac_confdir
-+  srcdir="$ac_confdir/../../"
-   if test ! -r $srcdir/$ac_unique_file; then
-     srcdir=..
-   fi
--- 
-2.7.4
-
diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0010-fix-cross-compilation-on-i586-targets.patch b/meta-oe/recipes-extended/mozjs/mozjs/0010-fix-cross-compilation-on-i586-targets.patch
index 3ac25f6..e0929a8 100644
--- a/meta-oe/recipes-extended/mozjs/mozjs/0010-fix-cross-compilation-on-i586-targets.patch
+++ b/meta-oe/recipes-extended/mozjs/mozjs/0010-fix-cross-compilation-on-i586-targets.patch
@@ -13,18 +13,26 @@ Signed-off-by: Maciej Borzecki <maciej.borzecki at open-rnd.pl>
 
 Rebase to 52.8.1
 Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
+
+Rebase to 60.9.0 (firefox-esr sources)
+Signed-off-by: Andreas Müller <schnitzeltony at gmail.com>
 ---
- js/src/old-configure | 2 +-
+ js/src/old-configure.in | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
---- a/js/src/old-configure
-+++ b/js/src/old-configure
-@@ -3833,7 +3833,7 @@ AS='$(CC)'
+diff --git a/js/src/old-configure.in b/js/src/old-configure.in
+index 3d53ee1..11c3d5a 100644
+--- a/js/src/old-configure.in
++++ b/js/src/old-configure.in
+@@ -405,7 +405,7 @@ AS='$(CC)'
  AS_DASH_C_FLAG='-c'
  MOZ_USER_DIR=".mozilla"
  
 -MOZ_FIX_LINK_PATHS="-Wl,-rpath-link,${DIST}/bin -Wl,-rpath-link,${prefix}/lib"
 +MOZ_FIX_LINK_PATHS="-Wl,-rpath-link,${DIST}/bin"
  
- 
- 
+ dnl Configure platform-specific CPU architecture compiler options.
+ dnl ==============================================================
+-- 
+2.21.0
+
diff --git a/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb b/meta-oe/recipes-extended/mozjs/mozjs_60.9.0.bb
similarity index 82%
rename from meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb
rename to meta-oe/recipes-extended/mozjs/mozjs_60.9.0.bb
index 389bcac..e229bf4 100644
--- a/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb
+++ b/meta-oe/recipes-extended/mozjs/mozjs_60.9.0.bb
@@ -3,13 +3,12 @@ HOMEPAGE = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonk
 LICENSE = "MPL-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=dc9b6ecd19a14a54a628edaaf23733bf"
 
-SRC_URI = "https://dev.gentoo.org/~axs/distfiles/mozjs-60.5.2.tar.bz2 \
+SRC_URI = "https://archive.mozilla.org/pub/firefox/releases/${PV}esr/source/firefox-${PV}esr.source.tar.xz \
            file://0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch \
            file://0010-fix-cross-compilation-on-i586-targets.patch \
            file://0001-do-not-create-python-environment.patch \
            file://0002-fix-cannot-find-link.patch \
            file://0003-workaround-autoconf-2.13-detection-failed.patch \
-           file://0004-do-not-use-autoconf-2.13-to-refresh-old.configure.patch \
            file://0005-fix-do_compile-failed-on-mips.patch \
            file://add-riscv-support.patch \
            file://0001-mozjs-fix-coredump-caused-by-getenv.patch \
@@ -26,15 +25,18 @@ SRC_URI_append_libc-musl = " \
 SRC_URI_append_mipsarchn32 = " \
            file://0001-fix-compiling-failure-on-mips64-n32-bsp.patch \
            "
-SRC_URI[md5sum] = "023ed014e9e93d01620d121bc06a3589"
-SRC_URI[sha256sum] = "f51039c997415fd0f13f8e01966b4a8ff80cbf90deb8b14c18827104a369cc0d"
+SRC_URI[md5sum] = "69a0be9ce695e5dc4941ed0c78ef00c2"
+SRC_URI[sha256sum] = "9f453c8cc5669e46e38f977764d49a36295bf0d023619d9aac782e6bb3e8c53f"
+
+S = "${WORKDIR}/firefox-${@d.getVar("PV").replace("esr", "")}"
 
 inherit autotools pkgconfig perlnative pythonnative
 
 inherit features_check
 CONFLICT_DISTRO_FEATURES_mipsarchn32 = "ld-is-gold"
 
-DEPENDS += "nspr zlib python-six-native python-pytoml-native \
+DEPENDS += "nspr zlib autoconf-2.13-native \
+            python-six-native python-pytoml-native \
             python-jsmin-native python-futures-native \
             python-which-native"
 
@@ -77,15 +79,9 @@ export HOST_CXXFLAGS = "${BUILD_CXXFLAGS}"
 
 do_configure() {
     export SHELL="/bin/sh"
-    export TMP="${B}"
-    ${S}/js/src/configure ${EXTRA_OECONF}
-}
-
-do_compile_prepend() {
-    export SHELL="/bin/sh"
-    export S
-    export PYTHONPATH
     cd ${S}
+    # Add mozjs python-modules necessary
+    PYTHONPATH="$PYTHONPATH:${S}/config:${S}/build"
     for sub_dir in python testing/mozbase; do
         for module_dir in `ls $sub_dir -1`;do
             [ $module_dir = "virtualenv" ] && continue
@@ -94,25 +90,29 @@ do_compile_prepend() {
             fi
         done
     done
-    PYTHONPATH="$PYTHONPATH:${S}/config:${S}/build"
-    cd -
+    echo "$PYTHONPATH" > ${B}/PYTHONPATH
+    export PYTHONPATH=`cat ${B}/PYTHONPATH`
+
+    cd ${S}/js/src
+    autoconf213 --macrodir=${STAGING_DATADIR_NATIVE}/autoconf213 old-configure.in > old-configure
+    sed -i 's:refresh = True:refresh = False:g' ${S}/build/moz.configure/old.configure
+
+    cd ${B}
+    ${S}/js/src/configure ${EXTRA_OECONF}
+
+    # Make standard Makefile checks pass
+    touch ${S}/js/src/configure
+    touch ${B}/config.status
+}
+
+do_compile_prepend() {
+    export SHELL="/bin/sh"
+    export PYTHONPATH=`cat ${B}/PYTHONPATH`
 }
 
 do_install_prepend() {
     export SHELL="/bin/sh"
-    export S
-    export PYTHONPATH
-    cd ${S}
-    for sub_dir in python testing/mozbase; do
-        for module_dir in `ls $sub_dir -1`;do
-            [ $module_dir = "virtualenv" ] && continue
-            if [ -d "${S}/$sub_dir/$module_dir" ];then
-                PYTHONPATH="$PYTHONPATH:${S}/$sub_dir/$module_dir"
-            fi
-        done
-    done
-    PYTHONPATH="$PYTHONPATH:${S}/config:${S}/build"
-    cd -
+    export PYTHONPATH=`cat ${B}/PYTHONPATH`
 }
 
 PACKAGES =+ "lib${BPN}"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list