blob: 9cbaf932b97a02ccdc02e29c4dd46bb4307b234d [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#
scroggo@google.com0b735632013-03-19 17:38:50 +00006# Building on other platforms not tested yet.
7#
epoger@google.comccdbd2c2011-06-02 14:38:23 +00008{
9 'includes': [
10 'apptype_console.gypi',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000011 ],
12 'targets': [
13 {
14 # Build all executable targets defined below.
15 'target_name': 'tools',
16 'type': 'none',
17 'dependencies': [
edisonn@google.com8ba9a832013-01-18 18:06:22 +000018 'bench_pictures',
19 'filter',
20 'pinspect',
21 'render_pdfs',
22 'render_pictures',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000023 'skdiff',
24 'skhello',
25 'skimage',
26 ],
27 },
28 {
29 'target_name': 'skdiff',
30 'type': 'executable',
31 'sources': [
bungeman@google.come3c8ddf2012-12-05 20:13:12 +000032 '../tools/skdiff.cpp',
33 '../tools/skdiff.h',
34 '../tools/skdiff_html.cpp',
35 '../tools/skdiff_html.h',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000036 '../tools/skdiff_main.cpp',
bungeman@google.come3c8ddf2012-12-05 20:13:12 +000037 '../tools/skdiff_utils.cpp',
38 '../tools/skdiff_utils.h',
39 ],
40 'dependencies': [
41 'skia_base_libs.gyp:skia_base_libs',
42 'effects.gyp:effects',
43 'images.gyp:images',
44 ],
45 },
46 {
47 'target_name': 'skimagediff',
48 'type': 'executable',
49 'sources': [
50 '../tools/skdiff.cpp',
51 '../tools/skdiff.h',
52 '../tools/skdiff_html.cpp',
53 '../tools/skdiff_html.h',
54 '../tools/skdiff_image.cpp',
55 '../tools/skdiff_utils.cpp',
56 '../tools/skdiff_utils.h',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000057 ],
58 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +000059 'skia_base_libs.gyp:skia_base_libs',
djsollen@google.com41b46be2012-03-23 19:36:53 +000060 'effects.gyp:effects',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000061 'images.gyp:images',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000062 ],
63 },
64 {
65 'target_name': 'skhello',
66 'type': 'executable',
67 'sources': [
68 '../tools/skhello.cpp',
scroggo@google.com0b735632013-03-19 17:38:50 +000069 '../tools/SkFlags.h',
70 '../tools/SkFlags.cpp',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000071 ],
72 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +000073 'skia_base_libs.gyp:skia_base_libs',
djsollen@google.com41b46be2012-03-23 19:36:53 +000074 'effects.gyp:effects',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000075 'images.gyp:images',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000076 ],
77 },
78 {
79 'target_name': 'skimage',
80 'type': 'executable',
81 'sources': [
82 '../tools/skimage_main.cpp',
83 ],
84 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +000085 'skia_base_libs.gyp:skia_base_libs',
djsollen@google.com41b46be2012-03-23 19:36:53 +000086 'effects.gyp:effects',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000087 'images.gyp:images',
epoger@google.comccdbd2c2011-06-02 14:38:23 +000088 ],
89 },
junov@chromium.org777442d2012-06-12 14:56:36 +000090 {
91 'target_name': 'render_pictures',
92 'type': 'executable',
93 'sources': [
94 '../tools/render_pictures_main.cpp',
keyar@chromium.orga2333d92012-07-16 17:29:16 +000095 ],
96 'include_dirs': [
97 '../src/pipe/utils/',
junov@chromium.org777442d2012-06-12 14:56:36 +000098 ],
99 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000100 'skia_base_libs.gyp:skia_base_libs',
keyar@chromium.org163b5672012-08-01 17:53:29 +0000101 'tools.gyp:picture_renderer',
twiz@google.coma31b8bb2012-06-22 18:24:56 +0000102 'tools.gyp:picture_utils',
scroggo@google.combb281f72013-03-18 21:37:39 +0000103 'ports.gyp:ports',
twiz@google.coma31b8bb2012-06-22 18:24:56 +0000104 ],
105 },
106 {
reed@google.com006db0f2012-06-27 19:33:29 +0000107 'target_name': 'bench_pictures',
108 'type': 'executable',
109 'sources': [
scroggo@google.com9a412522012-09-07 15:21:18 +0000110 '../bench/SkBenchLogger.h',
111 '../bench/SkBenchLogger.cpp',
112 '../bench/TimerData.h',
113 '../bench/TimerData.cpp',
keyar@chromium.orgcf6c44c2012-07-09 19:37:40 +0000114 '../tools/bench_pictures_main.cpp',
scroggo@google.com9a412522012-09-07 15:21:18 +0000115 '../tools/PictureBenchmark.cpp',
reed@google.com006db0f2012-06-27 19:33:29 +0000116 ],
117 'include_dirs': [
118 '../bench',
scroggo@google.comcc690202013-03-04 19:56:21 +0000119 '../src/lazy/',
reed@google.com006db0f2012-06-27 19:33:29 +0000120 ],
121 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000122 'skia_base_libs.gyp:skia_base_libs',
edisonn@google.comd966ab92012-09-05 19:43:46 +0000123 'effects.gyp:effects',
reed@google.com006db0f2012-06-27 19:33:29 +0000124 'tools.gyp:picture_utils',
keyar@chromium.org163b5672012-08-01 17:53:29 +0000125 'tools.gyp:picture_renderer',
126 'bench.gyp:bench_timer',
scroggo@google.combb281f72013-03-18 21:37:39 +0000127 'ports.gyp:ports',
scroggo@google.com9a412522012-09-07 15:21:18 +0000128 ],
keyar@chromium.org163b5672012-08-01 17:53:29 +0000129 },
130 {
borenet@google.comefb1d772012-10-10 19:45:51 +0000131 'target_name': 'picture_renderer',
132 'type': 'static_library',
133 'sources': [
scroggo@google.com4a26d9d2012-11-07 18:01:46 +0000134 '../tools/PictureRenderer.h',
keyar@chromium.org451bb9f2012-07-26 17:27:57 +0000135 '../tools/PictureRenderer.cpp',
scroggo@google.com161e1ba2013-03-04 16:41:06 +0000136 '../tools/PictureRenderingFlags.h',
137 '../tools/PictureRenderingFlags.cpp',
scroggo@google.com4a26d9d2012-11-07 18:01:46 +0000138 '../tools/CopyTilesRenderer.h',
139 '../tools/CopyTilesRenderer.cpp',
scroggo@google.com0b735632013-03-19 17:38:50 +0000140 '../tools/SkFlags.h',
141 '../tools/SkFlags.cpp',
keyar@chromium.org451bb9f2012-07-26 17:27:57 +0000142 '../src/pipe/utils/SamplePipeControllers.h',
143 '../src/pipe/utils/SamplePipeControllers.cpp',
borenet@google.comefb1d772012-10-10 19:45:51 +0000144 ],
145 'include_dirs': [
junov@chromium.org9313ca42012-11-02 18:11:49 +0000146 '../src/core/',
borenet@google.comefb1d772012-10-10 19:45:51 +0000147 '../src/pipe/utils/',
148 '../src/utils/',
149 ],
150 'dependencies': [
151 'skia_base_libs.gyp:skia_base_libs',
borenet@google.combc766112012-09-10 16:20:47 +0000152 'effects.gyp:effects',
keyar@chromium.org9299ede2012-08-21 19:05:08 +0000153 'images.gyp:images',
keyar@chromium.org451bb9f2012-07-26 17:27:57 +0000154 'tools.gyp:picture_utils',
borenet@google.comefb1d772012-10-10 19:45:51 +0000155 ],
robertphillips@google.comfe1b5362013-02-07 19:45:46 +0000156 'conditions': [
157 ['skia_gpu == 1',
158 {
159 'include_dirs' : [
160 '../src/gpu',
161 ],
162 },
163 ],
164 ],
borenet@google.comefb1d772012-10-10 19:45:51 +0000165 'export_dependent_settings': [
166 'images.gyp:images',
167 ],
keyar@chromium.org451bb9f2012-07-26 17:27:57 +0000168 },
169 {
edisonn@google.comc319abe2012-11-01 19:52:38 +0000170 'target_name': 'render_pdfs',
171 'type': 'executable',
172 'sources': [
173 '../tools/render_pdfs_main.cpp',
174 '../tools/PdfRenderer.cpp',
175 '../tools/PdfRenderer.h',
176 ],
177 'include_dirs': [
178 '../src/pipe/utils/',
179 '../src/utils/',
180 ],
181 'dependencies': [
182 'core.gyp:core',
183 'effects.gyp:effects',
184 'images.gyp:images',
185 'pdf.gyp:pdf',
186 'ports.gyp:ports',
187 'tools.gyp:picture_utils',
188 ],
edisonn@google.com184487c2013-03-08 18:00:16 +0000189 'conditions': [
borenet@google.com2d137b62013-03-08 23:13:33 +0000190 ['skia_win_debuggers_path and skia_os == "win"',
edisonn@google.com184487c2013-03-08 18:00:16 +0000191 {
192 'dependencies': [
193 'tools.gyp:win_dbghelp',
194 ],
195 },
196 ],
197 # VS static libraries don't have a linker option. We must set a global
198 # project linker option, or add it to each executable.
199 ['skia_win_debuggers_path and skia_os == "win" and '
borenet@google.com2d137b62013-03-08 23:13:33 +0000200 'skia_arch_width == 64',
edisonn@google.com184487c2013-03-08 18:00:16 +0000201 {
202 'msvs_settings': {
203 'VCLinkerTool': {
204 'AdditionalDependencies': [
205 '<(skia_win_debuggers_path)/x64/DbgHelp.lib',
206 ],
207 },
208 },
209 },
210 ],
211 ['skia_win_debuggers_path and skia_os == "win" and '
borenet@google.com2d137b62013-03-08 23:13:33 +0000212 'skia_arch_width == 32',
edisonn@google.com184487c2013-03-08 18:00:16 +0000213 {
214 'msvs_settings': {
215 'VCLinkerTool': {
216 'AdditionalDependencies': [
217 '<(skia_win_debuggers_path)/DbgHelp.lib',
218 ],
219 },
220 },
221 },
222 ],
223 ],
edisonn@google.comc319abe2012-11-01 19:52:38 +0000224 },
225 {
twiz@google.coma31b8bb2012-06-22 18:24:56 +0000226 'target_name': 'picture_utils',
227 'type': 'static_library',
228 'sources': [
229 '../tools/picture_utils.cpp',
borenet@google.come21795e2012-09-14 14:34:28 +0000230 '../tools/picture_utils.h',
twiz@google.coma31b8bb2012-06-22 18:24:56 +0000231 ],
232 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000233 'skia_base_libs.gyp:skia_base_libs',
junov@chromium.org777442d2012-06-12 14:56:36 +0000234 ],
235 },
reed@google.com1bdf7fe2012-06-14 18:58:40 +0000236 {
237 'target_name': 'pinspect',
238 'type': 'executable',
239 'sources': [
240 '../tools/pinspect.cpp',
241 ],
242 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000243 'skia_base_libs.gyp:skia_base_libs',
reed@google.com1bdf7fe2012-06-14 18:58:40 +0000244 'effects.gyp:effects',
245 'images.gyp:images',
reed@google.com1bdf7fe2012-06-14 18:58:40 +0000246 ],
247 },
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000248 {
249 'target_name': 'filter',
250 'type': 'executable',
251 'include_dirs' : [
252 '../src/core',
robertphillips@google.com3b0a9fe2013-01-31 15:56:22 +0000253 '../debugger',
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000254 ],
255 'sources': [
256 '../tools/filtermain.cpp',
robertphillips@google.comd3d377f2012-12-07 20:56:13 +0000257 '../tools/path_utils.h',
robertphillips@google.com3b0a9fe2013-01-31 15:56:22 +0000258 '../tools/path_utils.cpp',
259 '../debugger/SkDrawCommand.h',
260 '../debugger/SkDrawCommand.cpp',
261 '../debugger/SkDebugCanvas.h',
262 '../debugger/SkDebugCanvas.cpp',
263 '../debugger/SkObjectParser.h',
264 '../debugger/SkObjectParser.cpp',
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000265 ],
266 'dependencies': [
borenet@google.comefb1d772012-10-10 19:45:51 +0000267 'skia_base_libs.gyp:skia_base_libs',
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000268 'effects.gyp:effects',
269 'images.gyp:images',
djsollen@google.coma09e8832012-11-13 18:50:33 +0000270 'tools.gyp:picture_utils',
robertphillips@google.comc7e4a5a2012-10-04 13:00:33 +0000271 ],
272 },
edisonn@google.com8819d1a2013-03-08 18:43:35 +0000273 ],
274 'conditions': [
borenet@google.com2d137b62013-03-08 23:13:33 +0000275 ['skia_win_debuggers_path and skia_os == "win"',
edisonn@google.com8819d1a2013-03-08 18:43:35 +0000276 {
277 'targets': [
278 {
279 'target_name': 'win_dbghelp',
280 'type': 'static_library',
281 'defines': [
282 'SK_CDB_PATH="<(skia_win_debuggers_path)"',
283 ],
284 'sources': [
285 '../tools/win_dbghelp.h',
286 '../tools/win_dbghelp.cpp',
287 ],
288 },
289 ],
290 },
291 ],
epoger@google.comccdbd2c2011-06-02 14:38:23 +0000292 ],
293}
294
295# Local Variables:
296# tab-width:2
297# indent-tabs-mode:nil
298# End:
299# vim: set expandtab tabstop=2 shiftwidth=2: