1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
--- build/config/compiler/BUILD.gn.orig 2022-01-23 11:59:03 UTC
+++ build/config/compiler/BUILD.gn
@@ -140,7 +140,7 @@ declare_args() {
#
# TODO(crbug.com/1131993): Enabling this when 'is_android' is true breaks
# content_shell_test_apk on both ARM and x86.
- init_stack_vars = !is_android
+ init_stack_vars = !is_android && !is_bsd
# This argument is to control whether enabling text section splitting in the
# final binary. When enabled, the separated text sections with prefix
@@ -357,7 +357,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" &&
current_os != "zos") {
ldflags += [ "-Wl,--fatal-warnings" ]
}
@@ -534,7 +534,7 @@ config("compiler") {
ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
}
- if (is_clang && !is_nacl && current_os != "zos") {
+ if (is_clang && !is_nacl && !is_bsd && current_os != "zos") {
cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
# TODO(hans): Remove this once Clang generates better optimized debug info
@@ -917,7 +917,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" ]
}
@@ -1238,7 +1238,7 @@ config("compiler_deterministic") {
# different build directory like "out/feature_a" and "out/feature_b" if
# we build same files with same compile flag.
# Other paths are already given in relative, no need to normalize them.
- if (is_nacl) {
+ if (is_nacl || is_bsd) {
# TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
cflags += [
"-Xclang",
@@ -1251,7 +1251,7 @@ config("compiler_deterministic") {
# and -fcoverage-compilation-dir=.
cflags += [ "-ffile-compilation-dir=." ]
}
- 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,." ]
}
@@ -1502,7 +1502,7 @@ config("default_warnings") {
"-Wno-unneeded-internal-declaration",
]
- if (!is_nacl || is_nacl_saigo) {
+ if ((!is_nacl || is_nacl_saigo) && !is_bsd) {
if (is_win) {
# TODO(thakis): https://crbug.com/617318
# Currently goma can not handle case sensitiveness for windows well.
@@ -1791,7 +1791,7 @@ config("thin_archive") {
# archives.
# TODO(crbug.com/1221615): Enable on is_apple if use_lld once that no longer
# confuses lldb.
- if ((is_posix && !is_nacl && !is_apple) || is_fuchsia) {
+ if ((is_posix && !is_nacl && !is_apple && !is_bsd) || is_fuchsia) {
arflags = [ "-T" ]
} else if (is_win && use_lld) {
arflags = [ "/llvmlibthin" ]
@@ -2289,7 +2289,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) && current_os != "zos") {
- cflags += [ "-g2" ]
+ cflags += [ "-g0" ]
}
if (!is_nacl && is_clang && !is_tsan && !is_asan &&
@@ -2329,7 +2329,7 @@ config("symbols") {
# sections" there. Maybe just a bug in nacl_switch_32.S.
_enable_gdb_index =
symbol_level == 2 && !is_apple && !is_nacl && current_cpu != "x86" &&
- current_os != "zos" && (use_gold || use_lld) &&
+ current_os != "zos" && (use_gold || use_lld) && !is_bsd &&
# Disable on non-fission 32-bit Android because it pushes
# libcomponents_unittests over the 4gb size limit.
!(is_android && !use_debug_fission && current_cpu != "x64" &&
@@ -2347,7 +2347,7 @@ config("symbols") {
}
if (is_clang && (!is_nacl || is_nacl_saigo) && current_os != "zos") {
- if (is_apple) {
+ if (is_apple || is_bsd) {
# TODO(https://crbug.com/1050118): Investigate missing debug info on mac.
# Make sure we don't use constructor homing on mac.
cflags += [
|