summaryrefslogtreecommitdiff
path: root/devel/electron13/files/patch-build_config_compiler_BUILD.gn
diff options
context:
space:
mode:
Diffstat (limited to 'devel/electron13/files/patch-build_config_compiler_BUILD.gn')
-rw-r--r--devel/electron13/files/patch-build_config_compiler_BUILD.gn134
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.