diff options
Diffstat (limited to 'devel/electron13/files/patch-build_config_compiler_BUILD.gn')
-rw-r--r-- | devel/electron13/files/patch-build_config_compiler_BUILD.gn | 134 |
1 files changed, 134 insertions, 0 deletions
diff --git a/devel/electron13/files/patch-build_config_compiler_BUILD.gn b/devel/electron13/files/patch-build_config_compiler_BUILD.gn new file mode 100644 index 000000000000..88dda2bc5574 --- /dev/null +++ b/devel/electron13/files/patch-build_config_compiler_BUILD.gn @@ -0,0 +1,134 @@ +--- build/config/compiler/BUILD.gn.orig 2021-07-15 19:13:30 UTC ++++ build/config/compiler/BUILD.gn +@@ -133,7 +133,7 @@ declare_args() { + # + # TODO(crbug.com/977230): Enabling this when 'use_xcode_clang' is true may + # call an old clang that doesn't support auto-init. +- init_stack_vars = !is_android && !use_xcode_clang ++ init_stack_vars = !is_android && !use_xcode_clang && !is_bsd + + # This argument is to control whether enabling text section splitting in the + # final binary. When enabled, the separated text sections with prefix +@@ -333,7 +333,7 @@ config("compiler") { + } + + # Linker warnings. +- if (fatal_linker_warnings && !is_apple && current_os != "aix") { ++ if (fatal_linker_warnings && !is_apple && !is_bsd && current_os != "aix") { + ldflags += [ "-Wl,--fatal-warnings" ] + } + if (fatal_linker_warnings && is_apple) { +@@ -428,7 +428,7 @@ config("compiler") { + + # Compiler instrumentation can introduce dependencies in DSOs to symbols in + # the executable they are loaded into, so they are unresolved at link-time. +- if (!using_sanitizer) { ++ if (!using_sanitizer && !is_bsd) { + ldflags += [ + "-Wl,-z,defs", + "-Wl,--as-needed", +@@ -518,7 +518,7 @@ config("compiler") { + ldflags += [ "-Wl,-z,keep-text-section-prefix" ] + } + +- if (is_clang && !is_nacl && !use_xcode_clang) { ++ if (is_clang && !is_nacl && !use_xcode_clang && !is_bsd) { + cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ] + + # TODO(hans): Remove this once Clang generates better optimized debug info +@@ -661,7 +661,12 @@ config("compiler") { + # and let it use all cores. + # TODO(thakis): Check if '=0' (that is, number of cores, instead + # of "all" which means number of hardware threads) is faster. +- ldflags += [ "-Wl,--thinlto-jobs=all" ] ++ if (is_bsd) { ++ # FreeBSD < 13 uses LLVM 10, which doesn't support --thinlto-jobs=all ++ ldflags += [ "-Wl,--thinlto-jobs=2" ] ++ } else { ++ ldflags += [ "-Wl,--thinlto-jobs=all" ] ++ } + + ldflags += [ + "-Wl,--thinlto-cache-dir=" + +@@ -851,7 +856,7 @@ config("compiler_cpu_abi") { + cflags += [ "-mtune=$arm_tune" ] + } + } else if (current_cpu == "arm64") { +- if (is_clang && !is_android && !is_nacl && !is_fuchsia) { ++ if (is_clang && !is_android && !is_nacl && !is_fuchsia && !is_bsd) { + cflags += [ "--target=aarch64-linux-gnu" ] + ldflags += [ "--target=aarch64-linux-gnu" ] + } +@@ -1201,7 +1206,7 @@ config("compiler_deterministic") { + "-Xclang", + ".", + ] +- if (!is_win) { ++ if (!is_win && !is_bsd) { + # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167) + asmflags = [ "-Wa,-fdebug-compilation-dir,." ] + } +@@ -1584,7 +1589,7 @@ config("default_warnings") { + cflags += [ "-Wno-nonportable-include-path" ] + } + +- if (current_toolchain == host_toolchain || !use_xcode_clang) { ++ if ((current_toolchain == host_toolchain || !use_xcode_clang) && !is_bsd) { + # Flags NaCl (Clang 3.7) and Xcode 9.2 (Clang clang-900.0.39.2) do not + # recognize. + cflags += [ +@@ -1625,6 +1630,18 @@ config("default_warnings") { + cflags += [ "-Wno-max-tokens" ] + } + } ++ ++ if (is_clang && is_bsd) { ++ cflags += [ ++ "-Wno-ignored-pragma-optimize", ++ "-Wno-implicit-int-float-conversion", ++ "-Wno-final-dtor-non-final-class", ++ "-Wno-builtin-assume-aligned-alignment", ++ "-Wno-deprecated-copy", ++ "-Wno-thread-safety-analysis", ++ "-Wno-thread-safety-attributes", ++ ] ++ } + } + } + } +@@ -1754,7 +1771,7 @@ config("no_chromium_code") { + # suppressing them individually, we just blanket suppress them here. + "-Wno-unused-variable", + ] +- if (!is_nacl && (current_toolchain == host_toolchain || !use_xcode_clang)) { ++ if (!is_nacl && (current_toolchain == host_toolchain || !use_xcode_clang) && !is_bsd) { + cflags += [ + # TODO(https://crbug.com/1031169): Clean up and enable. + "-Wno-misleading-indentation", +@@ -1832,7 +1849,7 @@ config("export_dynamic") { + config("thin_archive") { + # The macOS and iOS default linker ld64 does not support reading thin + # archives. +- if ((is_posix && !is_nacl && (!is_apple || use_lld)) || is_fuchsia) { ++ if ((is_posix && !is_nacl && (!is_apple || use_lld) && !is_bsd) || is_fuchsia) { + arflags = [ "-T" ] + } else if (is_win && use_lld) { + arflags = [ "/llvmlibthin" ] +@@ -2373,7 +2390,7 @@ config("symbols") { + # flag, so we can use use -g1 for pnacl and nacl-clang compiles. + # gcc nacl is is_nacl && !is_clang, pnacl and nacl-clang are && is_clang. + if (!is_nacl || is_clang) { +- cflags += [ "-g2" ] ++ cflags += [ "-g0" ] + } + + # TODO(https://crbug.com/1050118): Investigate missing debug info on mac. +@@ -2406,7 +2423,7 @@ config("symbols") { + # DWARF info may be corrupt; offsets in a range list entry are in different + # sections" there. Maybe just a bug in nacl_switch_32.S. + if (!is_apple && !is_nacl && current_cpu != "x86" && +- (use_gold || use_lld)) { ++ (use_gold || use_lld) && !is_bsd) { + if (is_clang) { + # This flag enables the GNU-format pubnames and pubtypes sections, + # which lld needs in order to generate a correct GDB index. |