OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 # IMPORTANT: | 5 # IMPORTANT: |
6 # Please don't directly include this file if you are building via gyp_chromium, | 6 # Please don't directly include this file if you are building via gyp_chromium, |
7 # since gyp_chromium is automatically forcing its inclusion. | 7 # since gyp_chromium is automatically forcing its inclusion. |
8 { | 8 { |
9 # Variables expected to be overriden on the GYP command line (-D) or by | 9 # Variables expected to be overriden on the GYP command line (-D) or by |
10 # ~/.gyp/include.gypi. | 10 # ~/.gyp/include.gypi. |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 | 68 |
69 # For now, Windows builds that |use_aura| should also imply using | 69 # For now, Windows builds that |use_aura| should also imply using |
70 # ash. This rule should be removed for the future when Windows is | 70 # ash. This rule should be removed for the future when Windows is |
71 # using the aura windows without the ash interface. | 71 # using the aura windows without the ash interface. |
72 ['use_aura==1 and OS=="win"', { | 72 ['use_aura==1 and OS=="win"', { |
73 'use_ash%': 1, | 73 'use_ash%': 1, |
74 }], | 74 }], |
75 ['use_ash==1', { | 75 ['use_ash==1', { |
76 'use_aura%': 1, | 76 'use_aura%': 1, |
77 }], | 77 }], |
| 78 |
| 79 # Compute the architecture that we're building on. |
| 80 ['OS=="win" or OS=="mac" or OS=="ios"', { |
| 81 'host_arch%': 'ia32', |
| 82 }, { |
| 83 # This handles the Unix platforms for which there is some support. |
| 84 # Anything else gets passed through, which probably won't work |
| 85 # very well; such hosts should pass an explicit target_arch to |
| 86 # gyp. |
| 87 'host_arch%': |
| 88 '<!(uname -m | sed -e "s/i.86/ia32/;s/x86_64/x64/;s/amd64/x64/;s
/arm.*/arm/;s/i86pc/ia32/")', |
| 89 }], |
78 ], | 90 ], |
79 }, | 91 }, |
80 # Copy conditionally-set variables out one scope. | 92 # Copy conditionally-set variables out one scope. |
81 'chromeos%': '<(chromeos)', | 93 'chromeos%': '<(chromeos)', |
82 'use_aura%': '<(use_aura)', | 94 'use_aura%': '<(use_aura)', |
83 'use_ash%': '<(use_ash)', | 95 'use_ash%': '<(use_ash)', |
84 'use_openssl%': '<(use_openssl)', | 96 'use_openssl%': '<(use_openssl)', |
85 'use_ibus%': '<(use_ibus)', | 97 'use_ibus%': '<(use_ibus)', |
86 'enable_viewport%': '<(enable_viewport)', | 98 'enable_viewport%': '<(enable_viewport)', |
87 'enable_hidpi%': '<(enable_hidpi)', | 99 'enable_hidpi%': '<(enable_hidpi)', |
88 'enable_touch_ui%': '<(enable_touch_ui)', | 100 'enable_touch_ui%': '<(enable_touch_ui)', |
89 'buildtype%': '<(buildtype)', | 101 'buildtype%': '<(buildtype)', |
| 102 'host_arch%': '<(host_arch)', |
| 103 |
| 104 # Default architecture we're building for is the architecture we're |
| 105 # building on. |
| 106 'target_arch%': '<(host_arch)', |
90 | 107 |
91 # Sets whether we're building with the Android SDK/NDK (and hence with | 108 # Sets whether we're building with the Android SDK/NDK (and hence with |
92 # Ant, value 0), or as part of the Android system (and hence with the | 109 # Ant, value 0), or as part of the Android system (and hence with the |
93 # Android build system, value 1). | 110 # Android build system, value 1). |
94 'android_build_type%': 0, | 111 'android_build_type%': 0, |
95 | 112 |
96 # Compute the architecture that we're building on. | |
97 'conditions': [ | 113 'conditions': [ |
98 ['OS=="win" or OS=="mac" or OS=="ios"', { | |
99 'host_arch%': 'ia32', | |
100 }, { | |
101 # This handles the Unix platforms for which there is some support. | |
102 # Anything else gets passed through, which probably won't work very | |
103 # well; such hosts should pass an explicit target_arch to gyp. | |
104 'host_arch%': | |
105 '<!(uname -m | sed -e "s/i.86/ia32/;s/x86_64/x64/;s/amd64/x64/;s/a
rm.*/arm/;s/i86pc/ia32/")', | |
106 }], | |
107 | |
108 # Set default value of toolkit_views based on OS. | 114 # Set default value of toolkit_views based on OS. |
109 ['OS=="win" or chromeos==1 or use_aura==1', { | 115 ['OS=="win" or chromeos==1 or use_aura==1', { |
110 'toolkit_views%': 1, | 116 'toolkit_views%': 1, |
111 }, { | 117 }, { |
112 'toolkit_views%': 0, | 118 'toolkit_views%': 0, |
113 }], | 119 }], |
114 | 120 |
115 # Set toolkit_uses_gtk for the Chromium browser on Linux. | 121 # Set toolkit_uses_gtk for the Chromium browser on Linux. |
116 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris") and
use_aura==0', { | 122 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris") and
use_aura==0', { |
117 'toolkit_uses_gtk%': 1, | 123 'toolkit_uses_gtk%': 1, |
(...skipping 22 matching lines...) Expand all Loading... |
140 'use_default_render_theme%': 1, | 146 'use_default_render_theme%': 1, |
141 }, { | 147 }, { |
142 'use_default_render_theme%': 0, | 148 'use_default_render_theme%': 0, |
143 }], | 149 }], |
144 ], | 150 ], |
145 }, | 151 }, |
146 | 152 |
147 # Copy conditionally-set variables out one scope. | 153 # Copy conditionally-set variables out one scope. |
148 'chromeos%': '<(chromeos)', | 154 'chromeos%': '<(chromeos)', |
149 'host_arch%': '<(host_arch)', | 155 'host_arch%': '<(host_arch)', |
| 156 'target_arch%': '<(target_arch)', |
150 'toolkit_views%': '<(toolkit_views)', | 157 'toolkit_views%': '<(toolkit_views)', |
151 'toolkit_uses_gtk%': '<(toolkit_uses_gtk)', | 158 'toolkit_uses_gtk%': '<(toolkit_uses_gtk)', |
152 'use_aura%': '<(use_aura)', | 159 'use_aura%': '<(use_aura)', |
153 'use_ash%': '<(use_ash)', | 160 'use_ash%': '<(use_ash)', |
154 'use_openssl%': '<(use_openssl)', | 161 'use_openssl%': '<(use_openssl)', |
155 'use_ibus%': '<(use_ibus)', | 162 'use_ibus%': '<(use_ibus)', |
156 'enable_viewport%': '<(enable_viewport)', | 163 'enable_viewport%': '<(enable_viewport)', |
157 'enable_hidpi%': '<(enable_hidpi)', | 164 'enable_hidpi%': '<(enable_hidpi)', |
158 'enable_touch_ui%': '<(enable_touch_ui)', | 165 'enable_touch_ui%': '<(enable_touch_ui)', |
159 'android_build_type%': '<(android_build_type)', | 166 'android_build_type%': '<(android_build_type)', |
160 'enable_app_list%': '<(enable_app_list)', | 167 'enable_app_list%': '<(enable_app_list)', |
161 'use_default_render_theme%': '<(use_default_render_theme)', | 168 'use_default_render_theme%': '<(use_default_render_theme)', |
| 169 'buildtype%': '<(buildtype)', |
162 | 170 |
163 # We used to provide a variable for changing how libraries were built. | 171 # We used to provide a variable for changing how libraries were built. |
164 # This variable remains until we can clean up all the users. | 172 # This variable remains until we can clean up all the users. |
165 # This needs to be one nested variables dict in so that dependent | 173 # This needs to be one nested variables dict in so that dependent |
166 # gyp files can make use of it in their outer variables. (Yikes!) | 174 # gyp files can make use of it in their outer variables. (Yikes!) |
167 # http://code.google.com/p/chromium/issues/detail?id=83308 | 175 # http://code.google.com/p/chromium/issues/detail?id=83308 |
168 'library%': 'static_library', | 176 'library%': 'static_library', |
169 | 177 |
170 # Override branding to select the desired branding flavor. | 178 # Override branding to select the desired branding flavor. |
171 'branding%': 'Chromium', | 179 'branding%': 'Chromium', |
172 | 180 |
173 'buildtype%': '<(buildtype)', | |
174 | |
175 # Default architecture we're building for is the architecture we're | |
176 # building on. | |
177 'target_arch%': '<(host_arch)', | |
178 | |
179 # This variable tells WebCore.gyp and JavaScriptCore.gyp whether they are | 181 # This variable tells WebCore.gyp and JavaScriptCore.gyp whether they are |
180 # are built under a chromium full build (1) or a webkit.org chromium | 182 # are built under a chromium full build (1) or a webkit.org chromium |
181 # build (0). | 183 # build (0). |
182 'inside_chromium_build%': 1, | 184 'inside_chromium_build%': 1, |
183 | 185 |
184 # Set to 1 to enable fast builds. It disables debug info for fastest | 186 # Set to 1 to enable fast builds. It disables debug info for fastest |
185 # compilation. | 187 # compilation. |
186 'fastbuild%': 0, | 188 'fastbuild%': 0, |
187 | 189 |
188 # Set to 1 to enable dcheck in release without having to use the flag. | 190 # Set to 1 to enable dcheck in release without having to use the flag. |
(...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
581 # where possible to reduce ROM size. | 583 # where possible to reduce ROM size. |
582 'use_system_libjpeg%': '<(android_build_type)', | 584 'use_system_libjpeg%': '<(android_build_type)', |
583 }], | 585 }], |
584 | 586 |
585 # Enable Settings App only on Windows. | 587 # Enable Settings App only on Windows. |
586 ['enable_app_list==1 and OS=="win"', { | 588 ['enable_app_list==1 and OS=="win"', { |
587 'enable_settings_app%': 1, | 589 'enable_settings_app%': 1, |
588 }, { | 590 }, { |
589 'enable_settings_app%': 0, | 591 'enable_settings_app%': 0, |
590 }], | 592 }], |
| 593 |
| 594 ['OS=="linux" and target_arch=="arm" and chromeos==0', { |
| 595 # Set some defaults for arm/linux chrome builds |
| 596 'armv7%': 1, |
| 597 'linux_breakpad%': 0, |
| 598 'linux_use_tcmalloc%': 0, |
| 599 'linux_use_gold_flags%': 0, |
| 600 # sysroot need to be an absolute path otherwise it generates |
| 601 # incorrect results when passed to pkg-config |
| 602 'sysroot%': '<!(cd <(DEPTH)/arm-sysroot && pwd -P)', |
| 603 }], # OS=="linux" and target_arch=="arm" and chromeos==0 |
591 ], | 604 ], |
592 | 605 |
593 # Set this to 1 to use the Google-internal file containing | 606 # Set this to 1 to use the Google-internal file containing |
594 # official API keys for Google Chrome even in a developer build. | 607 # official API keys for Google Chrome even in a developer build. |
595 # Setting this variable explicitly to 1 will cause your build to | 608 # Setting this variable explicitly to 1 will cause your build to |
596 # fail if the internal file is missing. | 609 # fail if the internal file is missing. |
597 # | 610 # |
598 # Set this to 0 to not use the internal file, even when it | 611 # Set this to 0 to not use the internal file, even when it |
599 # exists in your checkout. | 612 # exists in your checkout. |
600 # | 613 # |
(...skipping 613 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1214 # Enable Keystone auto-update support. | 1227 # Enable Keystone auto-update support. |
1215 'mac_keystone%': 1, | 1228 'mac_keystone%': 1, |
1216 }, { # else: branding!="Chrome" or buildtype!="Official" | 1229 }, { # else: branding!="Chrome" or buildtype!="Official" |
1217 'mac_sdk%': '<!(python <(DEPTH)/build/mac/find_sdk.py <(mac_sdk_min)
)', | 1230 'mac_sdk%': '<!(python <(DEPTH)/build/mac/find_sdk.py <(mac_sdk_min)
)', |
1218 'mac_breakpad_uploads%': 0, | 1231 'mac_breakpad_uploads%': 0, |
1219 'mac_breakpad%': 0, | 1232 'mac_breakpad%': 0, |
1220 'mac_keystone%': 0, | 1233 'mac_keystone%': 0, |
1221 }], | 1234 }], |
1222 ], | 1235 ], |
1223 }], # OS=="mac" | 1236 }], # OS=="mac" |
1224 | |
1225 ['OS=="win"', { | 1237 ['OS=="win"', { |
1226 'conditions': [ | 1238 'conditions': [ |
1227 ['component=="shared_library"', { | 1239 ['component=="shared_library"', { |
1228 'win_use_allocator_shim%': 0, | 1240 'win_use_allocator_shim%': 0, |
1229 }], | 1241 }], |
1230 ['component=="shared_library" and "<(GENERATOR)"=="ninja"', { | 1242 ['component=="shared_library" and "<(GENERATOR)"=="ninja"', { |
1231 # Only enabled by default for ninja because it's buggy in VS. | 1243 # Only enabled by default for ninja because it's buggy in VS. |
1232 # Not enabled for component=static_library because some targets | 1244 # Not enabled for component=static_library because some targets |
1233 # are too large and the toolchain fails due to the size of the | 1245 # are too large and the toolchain fails due to the size of the |
1234 # .obj files. | 1246 # .obj files. |
(...skipping 1361 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2596 # Android now supports .relro sections properly. | 2608 # Android now supports .relro sections properly. |
2597 # NOTE: While these flags enable the generation of .relro | 2609 # NOTE: While these flags enable the generation of .relro |
2598 # sections, the generated libraries can still be loaded on | 2610 # sections, the generated libraries can still be loaded on |
2599 # older Android platform versions. | 2611 # older Android platform versions. |
2600 'ldflags': [ | 2612 'ldflags': [ |
2601 '-Wl,-z,relro', | 2613 '-Wl,-z,relro', |
2602 '-Wl,-z,now', | 2614 '-Wl,-z,now', |
2603 '-fuse-ld=gold', | 2615 '-fuse-ld=gold', |
2604 ], | 2616 ], |
2605 'conditions': [ | 2617 'conditions': [ |
2606 ['arm_thumb == 1', { | 2618 ['arm_thumb==1', { |
2607 # Android toolchain doesn't support -mimplicit-it=thumb | 2619 # Android toolchain doesn't support -mimplicit-it=thumb |
2608 'cflags!': [ '-Wa,-mimplicit-it=thumb', ], | 2620 'cflags!': [ '-Wa,-mimplicit-it=thumb' ], |
2609 'cflags': [ '-mthumb-interwork', ], | 2621 'cflags': [ '-mthumb-interwork' ], |
2610 }], | 2622 }], |
2611 ['armv7==0', { | 2623 ['armv7==0', { |
2612 # Flags suitable for Android emulator | 2624 # Flags suitable for Android emulator |
2613 'cflags': [ | 2625 'cflags': [ |
2614 '-march=armv5te', | 2626 '-march=armv5te', |
2615 '-mtune=xscale', | 2627 '-mtune=xscale', |
2616 '-msoft-float', | 2628 '-msoft-float', |
2617 ], | 2629 ], |
2618 'defines': [ | 2630 'defines': [ |
2619 '__ARM_ARCH_5__', | 2631 '__ARM_ARCH_5__', |
(...skipping 1300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3920 # settings in target dicts. SYMROOT is a special case, because many other | 3932 # settings in target dicts. SYMROOT is a special case, because many other |
3921 # Xcode variables depend on it, including variables such as | 3933 # Xcode variables depend on it, including variables such as |
3922 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 3934 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
3923 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 3935 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
3924 # files to appear (when present) in the UI as actual files and not red | 3936 # files to appear (when present) in the UI as actual files and not red |
3925 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 3937 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
3926 # and therefore SYMROOT, needs to be set at the project level. | 3938 # and therefore SYMROOT, needs to be set at the project level. |
3927 'SYMROOT': '<(DEPTH)/xcodebuild', | 3939 'SYMROOT': '<(DEPTH)/xcodebuild', |
3928 }, | 3940 }, |
3929 } | 3941 } |
OLD | NEW |