# Enable HiDPI support.
'enable_hidpi%': 0,
- # Enable touch optimized art assets and metrics.
- 'enable_touch_ui%': 0,
-
# Override buildtype to select the desired build flavor.
# Dev - everyday build for development/testing
# Official - release build (generally implies additional processing)
'use_aura%': 1,
}],
- # ToT Linux should be aura.
- #
- # TODO(erg): Merge this into the previous block once compiling with
- # aura safely implies including ash capabilities.
- ['OS=="linux"', {
- 'use_aura%': 1,
- }],
-
# Whether we're a traditional desktop unix.
['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris") and chromeos==0', {
'desktop_linux%': 1,
['OS=="win" or OS=="mac" or OS=="ios"', {
'host_arch%': 'ia32',
}, {
- # This handles the Unix platforms for which there is some support.
- # Anything else gets passed through, which probably won't work
- # very well; such hosts should pass an explicit target_arch to
- # gyp.
- 'host_arch%':
- '<!(uname -m | sed -e "s/i.86/ia32/;s/x86_64/x64/;s/amd64/x64/;s/arm.*/arm/;s/i86pc/ia32/")',
+ 'host_arch%': '<!(python <(DEPTH)/build/linux/detect_host_arch.py)',
}],
# Embedded implies ozone.
'use_system_fontconfig%': '<(use_system_fontconfig)',
'enable_viewport%': '<(enable_viewport)',
'enable_hidpi%': '<(enable_hidpi)',
- 'enable_touch_ui%': '<(enable_touch_ui)',
'buildtype%': '<(buildtype)',
'branding%': '<(branding)',
'host_arch%': '<(host_arch)',
# Default architecture we're building for is the architecture we're
- # building on.
+ # building on, and possibly sub-architecture (for iOS builds).
'target_arch%': '<(host_arch)',
+ 'target_subarch%': '',
# This is set when building the Android WebView inside the Android
# build system, using the 'android' gyp backend. The WebView code is
'enable_hidpi%': 1,
}],
- # Enable touch UI on Metro.
- ['OS=="win"', {
- 'enable_touch_ui%': 1,
- }],
-
# Enable App Launcher on ChromeOS, Windows and OSX.
# On Linux, enable App Launcher for the Aura build.
['use_ash==1 or OS=="win" or OS=="mac" or (desktop_linux==1 and use_aura==1)', {
}, {
'gomadir': '<!(/bin/echo -n ${HOME}/goma)',
}],
+
+ # Set the default "target_subarch" on iOS. Valid values are "arm32",
+ # "arm64" and "both" (meaning a fat binary).
+ #
+ # TODO(sdefresne): change the default from "arm32" to "both" for
+ # "target_subarch" once http://crbug.com/339477 is fixed.
+ #
+ # TODO(sdefresne): set the "target_arch" to "arm" once compilation
+ # of skia has been fixed for simulator. http://crbug.com/342377
+ ['OS=="ios"', {
+ 'target_subarch%': 'arm32',
+ }],
],
},
'chromeos%': '<(chromeos)',
'host_arch%': '<(host_arch)',
'target_arch%': '<(target_arch)',
+ 'target_subarch%': '<(target_subarch)',
'toolkit_views%': '<(toolkit_views)',
'toolkit_uses_gtk%': '<(toolkit_uses_gtk)',
'desktop_linux%': '<(desktop_linux)',
'use_system_fontconfig%': '<(use_system_fontconfig)',
'enable_viewport%': '<(enable_viewport)',
'enable_hidpi%': '<(enable_hidpi)',
- 'enable_touch_ui%': '<(enable_touch_ui)',
'android_webview_build%': '<(android_webview_build)',
'use_goma%': '<(use_goma)',
'gomadir%': '<(gomadir)',
# The system root for cross-compiles. Default: none.
'sysroot%': '',
+ 'chroot_cmd%': '',
# The system libdir used for this ABI.
'system_libdir%': 'lib',
# controls coverage granularity (experimental).
'asan_coverage%': 0,
+ # Enable building with SyzyAsan.
+ # See https://code.google.com/p/sawbuck/wiki/SyzyASanHowTo
+ 'syzyasan%': 0,
+
# Enable building with LSan (Clang's -fsanitize=leak option).
# -fsanitize=leak only works with clang, but lsan=1 implies clang=1
# See https://sites.google.com/a/chromium.org/dev/developers/testing/leaksanitizer
'data_reduction_proxy_probe_url%' : '',
'enable_mdns%' : 0,
'enable_enhanced_bookmarks%': 0,
+ 'enable_hangout_services_extension%': 0,
'conditions': [
# A flag for POSIX platforms
'native_discardable_memory%': 1,
'native_memory_pressure_signals%': 1,
'enable_printing%': 2,
+ 'enable_task_manager%':0,
+ # Set to 1 once we have a notification system for Android.
+ # http://crbug.com/115320
+ 'notifications%': 0,
}],
# Android OS includes support for proprietary codecs regardless of
'remoting%': 0,
'safe_browsing%': 0,
'enable_managed_users%': 0,
+ 'enable_task_manager%': 0,
}],
# Use GPU accelerated cross process image transport by default
'branding%': '<(branding)',
'buildtype%': '<(buildtype)',
'target_arch%': '<(target_arch)',
+ 'target_subarch%': '<(target_subarch)',
'host_arch%': '<(host_arch)',
'toolkit_views%': '<(toolkit_views)',
'ui_compositor_image_transport%': '<(ui_compositor_image_transport)',
'chromeos%': '<(chromeos)',
'enable_viewport%': '<(enable_viewport)',
'enable_hidpi%': '<(enable_hidpi)',
- 'enable_touch_ui%': '<(enable_touch_ui)',
'use_xi2_mt%':'<(use_xi2_mt)',
'image_loader_extension%': '<(image_loader_extension)',
'fastbuild%': '<(fastbuild)',
'arm_neon%': '<(arm_neon)',
'arm_neon_optional%': '<(arm_neon_optional)',
'sysroot%': '<(sysroot)',
+ 'chroot_cmd%': '<(chroot_cmd)',
'system_libdir%': '<(system_libdir)',
'component%': '<(component)',
'use_titlecase_in_grd_files%': '<(use_titlecase_in_grd_files)',
'mac_want_real_dsym%': '<(mac_want_real_dsym)',
'asan%': '<(asan)',
'asan_coverage%': '<(asan_coverage)',
+ 'syzyasan%': '<(syzyasan)',
'lsan%': '<(lsan)',
'msan%': '<(msan)',
'msan_blacklist%': '<(msan_blacklist)',
'data_reduction_proxy_probe_url%': '<(data_reduction_proxy_probe_url)',
'enable_mdns%' : '<(enable_mdns)',
'enable_enhanced_bookmarks%' : '<(enable_enhanced_bookmarks)',
+ 'enable_hangout_services_extension%' : '<(enable_hangout_services_extension)',
'v8_optimized_debug%': '<(v8_optimized_debug)',
'proprietary_codecs%': '<(proprietary_codecs)',
'use_goma%': '<(use_goma)',
'gomadir%': '<(gomadir)',
- # Use system nspr instead of the bundled one.
- 'use_system_nspr%': 0,
-
# Use system protobuf instead of bundled one.
'use_system_protobuf%': 0,
'clang%': '<(clang)',
'make_clang_dir%': 'third_party/llvm-build/Release+Asserts',
+ # Control which version of clang to use when 'clang' is set to 1 when
+ # building for iOS (Apple has not yet open-sourced support for "arm64"
+ # so when building for that 'target_arch' we have to use clang shipped
+ # with Xcode that does not supports some flags).
+ # TODO(sdefresne): remove this once http://crbug.com/341453 is fixed.
+ 'clang_xcode%': 0,
+
# These two variables can be set in GYP_DEFINES while running
# |gclient runhooks| to let clang run a plugin in every compilation.
# Only has an effect if 'clang=1' is in GYP_DEFINES as well.
'linux_link_gsettings%': 0,
# Default arch variant for MIPS.
- 'mips_arch_variant%': 'mips32r2',
+ 'mips_arch_variant%': 'mips32r1',
# Enable use of OpenMAX DL FFT routines.
'use_openmax_dl_fft%': '<(use_openmax_dl_fft)',
# TODO(thakis): Make this a blacklist instead, http://crbug.com/101600
'enable_wexit_time_destructors%': 0,
+ # Build libpeerconnection as a static library by default.
+ 'libpeer_target_type%': 'static_library',
+
# Set to 1 to compile with the built in pdf viewer.
'internal_pdf%': 0,
# can use breakpad for these builds.
'release_unwind_tables%': 0,
}],
- # TODO(jungshik): Turn this on on Android and CrOS as well.
- ['OS!="android" and chromeos==0', {
+ # TODO(jungshik): Turn this on on Android.
+ # For ChromeOS, this should be turned on in chromeos-chrome.ebuild
+ # file as well by adding icu_use_data_file_flag=1 to BUILD_DEFINES.
+ ['OS!="android"', {
'icu_use_data_file_flag%': 1,
}],
],
}], # os_posix==1 and OS!="mac" and OS!="ios"
+ ['OS=="mac"', {
+ 'icu_use_data_file_flag%': 1,
+ }], # os=="mac"
['OS=="ios"', {
'disable_nacl%': 1,
'enable_background%': 0,
- 'enable_task_manager%': 0,
'icu_use_data_file_flag%': 1,
'use_system_libxml%': 1,
'use_system_sqlite%': 1,
'android_sdk_root%': '<!(cd <(DEPTH) && pwd -P)/third_party/android_tools/sdk/',
'android_host_arch%': '<!(uname -m)',
# Android API-level of the SDK used for compilation.
- 'android_sdk_version%': '<!(/bin/echo -n ${ANDROID_SDK_VERSION})',
- # Android SDK build tools (e.g. dx, aapt, aidl)
- 'android_sdk_tools%': '<!(/bin/echo -n ${ANDROID_SDK_TOOLS})',
+ 'android_sdk_version%': '19',
+ 'android_sdk_build_tools_version%': '19.0.0',
+ 'host_os%': "<!(uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/')",
},
# Copy conditionally-set variables out one scope.
'android_ndk_root%': '<(android_ndk_root)',
'android_sdk_root%': '<(android_sdk_root)',
'android_sdk_version%': '<(android_sdk_version)',
- 'android_sdk_tools%': '<(android_sdk_tools)',
'android_stlport_root': '<(android_ndk_root)/sources/cxx-stl/stlport',
+ 'host_os%': '<(host_os)',
'android_sdk%': '<(android_sdk_root)/platforms/android-<(android_sdk_version)',
+ # Android SDK build tools (e.g. dx, aapt, aidl)
+ 'android_sdk_tools%': '<(android_sdk_root)/build-tools/<(android_sdk_build_tools_version)',
# Android API level 14 is ICS (Android 4.0) which is the minimum
# platform requirement for Chrome on Android, we use it for native
'android_stlport_root': '<(android_stlport_root)',
'android_stlport_include': '<(android_stlport_root)/stlport',
'android_stlport_libs_dir': '<(android_stlport_root)/libs/<(android_app_abi)',
+ 'host_os%': '<(host_os)',
# Location of the "strip" binary, used by both gyp and scripts.
'android_strip%' : '<!(/bin/echo -n <(android_toolchain)/*-strip)',
'use_openssl%': 1,
'proprietary_codecs%': '<(proprietary_codecs)',
- 'enable_task_manager%': 0,
'safe_browsing%': 2,
'input_speech%': 0,
'enable_automation%': 0,
# Sessions are store separately in the Java side.
'enable_session_service%': 0,
- # Set to 1 once we have a notification system for Android.
- # http://crbug.com/115320
- 'notifications%': 0,
-
'p2p_apis%' : 0,
'gtest_target_type%': 'shared_library',
},{
'msvs_large_module_debug_link_mode%': '2', # Yes
}],
- ['MSVS_VERSION=="2012e" or MSVS_VERSION=="2010e"', {
+ ['MSVS_VERSION=="2013e" or MSVS_VERSION=="2012e" or MSVS_VERSION=="2010e"', {
'msvs_express%': 1,
'secure_atl%': 0,
},{
['toolkit_views==1', {
'grit_defines': ['-D', 'toolkit_views'],
}],
+ ['toolkit_uses_gtk==1', {
+ 'grit_defines': ['-D', 'toolkit_uses_gtk'],
+ }],
['use_aura==1', {
'grit_defines': ['-D', 'use_aura'],
}],
['"<(GENERATOR)"=="ninja"', {
'clang%': 1,
'host_os%': "mac",
- }]
+ }],
+ # Apple has not upstreamed the support for "arm64" yet, so when
+ # building for "arm64" or "both", we need to use the clang that
+ # is provided with Xcode.
+ ['target_subarch!="arm32"', {
+ 'clang_xcode%': 1,
+ }],
],
}],
['enable_extensions==1', {
'grit_defines': ['-D', 'enable_extensions'],
}],
['enable_plugins!=0', {
-
'grit_defines': ['-D', 'enable_plugins'],
}],
['enable_printing!=0', {
['enable_enhanced_bookmarks==1', {
'grit_defines': ['-D', 'enable_enhanced_bookmarks'],
}],
+ ['enable_hangout_services_extension==1', {
+ 'grit_defines': ['-D', 'enable_hangout_services_extension'],
+ }],
+ ['enable_task_manager==1', {
+ 'grit_defines': ['-D', 'enable_task_manager'],
+ }],
+ ['notifications==1', {
+ 'grit_defines': ['-D', 'enable_notifications'],
+ }],
['clang_use_chrome_plugins==1 and OS!="win"', {
'clang_chrome_plugins_flags': [
'<!@(<(DEPTH)/tools/clang/scripts/plugin_flags.sh)'
],
}],
+ ['asan==1 and OS=="win"', {
+ # TODO(hans): Remove once users set syzyasan (crbug.com/343960).
+ 'syzyasan%': 1,
+ }],
['asan==1 and OS!="win"', {
+ # TODO(hans): Windows should use Clang-based ASan (crbug.com/343960).
'clang%': 1,
}],
['asan==1 and OS=="mac"', {
}],
['arm_version==7 and android_webview_build==0', {
'arm_arch%': 'armv7-a',
- 'arm_tune%': 'cortex-a8',
+ 'arm_tune%': '',
'conditions': [
['arm_neon==1', {
'arm_fpu%': 'neon',
'mac_release_optimization%': '3', # Use -O3 unless overridden
'mac_debug_optimization%': '0', # Use -O0 unless overridden
}],
+ ['OS=="android"', {
+ 'host_os%': '<(host_os)', # See comment above chromium_code.
+ }],
],
},
'defines': [
['use_udev==1', {
'defines': ['USE_UDEV'],
}],
- ['icu_use_data_file_flag==1', {
- 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE'],
- }, { # else icu_use_data_file_flag !=1
- 'conditions': [
- ['OS=="win"', {
- 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_SHARED'],
- }, {
- 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC'],
- }],
- ],
- }],
['fastbuild!=0', {
'xcode_settings': {
'GCC_GENERATE_DEBUGGING_SYMBOLS': 'NO',
'ENABLE_EGLIMAGE=1',
],
}],
- ['asan==1 and OS=="win"', {
- # Since asan on windows uses Syzygy, we need /PROFILE turned on to
- # produce appropriate pdbs.
+ ['syzyasan==1', {
+ # SyzyAsan needs /PROFILE turned on to produce appropriate pdbs.
'msvs_settings': {
'VCLinkerTool': {
'Profile': 'true',
'ADDRESS_SANITIZER',
'MEMORY_TOOL_REPLACES_ALLOCATOR',
],
- }], # asan==1 and OS=="win"
+ }],
['OS=="win"', {
'defines': [
'__STD_C',
['enable_enhanced_bookmarks==1', {
'defines': ['ENABLE_ENHANCED_BOOKMARKS=1'],
}],
+ ['enable_hangout_services_extension==1', {
+ 'defines': ['ENABLE_HANGOUT_SERVICES_EXTENSION=1'],
+ }],
['enable_ipc_fuzzer==1', {
'defines': ['ENABLE_IPC_FUZZER=1'],
}],
+ ['OS=="win" and component=="shared_library"', {
+ 'dependencies': [
+ # All targets in a component build must depend on chrome_redirects,
+ # to ensure that certain calls go through it.
+ '<(DEPTH)/chrome_elf/chrome_elf.gyp:chrome_redirects',
+ ],
+ }],
], # conditions for 'target_defaults'
'target_conditions': [
['enable_wexit_time_destructors==1', {
'abstract': 1,
'msvs_settings': {
'VCLinkerTool': {
+ 'MinimumRequiredVersion': '5.01', # XP.
'TargetMachine': '1',
},
'VCLibrarianTool': {
['win_use_allocator_shim==0', {
'defines': ['NO_TCMALLOC'],
}],
- ['os_posix==1', {
+ # _FORTIFY_SOURCE isn't really supported by Clang now, see
+ # http://llvm.org/bugs/show_bug.cgi?id=16821.
+ # TODO(glider): once the bug is fixed, disable source fortification
+ # under the sanitizer tools only.
+ ['os_posix==1 and (OS!="linux" or clang!=1)', {
'target_conditions': [
['chromium_code==1', {
# Non-chromium code is not guaranteed to compile cleanly
# Clang does not support the following options.
'-fuse-ld=gold',
],
+ 'ldflags': [
+ # As long as -fuse-ld=gold doesn't work, add a dummy directory
+ # with an 'ld' that redirects to gold, so that clang uses gold.
+ '-B<(PRODUCT_DIR)/../../build/android/arm-linux-androideabi-gold',
+ ],
}],
['asan==1', {
'cflags': [
'-Wno-extra', # Enabled by -Wextra, but no specific flag
'-Wno-ignored-qualifiers',
'-Wno-type-limits',
+ '-Wno-unused-but-set-variable',
],
'cflags_cc': [
# Other things unrelated to -Wextra:
# Note that the prebuilt Clang binaries should not be used for iOS
# development except for ASan builds.
['clang==1', {
- 'CC': '$(SOURCE_ROOT)/<(clang_dir)/clang',
- 'LDPLUSPLUS': '$(SOURCE_ROOT)/<(clang_dir)/clang++',
-
# gnu++11 instead of c++11 is needed because some code uses
# typeof() (a GNU extension).
# TODO(thakis): Eventually switch this to c++11 instead of
# Warns when a const char[] is converted to bool.
'-Wstring-conversion',
+ ],
- # Clang considers the `register` keyword as deprecated, but e.g.
- # code generated by flex (used in angle) contains that keyword.
- # http://crbug.com/255186
- '-Wno-deprecated-register',
+ 'conditions': [
+ ['clang_xcode==0', {
+ 'CC': '$(SOURCE_ROOT)/<(clang_dir)/clang',
+ 'LDPLUSPLUS': '$(SOURCE_ROOT)/<(clang_dir)/clang++',
+
+ 'WARNING_CFLAGS': [
+ # Clang considers the `register` keyword as deprecated, but
+ # e.g. code generated by flex (used in angle) contains that
+ # keyword. http://crbug.com/255186
+ #
+ # Note: clang as shipped with Xcode is older and does not
+ # treat the `register` as deprecated and does not define
+ # this flag, so don't enable it if "clang_xcode" is "1".
+ '-Wno-deprecated-register',
+ ],
+ }],
],
}],
- ['clang==1 and clang_use_chrome_plugins==1', {
+ ['clang==1 and clang_xcode==0 and clang_use_chrome_plugins==1', {
'OTHER_CFLAGS': [
'<@(clang_chrome_plugins_flags)',
],
}],
- ['clang==1 and clang_load!=""', {
+ ['clang==1 and clang_xcode==0 and clang_load!=""', {
'OTHER_CFLAGS': [
'-Xclang', '-load', '-Xclang', '<(clang_load)',
],
}],
- ['clang==1 and clang_add_plugin!=""', {
+ ['clang==1 and clang_xcode==0 and clang_add_plugin!=""', {
'OTHER_CFLAGS': [
'-Xclang', '-add-plugin', '-Xclang', '<(clang_add_plugin)',
],
# Match OS X clang C++11 warning settings.
'-Wno-c++11-narrowing',
],
+
+ # Limit the valid architectures depending on "target_subarch".
+ # This need to include the "arm" architectures but also the "x86"
+ # ones (they are used when building for the simulator).
+ 'conditions': [
+ ['target_subarch=="arm32"', {
+ 'VALID_ARCHS': ['armv7', 'i386'],
+ }],
+ ['target_subarch=="arm64"', {
+ 'VALID_ARCHS': ['arm64', 'x86_64'],
+ }],
+ ['target_subarch=="both"', {
+ 'VALID_ARCHS': ['arm64', 'armv7', 'x86_64', 'i386'],
+ }],
+ ],
},
'target_conditions': [
['_toolset=="host"', {
'xcode_settings': {
'SDKROOT': 'macosx<(mac_sdk)', # -isysroot
'MACOSX_DEPLOYMENT_TARGET': '<(mac_deployment_target)',
+ 'VALID_ARCHS': [
+ 'x86_64',
+ ],
'ARCHS': [
- 'x86_64'
+ 'x86_64',
],
},
}],
# since we can't negate the iphone deployment target above, we
# instead set it here for target only.
'IPHONEOS_DEPLOYMENT_TARGET': '<(ios_deployment_target)',
+ 'ARCHS': ['$(ARCHS_STANDARD_INCLUDING_64_BIT)'],
},
}],
['_type=="executable"', {
'<(windows_driver_kit_path)/inc/mfc42',
],
'target_conditions': [
- ['chromium_code', {
+ ['chromium_code and MSVS_VERSION=="2010e"', {
# Workaround for intsafe in 2010 Express + WDK.
# ATL code uses intsafe.h and both intsafe.h and stdint.h
# define INT8_MIN et al.
# We can't use this workaround in third_party code because
# it has various levels of intolerance for including stdint.h.
+ # This is not necessary in 2013e, and should be removed once
+ # mainline is switched: http://crbug.com/340358.
'msvs_system_include_dirs': [
'<(DEPTH)/build',
],
'<(windows_sdk_path)/Include/winrt',
'$(VSInstallDir)/VC/atlmfc/include',
],
- 'msvs_cygwin_dirs': ['<(DEPTH)/third_party/cygwin'],
'msvs_cygwin_shell': 0,
'msvs_disabled_warnings': [4351, 4355, 4396, 4503, 4819,
# TODO(maruel): These warnings are level 4. They will be slowly
'-Wno-deprecated-register',
'-Wno-empty-body',
'-Wno-enum-conversion',
+ '-Wno-extra-tokens',
+ '-Wno-ignored-attributes',
'-Wno-incompatible-pointer-types',
+ '-Wno-int-to-void-pointer-cast',
+ '-Wno-invalid-noreturn',
'-Wno-logical-op-parentheses',
'-Wno-microsoft',
'-Wno-missing-braces',
+ '-Wno-missing-declarations',
'-Wno-msvc-include',
'-Wno-null-dereference',
'-Wno-overloaded-virtual',
'-Wno-reorder',
'-Wno-return-type-c-linkage',
'-Wno-self-assign',
+ '-Wno-sometimes-uninitialized',
'-Wno-switch',
'-Wno-tautological-compare',
'-Wno-unknown-pragmas',
'-ferror-limit=1',
],
},
+ 'conditions': [
+ ['MSVS_VERSION=="2013" or MSVS_VERSION=="2013e"', {
+ 'VCCLCompilerTool': {
+ 'AdditionalOptions': [
+ '-fmsc-version=1800',
+ ],
+ },
+ }],
+ ['MSVS_VERSION=="2010" or MSVS_VERSION=="2010e"', {
+ 'VCCLCompilerTool': {
+ 'AdditionalOptions': [
+ '-fmsc-version=1600',
+ ],
+ },
+ }],
+ ],
}],
],
},
'/nxcompat',
],
'conditions': [
- ['asan==0', {
+ ['syzyasan==0', {
'AdditionalOptions': ['/largeaddressaware'],
}],
],
],
},
}],
- ['clang==1', {
+ ['clang==1 and ((OS!="mac" and OS!="ios") or clang_xcode==0) '
+ 'and OS!="win"', {
'make_global_settings': [
['CC', '<(make_clang_dir)/bin/clang'],
['CXX', '<(make_clang_dir)/bin/clang++'],
['CXX.host', '$(CXX)'],
],
}],
+ ['clang==1 and OS=="win"', {
+ 'make_global_settings': [
+ # On Windows, gyp's ninja generator only looks at CC.
+ ['CC', '<(make_clang_dir)/bin/clang-cl'],
+ ],
+ }],
['OS=="android" and clang==0', {
# Hardcode the compiler names in the Makefile so that
# it won't depend on the environment at make time.
# TODO(yyanagisawa): supports GENERATOR==make
# make generator doesn't support CC_wrapper without CC
# in make_global_settings yet.
- ['use_goma==1 and ("<(GENERATOR)"=="ninja" or clang==1)', {
+ ['use_goma==1 and ((OS!="mac" and OS!="ios") or clang_xcode==0) and '
+ '("<(GENERATOR)"=="ninja" or clang==1)', {
'make_global_settings': [
['CC_wrapper', '<(gomadir)/gomacc'],
['CXX_wrapper', '<(gomadir)/gomacc'],
['OS=="ios"', {
# Target both iPhone and iPad.
'TARGETED_DEVICE_FAMILY': '1,2',
- 'VALID_ARCHS': 'armv7 i386',
}, { # OS!="ios"
'conditions': [
['target_arch=="x64"', {