From b41c541c5b36642f44d01d761d2607ef0ec34ee5 Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Tue, 29 Aug 2017 10:39:08 +0200 Subject: [PATCH 1/7] Added google api key for safebrowsing, fixing failing builds on latest fedoras --- build-missing-xlocale-h.patch | 12 ++++++++++++ firefox-mozconfig | 1 + firefox.spec | 8 +++++++- google-api-key | 1 + 4 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 build-missing-xlocale-h.patch create mode 100644 google-api-key diff --git a/build-missing-xlocale-h.patch b/build-missing-xlocale-h.patch new file mode 100644 index 0000000..b4a62b2 --- /dev/null +++ b/build-missing-xlocale-h.patch @@ -0,0 +1,12 @@ +diff -up thunderbird-52.3.0/mozilla/intl/icu/source/i18n/digitlst.cpp.xlocale thunderbird-52.3.0/mozilla/intl/icu/source/i18n/digitlst.cpp +--- thunderbird-52.3.0/mozilla/intl/icu/source/i18n/digitlst.cpp.xlocale 2017-08-24 14:42:48.634084293 +0200 ++++ thunderbird-52.3.0/mozilla/intl/icu/source/i18n/digitlst.cpp 2017-08-24 14:42:50.534084676 +0200 +@@ -64,7 +64,7 @@ + # if U_PLATFORM_USES_ONLY_WIN32_API || U_PLATFORM == U_PF_CYGWIN + # include + # else +-# include ++# include + # endif + #endif + diff --git a/firefox-mozconfig b/firefox-mozconfig index 9182fb2..b47ca41 100644 --- a/firefox-mozconfig +++ b/firefox-mozconfig @@ -19,6 +19,7 @@ ac_add_options --enable-chrome-format=omni ac_add_options --enable-pulseaudio ac_add_options --with-system-icu ac_add_options --with-mozilla-api-keyfile=../mozilla-api-key +ac_add_options --with-google-api-keyfile=../google-api-key ac_add_options --enable-release ac_add_options --enable-pie diff --git a/firefox.spec b/firefox.spec index 1ea8a09..65d95ea 100644 --- a/firefox.spec +++ b/firefox.spec @@ -27,7 +27,7 @@ # Use system libicu? %if 0%{?fedora} > 27 -%define system_libicu 1 +%define system_libicu 0 %else %define system_libicu 0 %endif @@ -90,9 +90,11 @@ %define enable_mozilla_crashreporter 0 %if !%{debug_build} %ifarch %{ix86} x86_64 +%if 0%{?fedora} < 27 %define enable_mozilla_crashreporter 1 %endif %endif +%endif Summary: Mozilla Firefox Web browser Name: firefox @@ -113,6 +115,7 @@ Source23: firefox.1 Source24: mozilla-api-key Source25: firefox-symbolic.svg Source26: distribution.ini +Source27: google-api-key # Build patches Patch0: firefox-install-dir.patch @@ -133,6 +136,7 @@ Patch32: build-rust-ppc64le.patch Patch33: build-ppc-s390-dom.patch Patch34: build-cubeb-pulse-arm.patch Patch35: build-ppc-jit.patch +Patch36: build-missing-xlocale-h.patch # Fedora specific patches # Unable to install addons from https pages @@ -346,6 +350,7 @@ This package contains results of tests executed during build. # Patch for big endian platforms only %if 0%{?big_endian} %patch26 -p1 -b .icu +%patch37 -p2 -b .xlocale %endif %{__rm} -f .mozconfig @@ -354,6 +359,7 @@ This package contains results of tests executed during build. echo "ac_add_options --enable-official-branding" >> .mozconfig %endif %{__cp} %{SOURCE24} mozilla-api-key +%{__cp} %{SOURCE27} google-api-key %if %{?system_nss} echo "ac_add_options --with-system-nspr" >> .mozconfig diff --git a/google-api-key b/google-api-key new file mode 100644 index 0000000..06b67f6 --- /dev/null +++ b/google-api-key @@ -0,0 +1 @@ + AIzaSyAUhOVZlk5GiSm5a5_x9vQYkM5oCPUK6tY From 33ac49112b8e39be680d99561b08a0427f4452e2 Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Tue, 29 Aug 2017 10:47:41 +0200 Subject: [PATCH 2/7] Fixing patch number --- firefox.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/firefox.spec b/firefox.spec index 63dda14..8cda5b5 100644 --- a/firefox.spec +++ b/firefox.spec @@ -350,7 +350,7 @@ This package contains results of tests executed during build. # Patch for big endian platforms only %if 0%{?big_endian} %patch26 -p1 -b .icu -%patch37 -p2 -b .xlocale +%patch36 -p2 -b .xlocale %endif %{__rm} -f .mozconfig From 49bb7a96a20d6817b64e87424d5a10e5945e47ea Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Tue, 29 Aug 2017 13:01:25 +0200 Subject: [PATCH 3/7] Trying to fix jit build on s390x - by using atomic lucky --- build-jit-atomic-always-lucky.patch | 12 ++++++++++++ firefox.spec | 12 ++++++++---- mozilla-1253216.patch | 12 ------------ 3 files changed, 20 insertions(+), 16 deletions(-) create mode 100644 build-jit-atomic-always-lucky.patch delete mode 100644 mozilla-1253216.patch diff --git a/build-jit-atomic-always-lucky.patch b/build-jit-atomic-always-lucky.patch new file mode 100644 index 0000000..ad8af85 --- /dev/null +++ b/build-jit-atomic-always-lucky.patch @@ -0,0 +1,12 @@ +diff -up firefox-55.0.2/js/src/jit/AtomicOperations.h.jit-atomic-lucky firefox-55.0.2/js/src/jit/AtomicOperations.h +--- firefox-55.0.2/js/src/jit/AtomicOperations.h.jit-atomic-lucky 2017-07-31 18:20:47.000000000 +0200 ++++ firefox-55.0.2/js/src/jit/AtomicOperations.h 2017-08-29 11:53:27.790497321 +0200 +@@ -348,7 +348,7 @@ AtomicOperations::isLockfree(int32_t siz + # elif defined(__sh__) + # include "jit/none/AtomicOperations-feeling-lucky.h" + # else +-# include "jit/none/AtomicOperations-none.h" // These MOZ_CRASH() always ++# include "jit/none/AtomicOperations-feeling-lucky.h" + # endif + #elif defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64) + # include "jit/x86-shared/AtomicOperations-x86-shared.h" diff --git a/firefox.spec b/firefox.spec index 8cda5b5..1c945a8 100644 --- a/firefox.spec +++ b/firefox.spec @@ -67,11 +67,11 @@ %global nspr_version 4.10.10 # NSS/NSPR quite often ends in build override, so as requirement the version # we're building against could bring us some broken dependencies from time to time. -%global nspr_build_version %{nspr_version} #%global nspr_build_version %(pkg-config --silence-errors --modversion nspr 2>/dev/null || echo 65536) +%global nspr_build_version %{nspr_version} %global nss_version 3.29.3 -%global nss_build_version %{nss_version} #%global nss_build_version %(pkg-config --silence-errors --modversion nss 2>/dev/null || echo 65536) +%global nss_build_version %{nss_version} %endif %if %{?system_sqlite} @@ -137,6 +137,9 @@ Patch33: build-ppc-s390-dom.patch Patch34: build-cubeb-pulse-arm.patch Patch35: build-ppc-jit.patch Patch36: build-missing-xlocale-h.patch +# Always feel lucky for unsupported platforms: +# https://bugzilla.mozilla.org/show_bug.cgi?id=1347128 +Patch37: build-jit-atomic-always-lucky.patch # Fedora specific patches # Unable to install addons from https pages @@ -151,7 +154,6 @@ Patch226: rhbz-1354671.patch Patch229: firefox-nss-version.patch # Upstream patches -Patch304: mozilla-1253216.patch Patch402: mozilla-1196777.patch Patch406: mozilla-256180.patch Patch407: mozilla-1348576.patch @@ -207,6 +209,7 @@ BuildRequires: pkgconfig(gconf-2.0) BuildRequires: yasm Requires: mozilla-filesystem +Requires: p11-kit-trust %if %{?system_nss} Requires: nspr >= %{nspr_build_version} Requires: nss >= %{nss_build_version} @@ -316,6 +319,7 @@ This package contains results of tests executed during build. %ifarch ppc ppc64 ppc64le %patch35 -p1 -b .ppc-jit %endif +%patch37 -p1 -b .jit-atomic-lucky %patch3 -p1 -b .arm @@ -333,7 +337,6 @@ This package contains results of tests executed during build. %patch226 -p1 -b .1354671 %endif -%patch304 -p1 -b .1253216 %patch402 -p1 -b .1196777 %patch406 -p1 -b .256180 %ifarch %{arm} @@ -854,6 +857,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{mozappdir}/libfreeblpriv3.chk %{mozappdir}/libnssdbm3.chk %{mozappdir}/libsoftokn3.chk +%exclude %{mozappdir}/libnssckbi.so %endif #--------------------------------------------------------------------- diff --git a/mozilla-1253216.patch b/mozilla-1253216.patch deleted file mode 100644 index b6878be..0000000 --- a/mozilla-1253216.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up firefox-55.0/js/src/jit/AtomicOperations.h.1253216 firefox-55.0/js/src/jit/AtomicOperations.h ---- firefox-55.0/js/src/jit/AtomicOperations.h.1253216 2017-08-02 11:00:24.115991657 +0200 -+++ firefox-55.0/js/src/jit/AtomicOperations.h 2017-08-02 11:01:17.373817096 +0200 -@@ -348,7 +348,7 @@ AtomicOperations::isLockfree(int32_t siz - # elif defined(__sh__) - # include "jit/none/AtomicOperations-feeling-lucky.h" - # else --# include "jit/none/AtomicOperations-none.h" // These MOZ_CRASH() always -+# include "jit/none/AtomicOperations-ppc.h" - # endif - #elif defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64) - # include "jit/x86-shared/AtomicOperations-x86-shared.h" From 5bd5ea4597297a40785f39801d177a18748bf929 Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Tue, 29 Aug 2017 14:14:06 +0200 Subject: [PATCH 4/7] Fixing s390 jit patch --- build-jit-atomic-always-lucky.patch | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/build-jit-atomic-always-lucky.patch b/build-jit-atomic-always-lucky.patch index ad8af85..d6812b6 100644 --- a/build-jit-atomic-always-lucky.patch +++ b/build-jit-atomic-always-lucky.patch @@ -1,6 +1,6 @@ diff -up firefox-55.0.2/js/src/jit/AtomicOperations.h.jit-atomic-lucky firefox-55.0.2/js/src/jit/AtomicOperations.h --- firefox-55.0.2/js/src/jit/AtomicOperations.h.jit-atomic-lucky 2017-07-31 18:20:47.000000000 +0200 -+++ firefox-55.0.2/js/src/jit/AtomicOperations.h 2017-08-29 11:53:27.790497321 +0200 ++++ firefox-55.0.2/js/src/jit/AtomicOperations.h 2017-08-29 12:59:52.870926044 +0200 @@ -348,7 +348,7 @@ AtomicOperations::isLockfree(int32_t siz # elif defined(__sh__) # include "jit/none/AtomicOperations-feeling-lucky.h" @@ -10,3 +10,21 @@ diff -up firefox-55.0.2/js/src/jit/AtomicOperations.h.jit-atomic-lucky firefox-5 # endif #elif defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64) # include "jit/x86-shared/AtomicOperations-x86-shared.h" +diff -up firefox-55.0.2/js/src/jit/none/AtomicOperations-feeling-lucky.h.jit-atomic-lucky firefox-55.0.2/js/src/jit/none/AtomicOperations-feeling-lucky.h +--- firefox-55.0.2/js/src/jit/none/AtomicOperations-feeling-lucky.h.jit-atomic-lucky 2017-08-29 14:10:52.665031524 +0200 ++++ firefox-55.0.2/js/src/jit/none/AtomicOperations-feeling-lucky.h 2017-08-29 14:09:40.756060235 +0200 +@@ -60,6 +60,14 @@ + # define GNUC_COMPATIBLE + #endif + ++#ifdef __s390__ ++# define GNUC_COMPATIBLE ++#endif ++ ++#ifdef __s390x__ ++# define GNUC_COMPATIBLE ++#endif ++ + // The default implementation tactic for gcc/clang is to use the newer + // __atomic intrinsics added for use in C++11 . Where that + // isn't available, we use GCC's older __sync functions instead. From d372022a2ca67d03e927ed6dec19687ee8242448 Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Tue, 29 Aug 2017 15:54:56 +0200 Subject: [PATCH 5/7] Disable ion for s390(x) --- firefox.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/firefox.spec b/firefox.spec index 1c945a8..8395f36 100644 --- a/firefox.spec +++ b/firefox.spec @@ -462,6 +462,10 @@ echo "ac_add_options --with-system-icu" >> .mozconfig %else echo "ac_add_options --without-system-icu" >> .mozconfig %endif +%ifarch s390 s390x +echo "ac_add_options --disable-ion" >> .mozconfig +%endif + #--------------------------------------------------------------------- From 21c952db846679bddba57d242300911aa53c296a Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Thu, 31 Aug 2017 16:09:22 +0200 Subject: [PATCH 6/7] Update google api key --- google-api-key | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/google-api-key b/google-api-key index 06b67f6..b95d189 100644 --- a/google-api-key +++ b/google-api-key @@ -1 +1 @@ - AIzaSyAUhOVZlk5GiSm5a5_x9vQYkM5oCPUK6tY +AIzaSyBPGXa4AYD4FC3HJK7LnIKxm4fDusVuuco From b83dccde558e21f4d051361ff83c0b695ec2b2dc Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Fri, 1 Sep 2017 08:55:39 +0200 Subject: [PATCH 7/7] Update to 55.0.3 --- .gitignore | 2 ++ firefox.spec | 9 ++++++--- sources | 4 ++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 4b9eaf5..40551fe 100644 --- a/.gitignore +++ b/.gitignore @@ -244,3 +244,5 @@ firefox-3.6.4.source.tar.bz2 /firefox-langpacks-55.0.1-20170814.tar.xz /firefox-55.0.2.source.tar.xz /firefox-langpacks-55.0.2-20170818.tar.xz +/firefox-55.0.3.source.tar.xz +/firefox-langpacks-55.0.3-20170901.tar.xz diff --git a/firefox.spec b/firefox.spec index 8395f36..db73936 100644 --- a/firefox.spec +++ b/firefox.spec @@ -98,14 +98,14 @@ Summary: Mozilla Firefox Web browser Name: firefox -Version: 55.0.2 -Release: 3%{?pre_tag}%{?dist} +Version: 55.0.3 +Release: 1%{?pre_tag}%{?dist} URL: https://www.mozilla.org/firefox/ License: MPLv1.1 or GPLv2+ or LGPLv2+ Group: Applications/Internet Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz %if %{build_langpacks} -Source1: firefox-langpacks-%{version}%{?pre_version}-20170818.tar.xz +Source1: firefox-langpacks-%{version}%{?pre_version}-20170901.tar.xz %endif Source10: firefox-mozconfig Source12: firefox-redhat-default-prefs.js @@ -867,6 +867,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #--------------------------------------------------------------------- %changelog +* Fri Sep 1 2017 Jan Horak - 55.0.3-1 +- Update to 55.0.3 + * Thu Aug 24 2017 Martin Stransky - 55.0.2-3 - Enable to build with nspr-4.16. diff --git a/sources b/sources index af64dea..ea922ba 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (firefox-55.0.2.source.tar.xz) = a27722cb5840aac89752fea0880a7e093e84b50dc78a36dc8c4bd493ffda10fa61446007f680bfe65db7a0debe4c21e6f0bf9f0de9876bba067abdda6fed7be4 -SHA512 (firefox-langpacks-55.0.2-20170818.tar.xz) = f7fdc775f83cb0d4ee2a20bd6d9f138c8007b0139a24e55210266804271660cc67ab458b2da674f9f0347e1a078250986074dc9ec71b3d47439743aca23d2965 +SHA512 (firefox-55.0.3.source.tar.xz) = 3cacc87b97871f3a8c5e97c17ef7025079cb5c81f32377d9402cdad45815ac6c4c4762c79187f1e477910161c2377c42d41de62a50b6741d5d7c1cd70e8c6416 +SHA512 (firefox-langpacks-55.0.3-20170901.tar.xz) = 582f104e20be5831bc9a3862910a321f8868c26331c3ed01405e484da7909f3e8ff1f491702c48aafd9bc1d2a2fc6cbb15eb6fa94d083076896b8342b14a3466