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 774 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
785 # supported. | 785 # supported. |
786 # NOTE: The check for disable_nacl==0 and component=="static_library" | 786 # NOTE: The check for disable_nacl==0 and component=="static_library" |
787 # can't be used here because these variables are not defined yet, but it | 787 # can't be used here because these variables are not defined yet, but it |
788 # is still not supported. | 788 # is still not supported. |
789 ['OS!="ios" and OS!="android" and chromeos==0', { | 789 ['OS!="ios" and OS!="android" and chromeos==0', { |
790 'test_isolation_mode%': 'check', | 790 'test_isolation_mode%': 'check', |
791 }, { | 791 }, { |
792 'test_isolation_mode%': 'noop', | 792 'test_isolation_mode%': 'noop', |
793 }], | 793 }], |
794 # Whether Android ARM or x86 build uses OpenMAX DL FFT. | 794 # Whether Android ARM or x86 build uses OpenMAX DL FFT. |
795 ['OS=="android" and ((target_arch=="arm" and arm_version >= 7) or target _arch=="ia32") and android_webview_build==0', { | 795 ['OS=="android" and ((target_arch=="arm" and arm_version >= 7) or target _arch=="ia32" or target_arch=="x64") and android_webview_build==0', { |
796 # Currently only supported on Android ARMv7+, or ia32 | 796 # Currently only supported on Android ARMv7+, ia32 or x64 |
797 # without webview. When enabled, this will also enable | 797 # without webview. When enabled, this will also enable |
798 # WebAudio support on Android ARM and ia32. Default is | 798 # WebAudio support on Android ARM, ia32 and x64. Default is |
799 # enabled. Whether WebAudio is actually available depends | 799 # enabled. Whether WebAudio is actually available depends |
800 # on runtime settings and flags. | 800 # on runtime settings and flags. |
801 'use_openmax_dl_fft%': 1, | 801 'use_openmax_dl_fft%': 1, |
802 }, { | 802 }, { |
803 'use_openmax_dl_fft%': 0, | 803 'use_openmax_dl_fft%': 0, |
804 }], | 804 }], |
805 ['OS=="win" or OS=="linux"', { | 805 ['OS=="win" or OS=="linux"', { |
806 'enable_mdns%' : 1, | 806 'enable_mdns%' : 1, |
807 }], | 807 }], |
808 | 808 |
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1291 # away once the chrome and blink interfaces are in sync | 1291 # away once the chrome and blink interfaces are in sync |
1292 'enable_new_gamepad_api%': 1, | 1292 'enable_new_gamepad_api%': 1, |
1293 | 1293 |
1294 'conditions': [ | 1294 'conditions': [ |
1295 # The version of GCC in use, set later in platforms that use GCC and have | 1295 # The version of GCC in use, set later in platforms that use GCC and have |
1296 # not explicitly chosen to build with clang. Currently, this means all | 1296 # not explicitly chosen to build with clang. Currently, this means all |
1297 # platforms except Windows, Mac and iOS. | 1297 # platforms except Windows, Mac and iOS. |
1298 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so that | 1298 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so that |
1299 # it takes effect here. | 1299 # it takes effect here. |
1300 ['os_posix==1 and OS!="mac" and OS!="ios" and clang==0 and asan==0 and lsa n==0 and tsan==0 and msan==0', { | 1300 ['os_posix==1 and OS!="mac" and OS!="ios" and clang==0 and asan==0 and lsa n==0 and tsan==0 and msan==0', { |
1301 'conditions': [ | 1301 'gcc_version%': '<!(python <(DEPTH)/build/compiler_version.py)', |
Torne
2014/03/11 11:15:35
Is this correct? We're forcing gcc 4.6 at present.
rmcilroy
2014/03/11 11:42:19
I think x64 requires 4.8 - is that right Zhenyu?
Zhenyu Liang
2014/03/12 10:27:23
Yeah, we are using gcc 4.8 for x64 porting.
The ch
rmcilroy
2014/03/12 11:04:08
Is there a reason you cannot do:
['OS=="androi
Zhenyu Liang
2014/03/12 11:30:53
I had tried this way initially. It doesn't work. G
rmcilroy
2014/03/12 15:09:53
Are you sure? When I try this myself it seems to
Zhenyu Liang
2014/03/12 18:46:32
Sorry, I misremembered that _toolset is what I tri
| |
1302 ['OS=="android"', { | |
1303 # We directly set the gcc_version since we know what we use. | |
1304 'gcc_version%': 46, | |
1305 }, { | |
1306 'gcc_version%': '<!(python <(DEPTH)/build/compiler_version.py)', | |
1307 }], | |
1308 ], | |
1309 }, { | 1302 }, { |
1310 'gcc_version%': 0, | 1303 'gcc_version%': 0, |
1311 }], | 1304 }], |
1312 ['OS=="win" and "<!(python <(DEPTH)/build/dir_exists.py <(windows_sdk_defa ult_path))"=="True"', { | 1305 ['OS=="win" and "<!(python <(DEPTH)/build/dir_exists.py <(windows_sdk_defa ult_path))"=="True"', { |
1313 'windows_sdk_path%': '<(windows_sdk_default_path)', | 1306 'windows_sdk_path%': '<(windows_sdk_default_path)', |
1314 }, { | 1307 }, { |
1315 'windows_sdk_path%': 'C:/Program Files (x86)/Windows Kits/8.0', | 1308 'windows_sdk_path%': 'C:/Program Files (x86)/Windows Kits/8.0', |
1316 }], | 1309 }], |
1317 ['OS=="win" and "<!(python <(DEPTH)/build/dir_exists.py <(directx_sdk_defa ult_path))"=="True"', { | 1310 ['OS=="win" and "<!(python <(DEPTH)/build/dir_exists.py <(directx_sdk_defa ult_path))"=="True"', { |
1318 'directx_sdk_path%': '<(directx_sdk_default_path)', | 1311 'directx_sdk_path%': '<(directx_sdk_default_path)', |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1420 # Android API level 14 is ICS (Android 4.0) which is the minimum | 1413 # Android API level 14 is ICS (Android 4.0) which is the minimum |
1421 # platform requirement for Chrome on Android, we use it for native | 1414 # platform requirement for Chrome on Android, we use it for native |
1422 # code compilation. | 1415 # code compilation. |
1423 'conditions': [ | 1416 'conditions': [ |
1424 ['target_arch == "ia32"', { | 1417 ['target_arch == "ia32"', { |
1425 'android_app_abi%': 'x86', | 1418 'android_app_abi%': 'x86', |
1426 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-x86/gd bserver/gdbserver', | 1419 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-x86/gd bserver/gdbserver', |
1427 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/ arch-x86', | 1420 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/ arch-x86', |
1428 'android_toolchain%': '<(android_ndk_root)/toolchains/x86-4.6/preb uilt/<(host_os)-<(android_host_arch)/bin', | 1421 'android_toolchain%': '<(android_ndk_root)/toolchains/x86-4.6/preb uilt/<(host_os)-<(android_host_arch)/bin', |
1429 }], | 1422 }], |
1423 ['target_arch == "x64"', { | |
1424 'android_app_abi%': 'x86_64', | |
1425 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-x86_64 /gdbserver/gdbserver', | |
1426 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-19/ arch-x86_64', | |
1427 'android_toolchain%': '<(android_ndk_root)/toolchains/x86_64-4.8/p rebuilt/<(host_os)-<(android_host_arch)/bin', | |
1428 }], | |
1430 ['target_arch=="arm"', { | 1429 ['target_arch=="arm"', { |
1431 'conditions': [ | 1430 'conditions': [ |
1432 ['arm_version<7', { | 1431 ['arm_version<7', { |
1433 'android_app_abi%': 'armeabi', | 1432 'android_app_abi%': 'armeabi', |
1434 }, { | 1433 }, { |
1435 'android_app_abi%': 'armeabi-v7a', | 1434 'android_app_abi%': 'armeabi-v7a', |
1436 }], | 1435 }], |
1437 ], | 1436 ], |
1438 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-arm/gd bserver/gdbserver', | 1437 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-arm/gd bserver/gdbserver', |
1439 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/ arch-arm', | 1438 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/ arch-arm', |
(...skipping 26 matching lines...) Expand all Loading... | |
1466 'android_stlport_include': '<(android_stlport_root)/stlport', | 1465 'android_stlport_include': '<(android_stlport_root)/stlport', |
1467 'android_stlport_libs_dir': '<(android_stlport_root)/libs/<(android_app_ abi)', | 1466 'android_stlport_libs_dir': '<(android_stlport_root)/libs/<(android_app_ abi)', |
1468 'host_os%': '<(host_os)', | 1467 'host_os%': '<(host_os)', |
1469 | 1468 |
1470 # Location of the "strip" binary, used by both gyp and scripts. | 1469 # Location of the "strip" binary, used by both gyp and scripts. |
1471 'android_strip%' : '<!(/bin/echo -n <(android_toolchain)/*-strip)', | 1470 'android_strip%' : '<!(/bin/echo -n <(android_toolchain)/*-strip)', |
1472 | 1471 |
1473 # Location of the "readelf" binary. | 1472 # Location of the "readelf" binary. |
1474 'android_readelf%' : '<!(/bin/echo -n <(android_toolchain)/*-readelf)', | 1473 'android_readelf%' : '<!(/bin/echo -n <(android_toolchain)/*-readelf)', |
1475 | 1474 |
1475 # GCC version of Android toolchain | |
1476 'gcc_version%': '<!(CXX=<(android_toolchain)/*-g++ python <(DEPTH)/build /compiler_version.py)', | |
rmcilroy
2014/03/11 11:42:19
Why is this required? Isn't it done above?
Zhenyu Liang
2014/03/12 10:27:23
It determines the gcc version of android toolchain
| |
1477 | |
1476 # Determines whether we should optimize JNI generation at the cost of | 1478 # Determines whether we should optimize JNI generation at the cost of |
1477 # breaking assumptions in the build system that when inputs have changed | 1479 # breaking assumptions in the build system that when inputs have changed |
1478 # the outputs should always change as well. This is meant purely for | 1480 # the outputs should always change as well. This is meant purely for |
1479 # developer builds, to avoid spurious re-linking of native files. | 1481 # developer builds, to avoid spurious re-linking of native files. |
1480 'optimize_jni_generation%': 0, | 1482 'optimize_jni_generation%': 0, |
1481 | 1483 |
1482 # Always uses openssl. | 1484 # Always uses openssl. |
1483 'use_openssl%': 1, | 1485 'use_openssl%': 1, |
1484 | 1486 |
1485 'proprietary_codecs%': '<(proprietary_codecs)', | 1487 'proprietary_codecs%': '<(proprietary_codecs)', |
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1729 }], | 1731 }], |
1730 ['image_loader_extension==1', { | 1732 ['image_loader_extension==1', { |
1731 'grit_defines': ['-D', 'image_loader_extension'], | 1733 'grit_defines': ['-D', 'image_loader_extension'], |
1732 }], | 1734 }], |
1733 ['remoting==1', { | 1735 ['remoting==1', { |
1734 'grit_defines': ['-D', 'remoting'], | 1736 'grit_defines': ['-D', 'remoting'], |
1735 }], | 1737 }], |
1736 ['use_titlecase_in_grd_files==1', { | 1738 ['use_titlecase_in_grd_files==1', { |
1737 'grit_defines': ['-D', 'use_titlecase'], | 1739 'grit_defines': ['-D', 'use_titlecase'], |
1738 }], | 1740 }], |
1739 ['OS=="android" and target_arch=="ia32"', { | 1741 ['OS=="android" and (target_arch=="ia32" or target_arch=="x64")', { |
1740 # WebAudio on Android/x86 is disabled by default, unlike | 1742 # WebAudio on Android/x86 is disabled by default, unlike |
1741 # everywhere else, so use appropriate message. | 1743 # everywhere else, so use appropriate message. |
1742 'grit_defines': ['-D', 'use_webaudio_enable_message'], | 1744 'grit_defines': ['-D', 'use_webaudio_enable_message'], |
1743 }], | 1745 }], |
1744 ['use_third_party_translations==1', { | 1746 ['use_third_party_translations==1', { |
1745 'grit_defines': ['-D', 'use_third_party_translations'], | 1747 'grit_defines': ['-D', 'use_third_party_translations'], |
1746 'locales': [ | 1748 'locales': [ |
1747 'ast', 'bs', 'ca@valencia', 'en-AU', 'eo', 'eu', 'gl', 'hy', 'ia', | 1749 'ast', 'bs', 'ca@valencia', 'en-AU', 'eo', 'eu', 'gl', 'hy', 'ia', |
1748 'ka', 'ku', 'kw', 'ms', 'ug' | 1750 'ka', 'ku', 'kw', 'ms', 'ug' |
1749 ], | 1751 ], |
(...skipping 1502 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3252 'cflags': [ | 3254 'cflags': [ |
3253 '-m32', | 3255 '-m32', |
3254 '-mmmx', | 3256 '-mmmx', |
3255 ], | 3257 ], |
3256 'ldflags': [ | 3258 'ldflags': [ |
3257 '-m32', | 3259 '-m32', |
3258 ], | 3260 ], |
3259 }], | 3261 }], |
3260 ], | 3262 ], |
3261 }], | 3263 }], |
3264 ['target_arch=="x64"', { | |
3265 'target_conditions': [ | |
3266 ['_toolset=="target"', { | |
3267 'conditions': [ | |
3268 # Use gold linker for Android x64 target. | |
3269 ['OS=="android"', { | |
3270 'cflags': [ | |
3271 '-fuse-ld=gold', | |
3272 ], | |
3273 'ldflags': [ | |
3274 '-fuse-ld=gold', | |
3275 ], | |
3276 }], | |
3277 ], | |
3278 'cflags': [ | |
3279 '-m64', | |
3280 '-march=x86-64', | |
3281 ], | |
3282 'ldflags': [ | |
3283 '-m64', | |
3284 ], | |
3285 }], | |
3286 ], | |
3287 }], | |
3262 ['target_arch=="arm"', { | 3288 ['target_arch=="arm"', { |
3263 'target_conditions': [ | 3289 'target_conditions': [ |
3264 ['_toolset=="target"', { | 3290 ['_toolset=="target"', { |
3265 'cflags_cc': [ | 3291 'cflags_cc': [ |
3266 # The codesourcery arm-2009q3 toolchain warns at that the ABI | 3292 # The codesourcery arm-2009q3 toolchain warns at that the ABI |
3267 # has changed whenever it encounters a varargs function. This | 3293 # has changed whenever it encounters a varargs function. This |
3268 # silences those warnings, as they are not helpful and | 3294 # silences those warnings, as they are not helpful and |
3269 # clutter legitimate warnings. | 3295 # clutter legitimate warnings. |
3270 '-Wno-abi', | 3296 '-Wno-abi', |
3271 ], | 3297 ], |
(...skipping 613 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3885 ], | 3911 ], |
3886 }], | 3912 }], |
3887 ['target_arch=="ia32"', { | 3913 ['target_arch=="ia32"', { |
3888 'cflags': [ | 3914 'cflags': [ |
3889 '-target x86-linux-androideabi', | 3915 '-target x86-linux-androideabi', |
3890 ], | 3916 ], |
3891 'ldflags': [ | 3917 'ldflags': [ |
3892 '-target x86-linux-androideabi', | 3918 '-target x86-linux-androideabi', |
3893 ], | 3919 ], |
3894 }], | 3920 }], |
3921 # Place holder for x64 support, not tested. | |
rmcilroy
2014/03/11 11:42:19
Add a todo associated with a bug here please (so t
| |
3922 ['target_arch=="x64"', { | |
3923 'cflags': [ | |
3924 '-target x86_64-linux-androideabi', | |
3925 ], | |
3926 'ldflags': [ | |
3927 '-target x86_64-linux-androideabi', | |
3928 ], | |
3929 }], | |
3895 ], | 3930 ], |
3896 }], | 3931 }], |
3897 ['asan==1', { | 3932 ['asan==1', { |
3898 'cflags': [ | 3933 'cflags': [ |
3899 # Android build relies on -Wl,--gc-sections removing | 3934 # Android build relies on -Wl,--gc-sections removing |
3900 # unreachable code. ASan instrumentation for globals inhibits | 3935 # unreachable code. ASan instrumentation for globals inhibits |
3901 # this and results in a library with unresolvable relocations. | 3936 # this and results in a library with unresolvable relocations. |
3902 # TODO(eugenis): find a way to reenable this. | 3937 # TODO(eugenis): find a way to reenable this. |
3903 '-mllvm -asan-globals=0', | 3938 '-mllvm -asan-globals=0', |
3904 ], | 3939 ], |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3998 ], | 4033 ], |
3999 'cflags': [ | 4034 'cflags': [ |
4000 '-fno-stack-protector', | 4035 '-fno-stack-protector', |
4001 ], | 4036 ], |
4002 }], | 4037 }], |
4003 ], | 4038 ], |
4004 'target_conditions': [ | 4039 'target_conditions': [ |
4005 ['_type=="executable"', { | 4040 ['_type=="executable"', { |
4006 'ldflags': [ | 4041 'ldflags': [ |
4007 '-Bdynamic', | 4042 '-Bdynamic', |
4008 '-Wl,-dynamic-linker,/system/bin/linker', | |
rmcilroy
2014/03/11 11:42:19
This should probably be ok, but have you tested th
Zhenyu Liang
2014/03/12 10:27:23
Yes, I had tried with the original ndk in third_pa
| |
4009 '-Wl,--gc-sections', | 4043 '-Wl,--gc-sections', |
4010 '-Wl,-z,nocopyreloc', | 4044 '-Wl,-z,nocopyreloc', |
4011 # crtbegin_dynamic.o should be the last item in ldflags. | 4045 # crtbegin_dynamic.o should be the last item in ldflags. |
4012 '<(android_ndk_lib)/crtbegin_dynamic.o', | 4046 '<(android_ndk_lib)/crtbegin_dynamic.o', |
4013 ], | 4047 ], |
4014 'libraries': [ | 4048 'libraries': [ |
4015 # crtend_android.o needs to be the last item in libraries. | 4049 # crtend_android.o needs to be the last item in libraries. |
4016 # Do not add any libraries after this! | 4050 # Do not add any libraries after this! |
4017 '<(android_ndk_lib)/crtend_android.o', | 4051 '<(android_ndk_lib)/crtend_android.o', |
4018 ], | 4052 ], |
(...skipping 1033 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
5052 # settings in target dicts. SYMROOT is a special case, because many other | 5086 # settings in target dicts. SYMROOT is a special case, because many other |
5053 # Xcode variables depend on it, including variables such as | 5087 # Xcode variables depend on it, including variables such as |
5054 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 5088 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
5055 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 5089 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
5056 # files to appear (when present) in the UI as actual files and not red | 5090 # files to appear (when present) in the UI as actual files and not red |
5057 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 5091 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
5058 # and therefore SYMROOT, needs to be set at the project level. | 5092 # and therefore SYMROOT, needs to be set at the project level. |
5059 'SYMROOT': '<(DEPTH)/xcodebuild', | 5093 'SYMROOT': '<(DEPTH)/xcodebuild', |
5060 }, | 5094 }, |
5061 } | 5095 } |
OLD | NEW |