summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJory Pratt <anarchy@gentoo.org>2020-02-14 07:09:14 -0600
committerJory Pratt <anarchy@gentoo.org>2020-02-14 07:09:29 -0600
commit2f2ceab0a79e973d3e1e70dc4cf201bd09c5154b (patch)
tree318c9062a7226bbc8fdc3faac25342b1b13c8006 /www-client/firefox
parentmedia-fonts/zh-kcfonts: Add missing FONT_S assignment. (diff)
downloadgentoo-2f2ceab0a79e973d3e1e70dc4cf201bd09c5154b.tar.gz
gentoo-2f2ceab0a79e973d3e1e70dc4cf201bd09c5154b.tar.bz2
gentoo-2f2ceab0a79e973d3e1e70dc4cf201bd09c5154b.zip
www-client/firefox: Fix pgo/lto builds
Closes: https://bugs.gentoo.org/709440 Closes: https://bugs.gentoo.org/706772 Closes: https://bugs.gentoo.org/709594 Package-Manager: Portage-2.3.88, Repoman-2.3.20 Signed-off-by: Jory Pratt <anarchy@gentoo.org>
Diffstat (limited to 'www-client/firefox')
-rw-r--r--www-client/firefox/files/firefox-69.0-lto-gcc-fix.patch26
-rw-r--r--www-client/firefox/files/firefox-73.0_fix_lto_pgo_builds.patch51
-rw-r--r--www-client/firefox/firefox-73.0.ebuild2
3 files changed, 53 insertions, 26 deletions
diff --git a/www-client/firefox/files/firefox-69.0-lto-gcc-fix.patch b/www-client/firefox/files/firefox-69.0-lto-gcc-fix.patch
deleted file mode 100644
index 9fe9673cb08b..000000000000
--- a/www-client/firefox/files/firefox-69.0-lto-gcc-fix.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-# HG changeset patch
-# Parent 79ae951dc72ba16a2451c4cde7298aa986376b0c
-Fix lto builds of sandbox on linux
-
-diff --git a/security/sandbox/linux/moz.build b/security/sandbox/linux/moz.build
---- a/security/sandbox/linux/moz.build
-+++ b/security/sandbox/linux/moz.build
-@@ -95,17 +95,17 @@ if CONFIG['CC_TYPE'] in ('clang', 'gcc')
- CXXFLAGS += ['-Wno-shadow']
- SOURCES['../chromium/sandbox/linux/services/syscall_wrappers.cc'].flags += [
- '-Wno-empty-body',
- ]
-
- # gcc lto likes to put the top level asm in syscall.cc in a different partition
- # from the function using it which breaks the build. Work around that by
- # forcing there to be only one partition.
--for f in CONFIG['OS_CXXFLAGS']:
-+for f in CONFIG['MOZ_LTO_CFLAGS']:
- if f.startswith('-flto') and CONFIG['CC_TYPE'] != 'clang':
- LDFLAGS += ['--param', 'lto-partitions=1']
-
- DEFINES['NS_NO_XPCOM'] = True
- DisableStlWrapping()
-
- LOCAL_INCLUDES += ['/security/sandbox/linux']
- LOCAL_INCLUDES += ['/security/sandbox/chromium-shim']
diff --git a/www-client/firefox/files/firefox-73.0_fix_lto_pgo_builds.patch b/www-client/firefox/files/firefox-73.0_fix_lto_pgo_builds.patch
new file mode 100644
index 000000000000..5e2420c60c41
--- /dev/null
+++ b/www-client/firefox/files/firefox-73.0_fix_lto_pgo_builds.patch
@@ -0,0 +1,51 @@
+From c193eba68325c07bbf13eb3995842545b7d23695 Mon Sep 17 00:00:00 2001
+From:
+Date: Thu, 13 Feb 2020 20:29:09 -0600
+Subject: [PATCH] Fix pgo/lto builds
+
+---
+ build/moz.configure/lto-pgo.configure | 4 ++--
+ security/sandbox/linux/moz.build | 5 ++---
+ 2 files changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/build/moz.configure/lto-pgo.configure b/build/moz.configure/lto-pgo.configure
+index 394c1d8911..1f26a6e565 100644
+--- a/build/moz.configure/lto-pgo.configure
++++ b/build/moz.configure/lto-pgo.configure
+@@ -70,7 +70,7 @@ set_config('PGO_PROFILE_PATH', pgo_profile_path)
+ def pgo_flags(compiler, target, profdata):
+ if compiler.type == 'gcc':
+ return namespace(
+- gen_cflags=['-fprofile-generate'],
++ gen_cflags=['-fprofile-generate', '-DMOZ_PROFILE_INSTRUMENTATION'],
+ gen_ldflags=['-fprofile-generate'],
+ use_cflags=['-fprofile-use', '-fprofile-correction',
+ '-Wcoverage-mismatch'],
+@@ -91,7 +91,7 @@ def pgo_flags(compiler, target, profdata):
+ gen_ldflags = ['-fprofile-generate']
+
+ return namespace(
+- gen_cflags=[prefix + '-fprofile-generate'],
++ gen_cflags=[prefix + '-fprofile-generate', '-DMOZ_PROFILE_INSTRUMENTATION'],
+ gen_ldflags=gen_ldflags,
+ use_cflags=[prefix + '-fprofile-use=%s' % profdata,
+ # Some error messages about mismatched profile data
+diff --git a/security/sandbox/linux/moz.build b/security/sandbox/linux/moz.build
+index aae85843e9..e300260fa0 100644
+--- a/security/sandbox/linux/moz.build
++++ b/security/sandbox/linux/moz.build
+@@ -100,9 +100,8 @@ if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
+ # gcc lto likes to put the top level asm in syscall.cc in a different partition
+ # from the function using it which breaks the build. Work around that by
+ # forcing there to be only one partition.
+-for f in CONFIG['OS_CXXFLAGS']:
+- if f.startswith('-flto') and CONFIG['CC_TYPE'] != 'clang':
+- LDFLAGS += ['--param', 'lto-partitions=1']
++if CONFIG['CC_TYPE'] != 'clang':
++ LDFLAGS += ['--param', 'lto-partitions=1']
+
+ DEFINES['NS_NO_XPCOM'] = True
+ DisableStlWrapping()
+--
+2.25.0
+
diff --git a/www-client/firefox/firefox-73.0.ebuild b/www-client/firefox/firefox-73.0.ebuild
index a2025c36124b..c4fb0b23ad16 100644
--- a/www-client/firefox/firefox-73.0.ebuild
+++ b/www-client/firefox/firefox-73.0.ebuild
@@ -257,6 +257,8 @@ src_prepare() {
use !wayland && rm -f "${WORKDIR}/firefox/2019_mozilla-bug1539471.patch"
eapply "${WORKDIR}/firefox"
+ eapply "${FILESDIR}/${PN}-73.0_fix_lto_pgo_builds.patch"
+
# Allow user to apply any additional patches without modifing ebuild
eapply_user