diff --git a/firefox.spec b/firefox.spec index 7a7dda9..c68f883 100644 --- a/firefox.spec +++ b/firefox.spec @@ -111,6 +111,8 @@ Patch3: mozilla-build-arm.patch Patch18: xulrunner-24.0-jemalloc-ppc.patch # workaround linking issue on s390 (JSContext::updateMallocCounter(size_t) not found) Patch19: xulrunner-24.0-s390-inlines.patch +# backport js/src/configure.in changes for secondary arches +Patch20: xulrunner-32.0-backport-js-src-configure-in.patch # Fedora specific patches # Unable to install addons from https pages @@ -224,6 +226,7 @@ cd %{tarballdir} %endif %patch18 -p2 -b .jemalloc-ppc %patch19 -p2 -b .s390-inlines +%patch20 -p2 -b .js-configure # For branding specific patches. diff --git a/xulrunner-32.0-backport-js-src-configure-in.patch b/xulrunner-32.0-backport-js-src-configure-in.patch new file mode 100644 index 0000000..1172c7f --- /dev/null +++ b/xulrunner-32.0-backport-js-src-configure-in.patch @@ -0,0 +1,92 @@ +#Based on: +#https://hg.mozilla.org/mozilla-central/rev/57852745f33b +#https://hg.mozilla.org/mozilla-central/rev/926f47807112 +#https://hg.mozilla.org/mozilla-central/rev/a7b832e15a34 +--- firefox-32.0/mozilla-release/js/src/configure.in 2014-08-26 05:37:57.000000000 +0200 ++++ configure.in 2014-09-12 09:30:32.252623444 +0200 +@@ -1313,10 +1316,10 @@ + result="yes", result="no") + AC_MSG_RESULT("$result") + if test "$result" = "yes"; then +- AC_DEFINE(HAVE_64BIT_OS) +- HAVE_64BIT_OS=1 ++ AC_DEFINE(HAVE_64BIT_BUILD) ++ HAVE_64BIT_BUILD=1 + fi +-AC_SUBST(HAVE_64BIT_OS) ++AC_SUBST(HAVE_64BIT_BUILD) + AC_LANG_RESTORE + fi # COMPILE_ENVIRONMENT + +@@ -1404,7 +1407,7 @@ + *-aix*) + AC_DEFINE(AIX) + if test ! "$GNU_CC"; then +- if test ! "$HAVE_64BIT_OS"; then ++ if test ! "$HAVE_64BIT_BUILD"; then + # Compiling with Visual Age C++ object model compat is the + # default. To compile with object model ibm, add + # AIX_OBJMODEL=ibm to .mozconfig. +@@ -1748,7 +1763,7 @@ + + case "$target" in + i*86-*) +- if test "$HAVE_64BIT_OS"; then ++ if test "$HAVE_64BIT_BUILD"; then + AC_MSG_ERROR([You are targeting i386 but using the 64-bit compiler.]) + fi + +@@ -1983,39 +1998,34 @@ + i?86-*) + ENABLE_ION=1 + AC_DEFINE(JS_CPU_X86) +- AC_DEFINE(JS_NUNBOX32) + ;; + x86_64*-*) + ENABLE_ION=1 + AC_DEFINE(JS_CPU_X64) +- AC_DEFINE(JS_PUNBOX64) + ;; + arm*-*) + ENABLE_ION=1 + AC_DEFINE(JS_CPU_ARM) +- AC_DEFINE(JS_NUNBOX32) + ;; +-sparc*-*) +- if test ! "$HAVE_64BIT_OS" ; then ++sparc-*) + dnl ENABLE_ION=0 + AC_DEFINE(JS_CPU_SPARC) +- AC_DEFINE(JS_NUNBOX32) +- else +- AC_DEFINE(JS_CPU_SPARC64) +- AC_DEFINE(JS_PUNBOX64) +- fi +- ;; +-powerpc64-*) +- AC_DEFINE(JS_CPU_PPC64) +- AC_DEFINE(JS_PUNBOX64) +- ;; +-powerpc-*) +- AC_DEFINE(JS_CPU_PPC) +- AC_DEFINE(JS_NUNBOX32) + ;; + mips*-*) + AC_DEFINE(JS_CPU_MIPS) +- AC_DEFINE(JS_NUNBOX32) ++ ;; ++esac ++ ++case "$target" in ++mips*-*) ++ AC_DEFINE(JS_NUNBOX32) ++ ;; ++*) ++ if test "$HAVE_64BIT_BUILD" ; then ++ AC_DEFINE(JS_PUNBOX64) ++ else ++ AC_DEFINE(JS_NUNBOX32) ++ fi + ;; + esac +