diff options
Diffstat (limited to 'mozilla-fix-top-level-asm.patch')
-rw-r--r-- | mozilla-fix-top-level-asm.patch | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/mozilla-fix-top-level-asm.patch b/mozilla-fix-top-level-asm.patch new file mode 100644 index 000000000000..cb72a15b8447 --- /dev/null +++ b/mozilla-fix-top-level-asm.patch @@ -0,0 +1,66 @@ +From 91bb79836ee274855393bdf6ab10e24899b1b349 Mon Sep 17 00:00:00 2001 +From: Martin Liska <mliska@suse.cz> +Date: Fri, 17 May 2019 14:41:35 +0200 +Subject: [PATCH] Fix top-level asm issue. + +--- + security/sandbox/linux/moz.build | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +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 +@@ -66,32 +66,32 @@ UNIFIED_SOURCES += [ + "../chromium/base/time/time_now_posix.cc", + "../chromium/sandbox/linux/bpf_dsl/bpf_dsl.cc", + "../chromium/sandbox/linux/bpf_dsl/codegen.cc", + "../chromium/sandbox/linux/bpf_dsl/dump_bpf.cc", + "../chromium/sandbox/linux/bpf_dsl/policy.cc", + "../chromium/sandbox/linux/bpf_dsl/policy_compiler.cc", + "../chromium/sandbox/linux/bpf_dsl/syscall_set.cc", + "../chromium/sandbox/linux/seccomp-bpf/die.cc", +- "../chromium/sandbox/linux/seccomp-bpf/syscall.cc", + "broker/SandboxBrokerCommon.cpp", + "Sandbox.cpp", + "SandboxBrokerClient.cpp", + "SandboxFilter.cpp", + "SandboxFilterUtil.cpp", + "SandboxHooks.cpp", + "SandboxInfo.cpp", + "SandboxLogging.cpp", + "SandboxOpenedFiles.cpp", + "SandboxReporterClient.cpp", + ] + + SOURCES += [ + "../chromium/base/strings/safe_sprintf.cc", + "../chromium/base/third_party/icu/icu_utf.cc", ++ "../chromium/sandbox/linux/seccomp-bpf/syscall.cc", + "../chromium/sandbox/linux/seccomp-bpf/trap.cc", + "../chromium/sandbox/linux/services/syscall_wrappers.cc", + ] + + # This copy of SafeSPrintf doesn't need to avoid the Chromium logging + # dependency like the one in libxul does, but this way the behavior is + # consistent. See also the comment in SandboxLogging.h. + SOURCES["../chromium/base/strings/safe_sprintf.cc"].flags += ["-DNDEBUG"] +@@ -105,16 +105,19 @@ if CONFIG["CC_TYPE"] in ("clang", "gcc") + "-Wno-unreachable-code-return" + ] + + if CONFIG["CC_TYPE"] in ("clang", "gcc"): + CXXFLAGS += ["-Wno-shadow", "-Wno-error=stack-protector"] + SOURCES["../chromium/sandbox/linux/services/syscall_wrappers.cc"].flags += [ + "-Wno-empty-body", + ] ++ SOURCES['../chromium/sandbox/linux/seccomp-bpf/syscall.cc'].flags += [ ++ '-fno-lto' ++ ] + + # 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"] + |