blob: 1a7c672640e7542cffccfcdd7679d60cd4181712 [file] [log] [blame]
seanpaul@google.com1134f982011-09-15 14:24:33 +00001# conditions used in both common.gypi and skia.gyp in chromium
2#
3{
4 'conditions' : [
5
6 ['skia_os == "win"',
7 {
8 'defines': [
9 'SK_BUILD_FOR_WIN32',
10 'SK_IGNORE_STDINT_DOT_H',
bsalomon@google.com8b5abec2011-09-28 14:32:01 +000011 '_CRT_SECURE_NO_WARNINGS',
seanpaul@google.com1134f982011-09-15 14:24:33 +000012 ],
13 'msvs_cygwin_shell': 0,
14 'msvs_settings': {
15 'VCCLCompilerTool': {
16 'WarningLevel': '1',
17 'WarnAsError': 'false',
18 'DebugInformationFormat': '3',
seanpaul@google.com8f78fec2011-09-16 15:47:33 +000019 'AdditionalOptions': [ '/MP' ],
seanpaul@google.com1134f982011-09-15 14:24:33 +000020 },
21 'VCLinkerTool': {
22 'AdditionalDependencies': [
23 'OpenGL32.lib',
24 'usp10.lib',
25 ],
26 },
27 },
28 'configurations': {
29 'Debug': {
30 'msvs_settings': {
31 'VCCLCompilerTool': {
bsalomon@google.com8b5abec2011-09-28 14:32:01 +000032 'DebugInformationFormat': '4', # editAndContiue (/ZI)
bungeman@google.com7deaa3b2011-10-03 20:15:13 +000033 'ProgramDataBaseFileName': '$(OutDir)\\$(ProjectName).pdb',
seanpaul@google.com1134f982011-09-15 14:24:33 +000034 'Optimization': '0', # optimizeDisabled (/Od)
35 'PreprocessorDefinitions': ['_DEBUG'],
36 'RuntimeLibrary': '3', # rtMultiThreadedDebugDLL (/MDd)
bsalomon@google.com8b5abec2011-09-28 14:32:01 +000037 'ExceptionHandling': '0',
38 'RuntimeTypeInfo': 'false', # /GR-
39 'WarningLevel': '3', # level3 (/W3)
seanpaul@google.com1134f982011-09-15 14:24:33 +000040 },
41 'VCLinkerTool': {
bsalomon@google.com8b5abec2011-09-28 14:32:01 +000042 'GenerateDebugInformation': 'true', # /DEBUG
43 'LinkIncremental': '2', # /INCREMENTAL
seanpaul@google.com1134f982011-09-15 14:24:33 +000044 },
45 },
46 },
47 'Release': {
48 'msvs_settings': {
49 'VCCLCompilerTool': {
bsalomon@google.com8b5abec2011-09-28 14:32:01 +000050 'DebugInformationFormat': '3', # programDatabase (/Zi)
bungeman@google.com7deaa3b2011-10-03 20:15:13 +000051 'ProgramDataBaseFileName': '$(OutDir)\\$(ProjectName).pdb',
bsalomon@google.com8b5abec2011-09-28 14:32:01 +000052 'Optimization': '3', # full (/Ox)
53 'WholeProgramOptimization': 'true', #/GL
54 # Changing the floating point model requires rebaseling gm images
55 #'FloatingPointModel': '2', # fast (/fp:fast)
56 'FavorSizeOrSpeed': '1', # speed (/Ot)
seanpaul@google.com1134f982011-09-15 14:24:33 +000057 'PreprocessorDefinitions': ['NDEBUG'],
bsalomon@google.com8b5abec2011-09-28 14:32:01 +000058 'RuntimeLibrary': '2', # rtMultiThreadedDLL (/MD)
59 'ExceptionHandling': '0',
60 'RuntimeTypeInfo': 'false', # /GR-
61 'WarningLevel': '3', # level3 (/W3)
seanpaul@google.com1134f982011-09-15 14:24:33 +000062 },
63 'VCLinkerTool': {
bsalomon@google.com8b5abec2011-09-28 14:32:01 +000064 'GenerateDebugInformation': 'true', # /DEBUG
65 'LinkTimeCodeGeneration': '1', # useLinkTimeCodeGeneration /LTCG
seanpaul@google.com1134f982011-09-15 14:24:33 +000066 },
bungeman@google.com983297e2011-10-03 19:36:51 +000067 'VCLibrarianTool': {
68 'LinkTimeCodeGeneration': 'true', # useLinkTimeCodeGeneration /LTCG
69 },
seanpaul@google.com1134f982011-09-15 14:24:33 +000070 },
71 },
72 },
73 },
74 ],
75
76 ['skia_os in ["linux", "freebsd", "openbsd", "solaris"]',
77 {
78 'defines': [
79 'SK_SAMPLES_FOR_X',
80 'SK_BUILD_FOR_UNIX',
81 ],
82 'configurations': {
83 'Debug': {
84 'cflags': ['-g']
85 },
86 'Release': {
87 'cflags': ['-O2']
88 },
89 },
bsalomon@google.com31648eb2011-11-23 15:01:08 +000090 'cflags': [
91 '-Wall',
92 '-Wextra',
93 '-Wno-unused',
94 # suppressions below here were added for clang
95 '-Wno-unused-parameter',
96 '-Wno-c++11-extensions'
97 ],
seanpaul@google.com1134f982011-09-15 14:24:33 +000098 'include_dirs' : [
99 '/usr/include/freetype2',
100 ],
101 },
102 ],
103
104 ['skia_os == "mac"',
105 {
106 'defines': [
107 'SK_BUILD_FOR_MAC',
108 ],
109 'configurations': {
110 'Debug': {
111 'xcode_settings': {
112 'GCC_OPTIMIZATION_LEVEL': '0',
113 },
114 },
reed@google.come05cc8e2011-10-10 14:19:40 +0000115 'Release': {
116 'xcode_settings': {
117 'GCC_OPTIMIZATION_LEVEL': '3',
118 },
119 },
seanpaul@google.com1134f982011-09-15 14:24:33 +0000120 },
121 'xcode_settings': {
122 'SYMROOT': '<(DEPTH)/xcodebuild',
bsalomon@google.com4d5cb452011-10-12 18:12:11 +0000123 'SDKROOT': 'macosx10.6',
reed@google.com0069aa52011-11-17 15:35:47 +0000124# trying to get this to work, but it needs clang I think...
125# 'WARNING_CFLAGS': '-Wexit-time-destructors',
mike@reedtribe.orge51755f2011-12-10 19:36:56 +0000126 'CLANG_WARN_CXX0X_EXTENSIONS': 'NO',
seanpaul@google.com1134f982011-09-15 14:24:33 +0000127 },
128 },
129 ],
130
131 ['skia_os == "ios"',
132 {
133 'defines': [
134 'SK_BUILD_FOR_IOS',
135 ],
136 'configurations': {
137 'Debug': {
138 'xcode_settings': {
139 'GCC_OPTIMIZATION_LEVEL': '0',
140 },
141 },
142 },
143 'xcode_settings': {
144 'SYMROOT': '<(DEPTH)/xcodebuild',
145 },
146 },
147 ],
djsollen@google.com58629292011-11-03 13:08:29 +0000148
149 ['skia_os == "android"',
150 {
151 'defines': [
152 'ANDROID', # TODO: change these defines to SK_BUILD_FOR_ANDROID
153 'SK_BUILD_FOR_ANDROID',
154 'SK_BUILD_FOR_ANDROID_NDK',
155 ],
156 'configurations': {
157 'Debug': {
158 'cflags': ['-g']
159 },
160 'Release': {
161 'cflags': ['-O2']
162 },
163 },
164 'libraries': [
165 '-lstdc++',
166 '-lm',
djsollen@google.com318cf922011-11-08 19:03:43 +0000167 '-llog',
djsollen@google.com58629292011-11-03 13:08:29 +0000168 ],
djsollen@google.com44360bc2011-12-05 13:55:55 +0000169 'cflags': [
170 '-fno-exceptions',
171 '-fno-rtti',
172 ],
djsollen@google.com58629292011-11-03 13:08:29 +0000173 'conditions': [
djsollen@google.com3839ca12011-11-03 17:31:41 +0000174 [ 'skia_target_arch == "arm" and arm_thumb == 1', {
175 'cflags': [
176 '-mthumb',
177 ],
178 }],
djsollen@google.com58629292011-11-03 13:08:29 +0000179 [ 'skia_target_arch == "arm" and armv7 == 1', {
180 'defines': [
181 '__ARM_ARCH__=7',
182 ],
183 'cflags': [
184 '-march=armv7-a',
185 ],
186 'conditions': [
187 [ 'arm_neon == 1', {
188 'defines': [
189 '__ARM_HAVE_NEON',
190 ],
191 'cflags': [
192 '-mfloat-abi=softfp',
193 '-mfpu=neon',
194 ],
195 }],
196 ],
197 }],
198 ],
199 },
200 ],
seanpaul@google.com1134f982011-09-15 14:24:33 +0000201
202 ], # end 'conditions'
203}
204
205# Local Variables:
206# tab-width:2
207# indent-tabs-mode:nil
208# End:
209# vim: set expandtab tabstop=2 shiftwidth=2: