blob: ec521cf97153bd414a344115f8ffaad98c932b16 [file] [log] [blame]
epoger@google.comccdbd2c2011-06-02 14:38:23 +00001# GYP file to build various tools.
2#
3# To build on Linux:
4# ./gyp_skia tools.gyp && make tools
5#
epoger@google.comccdbd2c2011-06-02 14:38:23 +00006{
7 'includes': [
8 'apptype_console.gypi',
epoger@google.comccdbd2c2011-06-02 14:38:23 +00009 ],
10 'targets': [
11 {
12 # Build all executable targets defined below.
13 'target_name': 'tools',
14 'type': 'none',
15 'dependencies': [
edisonn@google.com8ba9a832013-01-18 18:06:22 +000016 'bench_pictures',
17 'filter',
18 'pinspect',
19 'render_pdfs',
20 'render_pictures',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000021 'skdiff',
22 'skhello',
23 'skimage',
24 ],
25 },
26 {
27 'target_name': 'skdiff',
28 'type': 'executable',
29 'sources': [
bungeman@google.come3c8ddf2012-12-05 20:13:12 +000030 '../tools/skdiff.cpp',
31 '../tools/skdiff.h',
32 '../tools/skdiff_html.cpp',
33 '../tools/skdiff_html.h',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000034 '../tools/skdiff_main.cpp',
bungeman@google.come3c8ddf2012-12-05 20:13:12 +000035 '../tools/skdiff_utils.cpp',
36 '../tools/skdiff_utils.h',
37 ],
38 'dependencies': [
39 'skia_base_libs.gyp:skia_base_libs',
40 'effects.gyp:effects',
41 'images.gyp:images',
42 ],
43 },
44 {
45 'target_name': 'skimagediff',
46 'type': 'executable',
47 'sources': [
48 '../tools/skdiff.cpp',
49 '../tools/skdiff.h',
50 '../tools/skdiff_html.cpp',
51 '../tools/skdiff_html.h',
52 '../tools/skdiff_image.cpp',
53 '../tools/skdiff_utils.cpp',
54 '../tools/skdiff_utils.h',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000055 ],
56 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +000057 'skia_base_libs.gyp:skia_base_libs',
djsollen@google.com41b46be2012-03-23 19:36:53 +000058 'effects.gyp:effects',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000059 'images.gyp:images',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000060 ],
61 },
62 {
63 'target_name': 'skhello',
64 'type': 'executable',
65 'sources': [
66 '../tools/skhello.cpp',
67 ],
68 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +000069 'skia_base_libs.gyp:skia_base_libs',
djsollen@google.com41b46be2012-03-23 19:36:53 +000070 'effects.gyp:effects',
scroggo@google.com09fd4d22013-03-20 14:20:18 +000071 'flags.gyp:flags',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000072 'images.gyp:images',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000073 ],
74 },
75 {
76 'target_name': 'skimage',
77 'type': 'executable',
78 'sources': [
79 '../tools/skimage_main.cpp',
80 ],
scroggo@google.com6843bdb2013-05-08 19:14:23 +000081 'include_dirs': [
82 # For SkBitmapHasher.h
83 '../src/utils/',
84 ],
epoger@google.comccdbd2c2011-06-02 14:38:23 +000085 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +000086 'skia_base_libs.gyp:skia_base_libs',
djsollen@google.com41b46be2012-03-23 19:36:53 +000087 'effects.gyp:effects',
scroggo@google.comb41ff952013-04-11 15:53:35 +000088 'flags.gyp:flags',
scroggo@google.com6843bdb2013-05-08 19:14:23 +000089 'gm.gyp:gm_expectations',
90 'images.gyp:images',
91 'jsoncpp.gyp:jsoncpp',
92 'utils.gyp:utils',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000093 ],
94 },
junov@chromium.org777442d2012-06-12 14:56:36 +000095 {
96 'target_name': 'render_pictures',
97 'type': 'executable',
98 'sources': [
99 '../tools/render_pictures_main.cpp',
keyar@chromium.orga2333d92012-07-16 17:29:16 +0000100 ],
101 'include_dirs': [
102 '../src/pipe/utils/',
junov@chromium.org777442d2012-06-12 14:56:36 +0000103 ],
104 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000105 'skia_base_libs.gyp:skia_base_libs',
keyar@chromium.org163b5672012-08-01 17:53:29 +0000106 'tools.gyp:picture_renderer',
twiz@google.coma31b8bb2012-06-22 18:24:56 +0000107 'tools.gyp:picture_utils',
scroggo@google.combb281f72013-03-18 21:37:39 +0000108 'ports.gyp:ports',
scroggo@google.comd9ba9a02013-03-21 19:43:15 +0000109 'flags.gyp:flags',
twiz@google.coma31b8bb2012-06-22 18:24:56 +0000110 ],
111 },
112 {
reed@google.com006db0f2012-06-27 19:33:29 +0000113 'target_name': 'bench_pictures',
114 'type': 'executable',
115 'sources': [
scroggo@google.com9a412522012-09-07 15:21:18 +0000116 '../bench/SkBenchLogger.h',
117 '../bench/SkBenchLogger.cpp',
118 '../bench/TimerData.h',
119 '../bench/TimerData.cpp',
keyar@chromium.orgcf6c44c2012-07-09 19:37:40 +0000120 '../tools/bench_pictures_main.cpp',
scroggo@google.com9a412522012-09-07 15:21:18 +0000121 '../tools/PictureBenchmark.cpp',
reed@google.com006db0f2012-06-27 19:33:29 +0000122 ],
123 'include_dirs': [
124 '../bench',
scroggo@google.comcc690202013-03-04 19:56:21 +0000125 '../src/lazy/',
reed@google.com006db0f2012-06-27 19:33:29 +0000126 ],
127 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000128 'skia_base_libs.gyp:skia_base_libs',
edisonn@google.comd966ab92012-09-05 19:43:46 +0000129 'effects.gyp:effects',
reed@google.com006db0f2012-06-27 19:33:29 +0000130 'tools.gyp:picture_utils',
keyar@chromium.org163b5672012-08-01 17:53:29 +0000131 'tools.gyp:picture_renderer',
132 'bench.gyp:bench_timer',
scroggo@google.combb281f72013-03-18 21:37:39 +0000133 'ports.gyp:ports',
scroggo@google.comd9ba9a02013-03-21 19:43:15 +0000134 'flags.gyp:flags',
scroggo@google.com9a412522012-09-07 15:21:18 +0000135 ],
keyar@chromium.org163b5672012-08-01 17:53:29 +0000136 },
137 {
borenet@google.comefb1d772012-10-10 19:45:51 +0000138 'target_name': 'picture_renderer',
139 'type': 'static_library',
140 'sources': [
scroggo@google.com4a26d9d2012-11-07 18:01:46 +0000141 '../tools/PictureRenderer.h',
keyar@chromium.org451bb9f2012-07-26 17:27:57 +0000142 '../tools/PictureRenderer.cpp',
scroggo@google.com161e1ba2013-03-04 16:41:06 +0000143 '../tools/PictureRenderingFlags.h',
144 '../tools/PictureRenderingFlags.cpp',
scroggo@google.com4a26d9d2012-11-07 18:01:46 +0000145 '../tools/CopyTilesRenderer.h',
146 '../tools/CopyTilesRenderer.cpp',
keyar@chromium.org451bb9f2012-07-26 17:27:57 +0000147 '../src/pipe/utils/SamplePipeControllers.h',
148 '../src/pipe/utils/SamplePipeControllers.cpp',
borenet@google.comefb1d772012-10-10 19:45:51 +0000149 ],
150 'include_dirs': [
junov@chromium.org9313ca42012-11-02 18:11:49 +0000151 '../src/core/',
borenet@google.comefb1d772012-10-10 19:45:51 +0000152 '../src/pipe/utils/',
153 '../src/utils/',
154 ],
155 'dependencies': [
156 'skia_base_libs.gyp:skia_base_libs',
borenet@google.combc766112012-09-10 16:20:47 +0000157 'effects.gyp:effects',
keyar@chromium.org9299ede2012-08-21 19:05:08 +0000158 'images.gyp:images',
keyar@chromium.org451bb9f2012-07-26 17:27:57 +0000159 'tools.gyp:picture_utils',
scroggo@google.com09fd4d22013-03-20 14:20:18 +0000160 'flags.gyp:flags',
borenet@google.comefb1d772012-10-10 19:45:51 +0000161 ],
robertphillips@google.comfe1b5362013-02-07 19:45:46 +0000162 'conditions': [
163 ['skia_gpu == 1',
164 {
165 'include_dirs' : [
166 '../src/gpu',
167 ],
168 },
169 ],
170 ],
borenet@google.comefb1d772012-10-10 19:45:51 +0000171 'export_dependent_settings': [
172 'images.gyp:images',
173 ],
keyar@chromium.org451bb9f2012-07-26 17:27:57 +0000174 },
175 {
edisonn@google.comc319abe2012-11-01 19:52:38 +0000176 'target_name': 'render_pdfs',
177 'type': 'executable',
178 'sources': [
179 '../tools/render_pdfs_main.cpp',
180 '../tools/PdfRenderer.cpp',
181 '../tools/PdfRenderer.h',
182 ],
183 'include_dirs': [
184 '../src/pipe/utils/',
185 '../src/utils/',
186 ],
187 'dependencies': [
188 'core.gyp:core',
189 'effects.gyp:effects',
190 'images.gyp:images',
191 'pdf.gyp:pdf',
192 'ports.gyp:ports',
193 'tools.gyp:picture_utils',
194 ],
edisonn@google.com184487c2013-03-08 18:00:16 +0000195 'conditions': [
borenet@google.com2d137b62013-03-08 23:13:33 +0000196 ['skia_win_debuggers_path and skia_os == "win"',
edisonn@google.com184487c2013-03-08 18:00:16 +0000197 {
198 'dependencies': [
199 'tools.gyp:win_dbghelp',
200 ],
201 },
202 ],
203 # VS static libraries don't have a linker option. We must set a global
204 # project linker option, or add it to each executable.
205 ['skia_win_debuggers_path and skia_os == "win" and '
borenet@google.com2d137b62013-03-08 23:13:33 +0000206 'skia_arch_width == 64',
edisonn@google.com184487c2013-03-08 18:00:16 +0000207 {
208 'msvs_settings': {
209 'VCLinkerTool': {
210 'AdditionalDependencies': [
211 '<(skia_win_debuggers_path)/x64/DbgHelp.lib',
212 ],
213 },
214 },
215 },
216 ],
217 ['skia_win_debuggers_path and skia_os == "win" and '
borenet@google.com2d137b62013-03-08 23:13:33 +0000218 'skia_arch_width == 32',
edisonn@google.com184487c2013-03-08 18:00:16 +0000219 {
220 'msvs_settings': {
221 'VCLinkerTool': {
222 'AdditionalDependencies': [
223 '<(skia_win_debuggers_path)/DbgHelp.lib',
224 ],
225 },
226 },
227 },
228 ],
229 ],
edisonn@google.comc319abe2012-11-01 19:52:38 +0000230 },
231 {
twiz@google.coma31b8bb2012-06-22 18:24:56 +0000232 'target_name': 'picture_utils',
233 'type': 'static_library',
234 'sources': [
235 '../tools/picture_utils.cpp',
borenet@google.come21795e2012-09-14 14:34:28 +0000236 '../tools/picture_utils.h',
twiz@google.coma31b8bb2012-06-22 18:24:56 +0000237 ],
238 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000239 'skia_base_libs.gyp:skia_base_libs',
junov@chromium.org777442d2012-06-12 14:56:36 +0000240 ],
241 },
reed@google.com1bdf7fe2012-06-14 18:58:40 +0000242 {
243 'target_name': 'pinspect',
244 'type': 'executable',
245 'sources': [
246 '../tools/pinspect.cpp',
247 ],
248 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000249 'skia_base_libs.gyp:skia_base_libs',
reed@google.com1bdf7fe2012-06-14 18:58:40 +0000250 'effects.gyp:effects',
251 'images.gyp:images',
reed@google.com1bdf7fe2012-06-14 18:58:40 +0000252 ],
253 },
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000254 {
255 'target_name': 'filter',
256 'type': 'executable',
257 'include_dirs' : [
258 '../src/core',
robertphillips@google.com3b0a9fe2013-01-31 15:56:22 +0000259 '../debugger',
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000260 ],
261 'sources': [
262 '../tools/filtermain.cpp',
robertphillips@google.comd3d377f2012-12-07 20:56:13 +0000263 '../tools/path_utils.h',
robertphillips@google.com3b0a9fe2013-01-31 15:56:22 +0000264 '../tools/path_utils.cpp',
265 '../debugger/SkDrawCommand.h',
266 '../debugger/SkDrawCommand.cpp',
267 '../debugger/SkDebugCanvas.h',
268 '../debugger/SkDebugCanvas.cpp',
269 '../debugger/SkObjectParser.h',
270 '../debugger/SkObjectParser.cpp',
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000271 ],
272 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000273 'skia_base_libs.gyp:skia_base_libs',
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000274 'effects.gyp:effects',
275 'images.gyp:images',
djsollen@google.coma09e8832012-11-13 18:50:33 +0000276 'tools.gyp:picture_utils',
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000277 ],
278 },
edisonn@google.com8819d1a2013-03-08 18:43:35 +0000279 ],
280 'conditions': [
borenet@google.com2d137b62013-03-08 23:13:33 +0000281 ['skia_win_debuggers_path and skia_os == "win"',
edisonn@google.com8819d1a2013-03-08 18:43:35 +0000282 {
283 'targets': [
284 {
285 'target_name': 'win_dbghelp',
286 'type': 'static_library',
287 'defines': [
288 'SK_CDB_PATH="<(skia_win_debuggers_path)"',
289 ],
290 'sources': [
291 '../tools/win_dbghelp.h',
292 '../tools/win_dbghelp.cpp',
293 ],
294 },
295 ],
296 },
297 ],
bungeman@google.com07a69f82013-04-02 14:12:38 +0000298 ['skia_os == "win"',
299 {
300 'targets': [
301 {
302 'target_name': 'win_lcid',
303 'type': 'executable',
304 'sources': [
305 '../tools/win_lcid.cpp',
306 ],
307 },
308 ],
309 },
310 ],
epoger@google.comccdbd2c2011-06-02 14:38:23 +0000311 ],
312}
313
314# Local Variables:
315# tab-width:2
316# indent-tabs-mode:nil
317# End:
318# vim: set expandtab tabstop=2 shiftwidth=2: