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

Unified Diff: build/common.gypi

Issue 1128733002: Update from https://crrev.com/328418 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « build/apk_test.gypi ('k') | build/config/BUILD.gn » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/common.gypi
diff --git a/build/common.gypi b/build/common.gypi
index c5a8facb9e1122e7fce09a5cdfaca06c486d7047..a4062488aeb1a10bd828b3844bb49e5d0722888d 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -173,6 +173,7 @@
# The system root for cross-compiles. Default: none.
'sysroot%': '',
+ 'use_sysroot%': 0,
'chroot_cmd%': '',
# The system libdir used for this ABI.
@@ -416,9 +417,6 @@
# See https://code.google.com/p/sawbuck/wiki/SyzyASanHowTo
'syzyasan%': 0,
- # Enable crash reporting via Kasko.
- 'kasko%': 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
@@ -941,7 +939,7 @@
'sysroot%': '<!(cd <(DEPTH) && pwd -P)/chrome/installer/linux/debian_wheezy_arm-sysroot',
}], # OS=="linux" and target_arch=="arm" and chromeos==0
- ['OS=="linux" and branding=="Chrome" and buildtype=="Official" and chromeos==0', {
+ ['OS=="linux" and ((branding=="Chrome" and buildtype=="Official" and chromeos==0) or use_sysroot==1)' , {
'conditions': [
['target_arch=="x64"', {
'sysroot%': '<!(cd <(DEPTH) && pwd -P)/chrome/installer/linux/debian_wheezy_amd64-sysroot',
@@ -1011,6 +1009,15 @@
}, {
'sas_dll_path%': '<(DEPTH)/third_party/platformsdk_win7/files/redist/x86',
}],
+
+ # Enable crash reporting via Kasko.
+ ['OS=="win" and target_arch=="ia32"', {
+ # TODO(erikwright): This should be disabled after a single ship on Canary channel.
+ 'kasko%': 1,
+ }, {
+ 'kasko%': 0,
+ }],
+
],
# Setting this to '0' will cause V8's startup snapshot to be
@@ -1688,7 +1695,7 @@
'android_ndk_absolute_root%': '<(android_ndk_absolute_root)',
'android_sdk_root%': '<(android_sdk_root)',
'android_sdk_version%': '<(android_sdk_version)',
- 'android_stlport_root': '<(android_ndk_root)/sources/cxx-stl/stlport',
+ 'android_libcpp_root': '<(android_ndk_root)/sources/cxx-stl/llvm-libc++',
'host_os%': '<(host_os)',
'android_sdk%': '<(android_sdk_root)/platforms/android-<(android_sdk_version)',
@@ -1764,9 +1771,9 @@
'android_sdk%': '<(android_sdk)',
'android_sdk_jar%': '<(android_sdk)/android.jar',
- 'android_stlport_root': '<(android_stlport_root)',
- 'android_stlport_include': '<(android_stlport_root)/stlport',
- 'android_stlport_libs_dir': '<(android_stlport_root)/libs/<(android_app_abi)',
+ 'android_libcpp_root': '<(android_libcpp_root)',
+ 'android_libcpp_include': '<(android_libcpp_root)/libcxx/include',
+ 'android_libcpp_libs_dir': '<(android_libcpp_root)/libs/<(android_app_abi)',
'host_os%': '<(host_os)',
# Location of the "objcopy" binary, used by both gyp and scripts.
@@ -1929,9 +1936,14 @@
},{
'winsdk_arch%': '<(target_arch)',
}],
- ['component=="shared_library"', {
+ ['component=="shared_library" or MSVS_VERSION == "2015"', {
+ # TODO(scottmg): The allocator shimming doesn't work on the 2015 CRT
+ # and we are hoping to be able to remove it if an additional feature
+ # lands in the 2015 CRT API. For now, don't shim and revisit once
+ # VS2015 is RTM: http://crbug.com/481611.
'win_use_allocator_shim%': 0,
- },{
+ }],
+ ['component=="static_library"', {
# Turn on multiple dll by default on Windows when in static_library.
'chrome_multiple_dll%': 1,
}],
@@ -2168,17 +2180,23 @@
],
},
'clang_dynlib_flags%': '-Xclang -load -Xclang <(clang_lib_path) ',
+ 'clang_plugin_args%': '',
}, { # OS == "win"
# On Windows, the plugin is built directly into clang, so there's
# no need to load it dynamically.
'clang_dynlib_flags%': '',
+
+ # Don't error on plugin warnings on Windows until pre-existing warnings
+ # are cleaned up. https://crbug.com/467287
+ 'clang_plugin_args%': '-Xclang -plugin-arg-find-bad-constructs -Xclang warn-only',
}]
],
},
# If you change these, also change build/config/clang/BUILD.gn.
'clang_chrome_plugins_flags%':
'<(clang_dynlib_flags)'
- '-Xclang -add-plugin -Xclang find-bad-constructs',
+ '-Xclang -add-plugin -Xclang find-bad-constructs '
+ '<(clang_plugin_args)',
}],
['asan==1 or msan==1 or lsan==1 or tsan==1', {
'clang%': 1,
@@ -4085,9 +4103,6 @@
'cflags!': [
'-fstack-protector', # stack protector is always enabled on arm64.
],
- 'ldflags': [
- '-fuse-ld=gold',
- ],
}],
],
}],
@@ -4630,9 +4645,9 @@
# Figure this out early since it needs symbols from libgcc.a, so it
# has to be before that in the set of libraries.
['component=="shared_library"', {
- 'android_stlport_library': 'stlport_shared',
+ 'android_libcpp_library': 'c++_shared',
}, {
- 'android_stlport_library': 'stlport_static',
+ 'android_libcpp_library': 'c++_static',
}],
],
@@ -4712,17 +4727,17 @@
'-finline-limit=64',
'<@(release_extra_cflags)',
'--sysroot=<(android_ndk_sysroot)',
- # NOTE: The stlport header include paths below are specified in
+ # NOTE: The libc++ header include paths below are specified in
# cflags rather than include_dirs because they need to come
# after include_dirs.
# The include ordering here is important; change with caution.
- '-isystem<(android_stlport_include)',
+ '-isystem<(android_libcpp_include)',
+ '-isystem<(android_ndk_root)/sources/cxx-stl/llvm-libc++abi/libcxxabi/include',
+ '-isystem<(android_ndk_root)/sources/android/support/include',
],
'defines': [
'ANDROID',
'__GNU_SOURCE=1', # Necessary for clone()
- 'USE_STLPORT=1',
- '_STLP_USE_PTR_SPECIALIZATIONS=1',
'CHROME_BUILD_ID="<(chrome_build_id)"',
# The NDK has these things, but doesn't define the constants
# to say that it does. Define them here instead.
@@ -4735,11 +4750,11 @@
'-Wl,--no-undefined',
'--sysroot=<(android_ndk_sysroot)',
'-nostdlib',
- '-L<(android_stlport_libs_dir)',
- # Don't allow visible symbols from libgcc or stlport to be
+ '-L<(android_libcpp_libs_dir)',
+ # Don't allow visible symbols from libgcc or libc++ to be
# re-exported.
'-Wl,--exclude-libs=libgcc.a',
- '-Wl,--exclude-libs=libstlport_static.a',
+ '-Wl,--exclude-libs=libc++_static.a',
# Don't allow visible symbols from libraries that contain
# assembly code with symbols that aren't hidden properly.
# http://crbug.com/448386
@@ -4752,7 +4767,8 @@
'-Wl,--exclude-libs=libvpx.a',
],
'libraries': [
- '-l<(android_stlport_library)',
+ '-l<(android_libcpp_library)',
+ '-latomic',
# Manually link the libgcc.a that the cross compiler uses.
'<!(<(android_toolchain)/*-gcc -print-libgcc-file-name)',
'-lc',
@@ -4772,6 +4788,11 @@
],
}],
['clang==1', {
+ 'libraries!': [
+ # Clang with libc++ does not require an explicit atomic
+ # library reference.
+ '-latomic',
+ ],
'cflags': [
# Work around incompatibilities between bionic and clang
# headers.
@@ -5119,6 +5140,22 @@
}],
],
},
+ 'configurations': {
+ 'Release_Base': {
+ 'conditions': [
+ ['branding=="Chrome" and buildtype=="Official"', {
+ 'xcode_settings': {
+ 'OTHER_CFLAGS': [
+ # The Google Chrome Framework dSYM generated by dsymutil has
+ # grown larger than 4GB, which dsymutil can't handle. Reduce
+ # the amount of debug symbols.
+ '-fno-standalone-debug', # See http://crbug.com/479841
+ ]
+ },
+ }],
+ ],
+ }, # configuration "Release"
+ }, # configurations
'xcode_settings': {
'GCC_DYNAMIC_NO_PIC': 'NO', # No -mdynamic-no-pic
# (Equivalent to -fPIC)
@@ -5136,16 +5173,6 @@
# specified or not.
'-fno-strict-aliasing', # See http://crbug.com/32204.
],
- 'conditions': [
- ['branding=="Chrome" and buildtype=="Official"', {
- 'OTHER_CFLAGS': [
- # The Google Chrome Framework dSYM generated by dsymutil has
- # grown larger than 4GB, which dsymutil can't handle. Reduce
- # the amount of debug symbols.
- '-gline-tables-only', # See http://crbug.com/479841
- ]
- }],
- ],
},
'target_conditions': [
['_type=="executable"', {
@@ -5769,13 +5796,20 @@
'AdditionalOptions': [
'-fsanitize-coverage=<(sanitizer_coverage)',
],
- 'defines': [
- 'SANITIZER_COVERAGE',
- ],
},
}],
],
},
+ 'conditions': [
+ ['sanitizer_coverage!=0', {
+ # TODO(asan/win): Move this down into the general
+ # win-target_defaults section once the 64-bit asan runtime
+ # exists. See crbug.com/345874.
+ 'defines': [
+ 'SANITIZER_COVERAGE',
+ ],
+ }],
+ ],
},
'x64_Base': {
'msvs_settings': {
« no previous file with comments | « build/apk_test.gypi ('k') | build/config/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698