Source release 16.4.0
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
export_variables = {
|
||||
'CC': 'clang',
|
||||
'CXX': 'clang++',
|
||||
'AR': 'ar',
|
||||
'LD': 'clang++',
|
||||
'GYP_CROSSCOMPILE': '1',
|
||||
'CLANG_BUILD': '1',
|
||||
}
|
||||
|
||||
@@ -16,48 +16,59 @@
|
||||
'-fvisibility=hidden',
|
||||
'-fno-common',
|
||||
'-Wno-unknown-warning-option',
|
||||
|
||||
# Enable many warnings, and treat warnings as errors. Note that, for
|
||||
# cross-compatibility reasons between GCC and Clang, we cannot just use
|
||||
# -Werror to treat warnings as errors, as GCC has no equivalent of
|
||||
# -Wno-unknown-warning-option.
|
||||
'-Werror=all',
|
||||
'-Werror=extra',
|
||||
'-Werror=unused',
|
||||
'-Werror=format=2',
|
||||
'-Werror=format-nonliteral',
|
||||
'-Werror=format-signedness',
|
||||
'-Werror=cast-align',
|
||||
'-Werror=return-type',
|
||||
'-Werror=shadow',
|
||||
|
||||
'-Wno-unused-parameter', # OEC Ref requires this
|
||||
'-Wno-dangling-else', # Allowed by Google C++ Style
|
||||
],
|
||||
# These are flags passed to the compiler for plain C only.
|
||||
'cflags_c': [
|
||||
# Compile using the C11 standard with POSIX extensions
|
||||
'-std=c11',
|
||||
'-D_POSIX_C_SOURCE=200809L',
|
||||
# Warn on bad function casts
|
||||
|
||||
# Enable C-specific warnings
|
||||
'-Wbad-function-cast',
|
||||
'-Wno-error=bad-function-cast',
|
||||
'-Wcast-qual',
|
||||
'-Wno-error=cast-qual',
|
||||
],
|
||||
# These are flags passed to the compiler for C++ only.
|
||||
'cflags_cc': [
|
||||
# Compile using the C++11 standard.
|
||||
'-std=c++11',
|
||||
# Disable unused C++ features that are expensive.
|
||||
'-fno-rtti',
|
||||
# CE CDM does not use exceptions, and they are expensive.
|
||||
'-fno-exceptions',
|
||||
# Enable all warnings, and treat warnings as errors.
|
||||
'-Wall',
|
||||
'-Werror',
|
||||
'-Wextra',
|
||||
'-Wunused',
|
||||
'-Wcast-qual',
|
||||
'-Wno-long-long',
|
||||
'-Wno-variadic-macros',
|
||||
'-Wno-inline',
|
||||
'-Wformat=2',
|
||||
'-Wno-format-nonliteral',
|
||||
'-Wshadow',
|
||||
'-Wnon-virtual-dtor',
|
||||
#'-Woverloaded-virtual',
|
||||
#'-Wsuggest-override',
|
||||
#'-Wctor-dtor-privacy',
|
||||
'-Wcast-align',
|
||||
'-Wno-conversion',
|
||||
'-Wignored-qualifiers',
|
||||
'-Wreturn-type',
|
||||
#'-Wstrict-null-sentinel',
|
||||
#'-Wuseless-cast',
|
||||
'-Wno-unused-parameter', # repeated in protobufs triggers this
|
||||
'-Wno-unused-local-typedefs', # metrics requires this
|
||||
#'-Wno-maybe-uninitialized',
|
||||
'-Wno-dangling-else', # Allowed by Google C++ Style
|
||||
|
||||
# Enable C++-specific warnings
|
||||
'-Werror=cast-qual',
|
||||
'-Werror=non-virtual-dtor',
|
||||
'-Werror=strict-null-sentinel',
|
||||
'-Werror=useless-cast',
|
||||
|
||||
# TODO(b/156766290): We cannot enable these until we update to gTest 1.10
|
||||
# and update all our tests to use the new version of MOCK_METHOD that
|
||||
# allows specifying |override|.
|
||||
#
|
||||
#'-Werror=overloaded-virtual',
|
||||
#'-Werror=suggest-override',
|
||||
#'-Werror=zero-as-null-pointer-constant',
|
||||
|
||||
'-Wdeprecated-declarations',
|
||||
'-Wno-error=deprecated-declarations',
|
||||
],
|
||||
|
||||
# These are flags passed to the linker.
|
||||
@@ -80,37 +91,17 @@
|
||||
# These are settings specifically for the host toolchain.
|
||||
# The extra equals sign in the key name instructs gyp to replace
|
||||
# the generic settings above rather than append to them.
|
||||
'cflags=': [
|
||||
],
|
||||
'cflags=': [],
|
||||
|
||||
'cflags_c=': [
|
||||
],
|
||||
'cflags_c=': [],
|
||||
|
||||
'cflags_cc=': [
|
||||
'-Wcast-qual',
|
||||
# '-Wextra',
|
||||
'-Wno-unused',
|
||||
'-Wno-long-long',
|
||||
'-Wno-variadic-macros',
|
||||
'-Wno-inline',
|
||||
'-Wformat=2',
|
||||
'-Wno-format-nonliteral',
|
||||
'-Wnon-virtual-dtor',
|
||||
#'-Woverloaded-virtual',
|
||||
#'-Wctor-dtor-privacy',
|
||||
'-Wcast-align',
|
||||
'-Wno-ignored-qualifiers',
|
||||
'-Wno-return-type',
|
||||
],
|
||||
'cflags_cc=': [],
|
||||
|
||||
'ldflags=': [
|
||||
],
|
||||
'ldflags=': [],
|
||||
|
||||
'defines=': [
|
||||
],
|
||||
'defines=': [],
|
||||
|
||||
'include_dirs=': [
|
||||
],
|
||||
'include_dirs=': [],
|
||||
}], # end _toolset == "host" condition
|
||||
], # end target_conditions
|
||||
|
||||
@@ -118,24 +109,43 @@
|
||||
# These are additional settings per build configuration.
|
||||
# You may specify any of the keys above in this section
|
||||
# (cflags, cflags_c, cflags_cc, ldflags, defines, include_dirs).
|
||||
'Debug': {
|
||||
'debug': {
|
||||
'cflags': [
|
||||
'-O0',
|
||||
'-g',
|
||||
'-g3',
|
||||
|
||||
'-fsanitize=address,undefined,float-divide-by-zero,bounds',
|
||||
'-fno-sanitize-recover=address,undefined,float-divide-by-zero,bounds',
|
||||
'-fsanitize-address-use-after-scope',
|
||||
# These are the flags recommended by the Address Sanitizer team when
|
||||
# enabling Address Sanitizer.
|
||||
'-U_FORTIFY_SOURCE',
|
||||
'-O1',
|
||||
'-fno-omit-frame-pointer',
|
||||
'-fno-inline',
|
||||
'-fno-optimize-sibling-calls',
|
||||
],
|
||||
'cflags_cc': [
|
||||
# CE CDM does not use RTTI, but UBSan needs it for its vptr checks
|
||||
'-frtti',
|
||||
],
|
||||
'defines': [
|
||||
'_DEBUG',
|
||||
'_GLIBCXX_DEBUG',
|
||||
],
|
||||
'ldflags': [
|
||||
'-g',
|
||||
'-g3',
|
||||
'-fsanitize=address,undefined,float-divide-by-zero,bounds',
|
||||
],
|
||||
},
|
||||
'Release': {
|
||||
'release': {
|
||||
'cflags': [
|
||||
'-O2',
|
||||
'-g0',
|
||||
],
|
||||
'cflags_cc': [
|
||||
# CE CDM does not use RTTI, and it is expensive.
|
||||
'-fno-rtti',
|
||||
],
|
||||
'ldflags': [
|
||||
'-flto',
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user