This repository has been archived by the owner on Jan 6, 2023. It is now read-only.
/
chromiumcontent.gypi
139 lines (139 loc) · 4.26 KB
/
chromiumcontent.gypi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
{
'variables': {
# Don't use nacl.
'disable_nacl': 1,
# Enable using proprietary codecs.
'proprietary_codecs': 1,
# Build ffmpeg as shared library.
'ffmpeg_component': 'shared_library',
# Enable support for Widevine CDM.
'enable_widevine': 1,
# Using libc++ requires building for >= 10.7.
'mac_deployment_target': '10.8',
# Use the standard way of linking with msvc runtime.
'win_use_allocator_shim': 0,
# The V8 libraries.
'v8_libraries': '["v8", "v8_snapshot", "v8_nosnapshot", "v8_external_snapshot", "v8_base", "v8_libbase", "v8_libplatform"]',
# The icu libraries.
'icu_libraries': '["icui18n", "icuuc"]',
'conditions': [
['OS=="win"', {
# On Chrome 41 this is disabled on Windows.
'v8_use_external_startup_data': 1,
}],
['OS=="linux"', {
# Enable high DPI support on Linux.
'enable_hidpi': 1,
# Use Dbus.
'use_dbus': 1,
# Make Linux build contain debug symbols, this flag will add '-g' to
# cflags.
'linux_dump_symbols': 1,
# Force using gold linker.
'linux_use_bundled_gold': 1,
'conditions': [
['target_arch=="arm"', {
'arm_version': 7,
'arm_float_abi': 'hard',
}],
['target_arch=="ia32"', {
# The |character_data_generator| target depends on |icuuc#host|, and
# for ia32 targets the latter always builds ia32 binaries for x64
# host.
# We should be able to remove this after switching to GN build.
'generate_character_data': 0,
}],
],
}],
],
},
'target_defaults': {
'msvs_disabled_warnings': [
# class 'std::xx' needs to have dll-interface. Chrome turns this off
# for component builds, and we need to too.
4251,
# The file contains a character that cannot be represented in these
# current code page
4819,
# no matching operator delete found; memory will not be freed if
# initialization throws an exception
4291,
# non dll-interface class used as base for dll-interface class
4275,
# 'GetVersionExW': was declared deprecated
4996,
# result of 32-bit shift implicitly converted to 64 bits
4334,
],
'xcode_settings': {
'WARNING_CFLAGS': [
'-Wno-deprecated-declarations',
],
# Use C++11 library.
'CLANG_CXX_LIBRARY': 'libc++', # -stdlib=libc++
},
# Force exporting icu's symbols.
'defines': [
'U_COMBINED_IMPLEMENTATION',
# Defining "U_COMBINED_IMPLEMENTATION" will add "explicit" for some
# constructors, make sure it doesn' happen.
'UNISTR_FROM_CHAR_EXPLICIT=',
'UNISTR_FROM_STRING_EXPLICIT=',
'U_NO_DEFAULT_INCLUDE_UTF_HEADERS=0',
],
'defines!': [
'U_STATIC_IMPLEMENTATION',
],
'conditions': [
['OS=="linux" and target_arch=="arm"', {
# Work around ODR violations.
'ldflags!': [
'-Wl,--detect-odr-violations',
],
}],
['mac_mas_build==1', {
'defines': [
'MAS_BUILD',
],
}],
],
'target_conditions': [
['_type=="static_library" and _toolset=="target" and OS=="linux"', {
'standalone_static_library': 1,
}],
['_target_name in <(v8_libraries) + <(icu_libraries)', {
'xcode_settings': {
'DEAD_CODE_STRIPPING': 'NO', # -Wl,-dead_strip
'GCC_INLINES_ARE_PRIVATE_EXTERN': 'NO',
'GCC_SYMBOLS_PRIVATE_EXTERN': 'NO',
},
'cflags!': [
'-fvisibility=hidden',
'-fdata-sections',
'-ffunction-sections',
],
'cflags_cc!': ['-fvisibility-inlines-hidden'],
}],
['_target_name in <(v8_libraries) + ["mksnapshot"]', {
'defines': [
'V8_SHARED',
'BUILDING_V8_SHARED',
],
}],
['_target_name in ["gtk2ui"]', {
'type': 'static_library',
'standalone_static_library': 1,
'cflags': [
'-Wno-sentinel',
],
}],
['_target_name=="ui_base"', {
'xcode_settings': {
'WARNING_CFLAGS': [
'-Wno-partial-availability',
],
},
}],
],
},
}