Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(19)

Side by Side Diff: build/config/compiler/BUILD.gn

Issue 138273007: Convert GN single-item list concat to use lists. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « build/config/clang/BUILD.gn ('k') | build/config/win/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import("//build/config/android/config.gni") 5 import("//build/config/android/config.gni")
6 import("//build/config/sysroot.gni") 6 import("//build/config/sysroot.gni")
7 if (cpu_arch == "arm") { 7 if (cpu_arch == "arm") {
8 import("//build/config/arm.gni") 8 import("//build/config/arm.gni")
9 } 9 }
10 10
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 "-fvisibility=hidden", 46 "-fvisibility=hidden",
47 ] 47 ]
48 cflags_cc += [ 48 cflags_cc += [
49 "-fno-exceptions", 49 "-fno-exceptions",
50 "-fno-threadsafe-statics", 50 "-fno-threadsafe-statics",
51 "-fvisibility-inlines-hidden", 51 "-fvisibility-inlines-hidden",
52 ] 52 ]
53 53
54 # Stack protection. 54 # Stack protection.
55 if (is_mac) { 55 if (is_mac) {
56 cflags += "-fstack-protector-all" 56 cflags += [ "-fstack-protector-all" ]
57 } else if (is_linux) { 57 } else if (is_linux) {
58 cflags += [ "-fstack-protector", "--param=ssp-buffer-size=4" ] 58 cflags += [ "-fstack-protector", "--param=ssp-buffer-size=4" ]
59 } 59 }
60 } 60 }
61 61
62 # Mac-specific compiler flags setup. 62 # Mac-specific compiler flags setup.
63 # ---------------------------------- 63 # ----------------------------------
64 if (is_mac) { 64 if (is_mac) {
65 # These flags are shared between the C compiler and linker. 65 # These flags are shared between the C compiler and linker.
66 common_mac_flags = [ 66 common_mac_flags = [
67 "-isysroot", sysroot, 67 "-isysroot", sysroot,
68 "-mmacosx-version-min=10.6", 68 "-mmacosx-version-min=10.6",
69 ] 69 ]
70 70
71 # CPU architecture. 71 # CPU architecture.
72 if (cpu_arch == "x64") { 72 if (cpu_arch == "x64") {
73 common_mac_flags += "-arch x86_64" 73 common_mac_flags += [ "-arch x86_64" ]
74 } else if (cpu_arch == "x86") { 74 } else if (cpu_arch == "x86") {
75 common_mac_flags += "-arch i386" 75 common_mac_flags += [ "-arch i386" ]
76 } 76 }
77 77
78 cflags += common_mac_flags + [ 78 cflags += common_mac_flags + [
79 # Without this, the constructors and destructors of a C++ object inside 79 # Without this, the constructors and destructors of a C++ object inside
80 # an Objective C struct won't be called, which is very bad. 80 # an Objective C struct won't be called, which is very bad.
81 "-fobjc-call-cxx-cdtors", 81 "-fobjc-call-cxx-cdtors",
82 ] 82 ]
83 83
84 cflags_c += [ "-std=c99" ] 84 cflags_c += [ "-std=c99" ]
85 cflags_cc += [ "-std=gnu++11" ] 85 cflags_cc += [ "-std=gnu++11" ]
86 86
87 ldflags += common_mac_flags + [ 87 ldflags += common_mac_flags + [
88 "-L.", 88 "-L.",
89 89
90 # TODO(brettW) I don't understand these options. 90 # TODO(brettW) I don't understand these options.
91 "-Wl,-rpath,@loader_path/.", 91 "-Wl,-rpath,@loader_path/.",
92 "-Wl,-rpath,@loader_path/../../..", 92 "-Wl,-rpath,@loader_path/../../..",
93 ] 93 ]
94 } else if (is_posix) { 94 } else if (is_posix) {
95 # Non-Mac Posix compiler flags setup. 95 # Non-Mac Posix compiler flags setup.
96 # ----------------------------------- 96 # -----------------------------------
97 97
98 # CPU architecture. We may or may not be doing a cross compile now, so for 98 # CPU architecture. We may or may not be doing a cross compile now, so for
99 # simplicity we always explicitly set the architecture. 99 # simplicity we always explicitly set the architecture.
100 if (cpu_arch == "x64") { 100 if (cpu_arch == "x64") {
101 cflags += "-m64" 101 cflags += [ "-m64" ]
102 ldflags += "-m64" 102 ldflags += [ "-m64" ]
103 } else if (cpu_arch == "x86") { 103 } else if (cpu_arch == "x86") {
104 cflags += "-m32" 104 cflags += [ "-m32" ]
105 ldflags += "-m32" 105 ldflags += [ "-m32" ]
106 } else if (cpu_arch == "arm") { 106 } else if (cpu_arch == "arm") {
107 # Don't set the compiler flags for the WebView build. These will come 107 # Don't set the compiler flags for the WebView build. These will come
108 # from the Android build system. 108 # from the Android build system.
109 if (!is_android_webview_build) { 109 if (!is_android_webview_build) {
110 cflags += [ 110 cflags += [
111 "-march=$arm_arch", 111 "-march=$arm_arch",
112 "-mfpu=$arm_fpu", 112 "-mfpu=$arm_fpu",
113 "-mfloat-abi=$arm_float_abi", 113 "-mfloat-abi=$arm_float_abi",
114 ] 114 ]
115 if (arm_tune != "") { 115 if (arm_tune != "") {
116 cflags += "-mtune=$arm_tune" 116 cflags += [ "-mtune=$arm_tune" ]
117 } 117 }
118 if (arm_use_thumb) { 118 if (arm_use_thumb) {
119 cflags += [ "-mthumb" ] 119 cflags += [ "-mthumb" ]
120 if (is_android && !is_clang) { # Clang doesn't support this option. 120 if (is_android && !is_clang) { # Clang doesn't support this option.
121 cflags += [ "-mthumb-interwork" ] 121 cflags += [ "-mthumb-interwork" ]
122 } 122 }
123 } 123 }
124 } 124 }
125 } 125 }
126 126
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
167 # saved ~20% of link time. 167 # saved ~20% of link time.
168 # https://groups.google.com/a/chromium.org/group/chromium-dev/browse_thr ead/thread/281527606915bb36 168 # https://groups.google.com/a/chromium.org/group/chromium-dev/browse_thr ead/thread/281527606915bb36
169 # Only apply this to the target linker, since the host 169 # Only apply this to the target linker, since the host
170 # linker might not be gold, but isn't used much anyway. 170 # linker might not be gold, but isn't used much anyway.
171 "-Wl,--threads", 171 "-Wl,--threads",
172 "-Wl,--thread-count=4", 172 "-Wl,--thread-count=4",
173 ] 173 ]
174 } 174 }
175 175
176 if (sysroot != "") { 176 if (sysroot != "") {
177 cflags += "--sysroot=" + sysroot 177 cflags += [ "--sysroot=" + sysroot ]
178 ldflags += "--sysroot=" + sysroot 178 ldflags += [ "--sysroot=" + sysroot ]
179 179
180 # Need to get some linker flags out of the sysroot. 180 # Need to get some linker flags out of the sysroot.
181 ldflags += exec_script("../linux/sysroot_ld_path.py", 181 ldflags += [ exec_script("../linux/sysroot_ld_path.py",
182 [rebase_path("../../linux/sysroot_ld_path.sh", ".", root_build_dir), 182 [rebase_path("../../linux/sysroot_ld_path.sh", ".", root_build_dir),
183 sysroot], 183 sysroot],
184 "value") 184 "value") ]
185 } 185 }
186 186
187 ldflags += [ 187 ldflags += [
188 "-fPIC", 188 "-fPIC",
189 "-pthread", 189 "-pthread",
190 "-Wl,-z,noexecstack", 190 "-Wl,-z,noexecstack",
191 "-Wl,-z,now", 191 "-Wl,-z,now",
192 "-Wl,-z,relro", 192 "-Wl,-z,relro",
193 ] 193 ]
194 } 194 }
(...skipping 484 matching lines...) Expand 10 before | Expand all | Expand 10 after
679 cflags = [ "-g1" ] 679 cflags = [ "-g1" ]
680 } 680 }
681 } 681 }
682 682
683 config("no_symbols") { 683 config("no_symbols") {
684 if (!is_win) { 684 if (!is_win) {
685 cflags = [ "-g0" ] 685 cflags = [ "-g0" ]
686 } 686 }
687 } 687 }
688 688
OLDNEW
« no previous file with comments | « build/config/clang/BUILD.gn ('k') | build/config/win/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698