From 422c357017ae1c10dd9e7e0eb36d02c68c859d5a Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Jun 12 2017 12:57:56 +0000 Subject: Added fixes for ppc64le, ppc64 and s390x --- diff --git a/build-ppc64-s390x-curl.patch b/build-ppc64-s390x-curl.patch new file mode 100644 index 0000000..c9a39e2 --- /dev/null +++ b/build-ppc64-s390x-curl.patch @@ -0,0 +1,13 @@ +diff -up firefox-54.0/toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h.ppc-curl firefox-54.0/toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h +--- firefox-54.0/toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h.ppc-curl 2017-06-09 23:31:15.186207877 +0200 ++++ firefox-54.0/toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h 2017-06-10 00:21:26.731117206 +0200 +@@ -155,7 +155,8 @@ + + /* The size of `long', as computed by sizeof. */ + #if defined(_M_X64) || (defined(__x86_64__) && !defined(__ILP32__)) || \ +- defined(__aarch64__) || (defined(__mips__) && _MIPS_SIM == _ABI64) ++ defined(__aarch64__) || (defined(__mips__) && _MIPS_SIM == _ABI64) || \ ++ defined(__PPC64__) || defined(__pcc64le__) || defined(__S390X__) + #define CURL_SIZEOF_LONG 8 + #else + #define CURL_SIZEOF_LONG 4 diff --git a/build-rust-ppc64le.patch b/build-rust-ppc64le.patch new file mode 100644 index 0000000..cf7f698 --- /dev/null +++ b/build-rust-ppc64le.patch @@ -0,0 +1,30 @@ +diff -up firefox-54.0/build/mozconfig.rust firefox-54.0/build/mozconfig +diff -up firefox-54.0/build/moz.configure/rust.configure.rust firefox-54.0/build/moz.configure/rust.configure +--- firefox-54.0/build/moz.configure/rust.configure.rust 2017-06-09 22:29:36.273878229 +0200 ++++ firefox-54.0/build/moz.configure/rust.configure 2017-06-09 23:00:49.330699698 +0200 +@@ -151,6 +150,9 @@ def rust_triple_alias(host_or_target): + ('sparc64', 'Linux'): 'sparc64-unknown-linux-gnu', + ('x86', 'Linux'): 'i686-unknown-linux-gnu', + ('x86_64', 'Linux'): 'x86_64-unknown-linux-gnu', ++ ('ppc64le', 'Linux'): 'powerpc64le-unknown-linux-gnu', ++ ('ppc64', 'Linux'): 'powerpc64-unknown-linux-gnu', ++ ('s390x', 'Linux'): 's390x-unknown-linux-gnu', + # OS X + ('x86', 'OSX'): 'i686-apple-darwin', + ('x86_64', 'OSX'): 'x86_64-apple-darwin', +@@ -170,8 +172,10 @@ def rust_triple_alias(host_or_target): + ('x86_64', 'WINNT'): 'x86_64-pc-windows-msvc', + }.get((host_or_target.cpu, os_or_kernel), None) + ++ if (rustc_target == 'powerpc64-unknown-linux-gnu' and host_or_target.endianness == 'little'): ++ rustc_target = 'powerpc64le-unknown-linux-gnu' + if rustc_target is None: +- die("Don't know how to translate {} for rustc".format(host_or_target.alias)) ++ die("Don't know how to translate {} for rustc, cpu: {}, os: {}".format(target.alias, target.cpu, os_or_kernel)) + + # Check to see whether our rustc has a reasonably functional stdlib + # for our chosen target. +diff -up firefox-54.0/third_party/rust/aho-corasick/ctags.rust firefox-54.0/third_party/rust/aho-corasick/ctags +diff -up firefox-54.0/third_party/rust/memchr/ctags.rust firefox-54.0/third_party/rust/memchr/ctags +diff -up firefox-54.0/third_party/rust/utf8-ranges/ctags.rust firefox-54.0/third_party/rust/utf8-ranges/ctags +diff -up firefox-54.0/third_party/rust/walkdir/ctags.rust firefox-54.0/third_party/rust/walkdir/ctags diff --git a/firefox.spec b/firefox.spec index e7194ec..f6ca965 100644 --- a/firefox.spec +++ b/firefox.spec @@ -125,6 +125,8 @@ Patch27: mozilla-1335250.patch Patch28: build-1360521-missing-cheddar.patch Patch29: build-big-endian.patch Patch30: fedora-build.patch +Patch31: build-ppc64-s390x-curl.patch +Patch32: build-rust-ppc64le.patch # Fedora specific patches # Unable to install addons from https pages @@ -137,7 +139,6 @@ Patch225: mozilla-1005640-accept-lang.patch #ARM run-time patch Patch226: rhbz-1354671.patch Patch229: firefox-nss-version.patch -Patch230: mozilla-rust-config.patch # Upstream patches Patch304: mozilla-1253216.patch @@ -299,6 +300,8 @@ This package contains results of tests executed during build. #%patch28 -p2 -b .1360521-missing-cheddar %patch29 -p1 -b .big-endian %patch30 -p1 -b .fedora-build +%patch31 -p1 -b .ppc64-s390x-curl +%patch32 -p1 -b .rust-ppc64le %patch3 -p1 -b .arm @@ -315,7 +318,6 @@ This package contains results of tests executed during build. %ifarch aarch64 %patch226 -p1 -b .1354671 %endif -%patch230 -p1 -b .rust %patch304 -p1 -b .1253216 %patch402 -p1 -b .1196777 diff --git a/mozilla-rust-config.patch b/mozilla-rust-config.patch deleted file mode 100644 index b4d59af..0000000 --- a/mozilla-rust-config.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -up firefox-53.0.2/build/moz.configure/rust.configure.powerpc-rust firefox-53.0.2/build/moz.configure/rust.configure ---- firefox-53.0.2/build/moz.configure/rust.configure.powerpc-rust 2017-05-25 13:07:00.041331688 +0200 -+++ firefox-53.0.2/build/moz.configure/rust.configure 2017-05-25 13:59:49.692189995 +0200 -@@ -131,6 +131,9 @@ def rust_triple_alias(host_or_target): - ('sparc64', 'Linux'): 'sparc64-unknown-linux-gnu', - ('x86', 'Linux'): 'i686-unknown-linux-gnu', - ('x86_64', 'Linux'): 'x86_64-unknown-linux-gnu', -+ ('ppc64le', 'Linux'): 'powerpc64le-unknown-linux-gnu', -+ ('ppc64', 'Linux'): 'powerpc64-unknown-linux-gnu', -+ ('s390x', 'Linux'): 's390x-unknown-linux-gnu', - # OS X - ('x86', 'OSX'): 'i686-apple-darwin', - ('x86_64', 'OSX'): 'x86_64-apple-darwin', -@@ -151,7 +154,7 @@ def rust_triple_alias(host_or_target): - }.get((host_or_target.cpu, os_or_kernel), None) - - if rustc_target is None: -- die("Don't know how to translate {} for rustc".format(host_or_target.alias)) -+ die("Don't know how to translate {} for rustc, cpu: {}, os: {}".format(target.alias, target.cpu, os_or_kernel)) - - # Check to see whether our rustc has a reasonably functional stdlib - # for our chosen target.