summaryrefslogtreecommitdiff
path: root/www-client/firefox/files/firefox-69.0-lto-gcc-fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'www-client/firefox/files/firefox-69.0-lto-gcc-fix.patch')
-rw-r--r--www-client/firefox/files/firefox-69.0-lto-gcc-fix.patch26
1 files changed, 26 insertions, 0 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
new file mode 100644
index 000000000000..9fe9673cb08b
--- /dev/null
+++ b/www-client/firefox/files/firefox-69.0-lto-gcc-fix.patch
@@ -0,0 +1,26 @@
+# 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']