blob: 5537ef80c236bf7b30cbb4561d0096df34d3d64c [file] [log] [blame]
[email protected]9d6bc352013-07-23 13:00:101# Copyright 2013 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5
6# This gypi file contains the Skia library.
7# In component mode (shared_lib) it is folded into a single shared library with
8# the Chrome-specific enhancements but in all other cases it is a separate lib.
[email protected]6f2b1c92013-12-17 22:42:489
10# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!WARNING!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
11# variables and defines should go in skia_common.gypi so they can be seen
12# by files listed here and in skia_library_opts.gypi.
13# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!WARNING!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[email protected]9d6bc352013-07-23 13:00:1014{
15 'dependencies': [
16 'skia_library_opts.gyp:skia_opts',
17 '../third_party/zlib/zlib.gyp:zlib',
18 ],
19
[email protected]9d6bc352013-07-23 13:00:1020 'includes': [
21 '../third_party/skia/gyp/core.gypi',
22 '../third_party/skia/gyp/effects.gypi',
[email protected]92096c052013-08-27 11:21:0823 '../third_party/skia/gyp/pdf.gypi',
[email protected]7110c54c2014-06-10 22:52:0424 '../third_party/skia/gyp/utils.gypi',
[email protected]9d6bc352013-07-23 13:00:1025 ],
26
27 'sources': [
28 # this should likely be moved into src/utils in skia
29 '../third_party/skia/src/core/SkFlate.cpp',
mtklein1bd9a312014-09-04 17:29:1130
[email protected]9d6bc352013-07-23 13:00:1031 '../third_party/skia/src/ports/SkImageDecoder_empty.cpp',
32 '../third_party/skia/src/images/SkScaledBitmapSampler.cpp',
33 '../third_party/skia/src/images/SkScaledBitmapSampler.h',
34
[email protected]9d6bc352013-07-23 13:00:1035 '../third_party/skia/src/ports/SkFontConfigInterface_direct.cpp',
36
37 '../third_party/skia/src/fonts/SkFontMgr_fontconfig.cpp',
38 '../third_party/skia/src/ports/SkFontHost_fontconfig.cpp',
39
[email protected]6ea5ec082014-03-24 16:18:3940 '../third_party/skia/src/fonts/SkFontMgr_indirect.cpp',
41 '../third_party/skia/src/fonts/SkRemotableFontMgr.cpp',
42 '../third_party/skia/src/ports/SkRemotableFontMgr_win_dw.cpp',
43
reed767108b2015-01-08 01:52:2844 '../third_party/skia/src/ports/SkImageGenerator_none.cpp',
45
[email protected]9d6bc352013-07-23 13:00:1046 '../third_party/skia/src/ports/SkFontHost_FreeType.cpp',
47 '../third_party/skia/src/ports/SkFontHost_FreeType_common.cpp',
48 '../third_party/skia/src/ports/SkFontHost_FreeType_common.h',
49 '../third_party/skia/src/ports/SkFontConfigParser_android.cpp',
50 '../third_party/skia/src/ports/SkFontHost_mac.cpp',
51 '../third_party/skia/src/ports/SkFontHost_win.cpp',
[email protected]196e7ca2014-07-24 18:41:1852 "../third_party/skia/src/ports/SkFontMgr_android.cpp",
[email protected]15c7a712014-06-06 13:33:2453 '../third_party/skia/src/ports/SkFontMgr_win_dw.cpp',
[email protected]9d6bc352013-07-23 13:00:1054 '../third_party/skia/src/ports/SkGlobalInitialization_chromium.cpp',
55 '../third_party/skia/src/ports/SkOSFile_posix.cpp',
56 '../third_party/skia/src/ports/SkOSFile_stdio.cpp',
57 '../third_party/skia/src/ports/SkOSFile_win.cpp',
[email protected]15c7a712014-06-06 13:33:2458 '../third_party/skia/src/ports/SkScalerContext_win_dw.cpp',
59 '../third_party/skia/src/ports/SkScalerContext_win_dw.h',
[email protected]9d6bc352013-07-23 13:00:1060 '../third_party/skia/src/ports/SkTime_Unix.cpp',
61 '../third_party/skia/src/ports/SkTLS_pthread.cpp',
62 '../third_party/skia/src/ports/SkTLS_win.cpp',
[email protected]15c7a712014-06-06 13:33:2463 '../third_party/skia/src/ports/SkTypeface_win_dw.cpp',
64 '../third_party/skia/src/ports/SkTypeface_win_dw.h',
[email protected]9d6bc352013-07-23 13:00:1065
[email protected]596de2e2013-08-07 14:41:0466 '../third_party/skia/src/sfnt/SkOTTable_name.cpp',
67 '../third_party/skia/src/sfnt/SkOTTable_name.h',
[email protected]9d6bc352013-07-23 13:00:1068 '../third_party/skia/src/sfnt/SkOTUtils.cpp',
69 '../third_party/skia/src/sfnt/SkOTUtils.h',
70
bratell20952e32015-02-24 18:58:3571 '../third_party/skia/include/core/SkFontStyle.h',
72
[email protected]9d6bc352013-07-23 13:00:1073 '../third_party/skia/include/images/SkMovie.h',
74 '../third_party/skia/include/images/SkPageFlipper.h',
75
[email protected]6ea5ec082014-03-24 16:18:3976 '../third_party/skia/include/ports/SkFontConfigInterface.h',
77 '../third_party/skia/include/ports/SkFontMgr.h',
78 '../third_party/skia/include/ports/SkFontMgr_indirect.h',
[email protected]6ea5ec082014-03-24 16:18:3979 '../third_party/skia/include/ports/SkRemotableFontMgr.h',
80 '../third_party/skia/include/ports/SkTypeface_win.h',
[email protected]9d6bc352013-07-23 13:00:1081 ],
[email protected]7110c54c2014-06-10 22:52:0482
83 # Exclude all unused files in skia utils.gypi file
84 'sources!': [
[email protected]7110c54c2014-06-10 22:52:0485 '../third_party/skia/include/utils/SkBoundaryPatch.h',
86 '../third_party/skia/include/utils/SkFrontBufferedStream.h',
87 '../third_party/skia/include/utils/SkCamera.h',
88 '../third_party/skia/include/utils/SkCanvasStateUtils.h',
89 '../third_party/skia/include/utils/SkCubicInterval.h',
90 '../third_party/skia/include/utils/SkCullPoints.h',
91 '../third_party/skia/include/utils/SkDebugUtils.h',
92 '../third_party/skia/include/utils/SkDumpCanvas.h',
93 '../third_party/skia/include/utils/SkEventTracer.h',
94 '../third_party/skia/include/utils/SkInterpolator.h',
95 '../third_party/skia/include/utils/SkLayer.h',
96 '../third_party/skia/include/utils/SkMeshUtils.h',
97 '../third_party/skia/include/utils/SkNinePatch.h',
[email protected]7110c54c2014-06-10 22:52:0498 '../third_party/skia/include/utils/SkParsePaint.h',
99 '../third_party/skia/include/utils/SkParsePath.h',
100 '../third_party/skia/include/utils/SkRandom.h',
[email protected]7110c54c2014-06-10 22:52:04101
102 '../third_party/skia/src/utils/SkBitmapHasher.cpp',
103 '../third_party/skia/src/utils/SkBitmapHasher.h',
104 '../third_party/skia/src/utils/SkBoundaryPatch.cpp',
105 '../third_party/skia/src/utils/SkFrontBufferedStream.cpp',
106 '../third_party/skia/src/utils/SkCamera.cpp',
107 '../third_party/skia/src/utils/SkCanvasStack.h',
108 '../third_party/skia/src/utils/SkCubicInterval.cpp',
109 '../third_party/skia/src/utils/SkCullPoints.cpp',
110 '../third_party/skia/src/utils/SkDumpCanvas.cpp',
111 '../third_party/skia/src/utils/SkFloatUtils.h',
[email protected]7110c54c2014-06-10 22:52:04112 '../third_party/skia/src/utils/SkInterpolator.cpp',
113 '../third_party/skia/src/utils/SkLayer.cpp',
114 '../third_party/skia/src/utils/SkMD5.cpp',
115 '../third_party/skia/src/utils/SkMD5.h',
116 '../third_party/skia/src/utils/SkMeshUtils.cpp',
117 '../third_party/skia/src/utils/SkNinePatch.cpp',
118 '../third_party/skia/src/utils/SkOSFile.cpp',
[email protected]7110c54c2014-06-10 22:52:04119 '../third_party/skia/src/utils/SkParsePath.cpp',
[email protected]7110c54c2014-06-10 22:52:04120 '../third_party/skia/src/utils/SkSHA1.cpp',
121 '../third_party/skia/src/utils/SkSHA1.h',
[email protected]7110c54c2014-06-10 22:52:04122 '../third_party/skia/src/utils/SkTFitsIn.h',
123 '../third_party/skia/src/utils/SkTLogic.h',
124
mtkleinf922e95f2014-10-30 16:58:01125 # We don't currently need to change thread affinity, so leave out this complexity for now.
126 "../third_party/skia/src/utils/SkThreadUtils_pthread_mach.cpp",
127 "../third_party/skia/src/utils/SkThreadUtils_pthread_linux.cpp",
128
[email protected]7110c54c2014-06-10 22:52:04129#windows
130 '../third_party/skia/include/utils/win/SkAutoCoInitialize.h',
131 '../third_party/skia/include/utils/win/SkHRESULT.h',
132 '../third_party/skia/include/utils/win/SkIStream.h',
133 '../third_party/skia/include/utils/win/SkTScopedComPtr.h',
134 '../third_party/skia/src/utils/win/SkAutoCoInitialize.cpp',
135 '../third_party/skia/src/utils/win/SkIStream.cpp',
136 '../third_party/skia/src/utils/win/SkWGL_win.cpp',
137
138#testing
139 '../third_party/skia/src/fonts/SkGScalerContext.cpp',
140 '../third_party/skia/src/fonts/SkGScalerContext.h',
141 ],
142
[email protected]9d6bc352013-07-23 13:00:10143 'include_dirs': [
reedb5f89982014-10-24 19:58:15144 '../third_party/skia/include/c',
[email protected]9d6bc352013-07-23 13:00:10145 '../third_party/skia/include/core',
146 '../third_party/skia/include/effects',
147 '../third_party/skia/include/images',
148 '../third_party/skia/include/lazy',
149 '../third_party/skia/include/pathops',
150 '../third_party/skia/include/pdf',
151 '../third_party/skia/include/pipe',
152 '../third_party/skia/include/ports',
[email protected]bc912d62014-04-30 14:53:44153 '../third_party/skia/include/record',
[email protected]9d6bc352013-07-23 13:00:10154 '../third_party/skia/include/utils',
155 '../third_party/skia/src/core',
[email protected]36b39bb42013-10-18 13:40:22156 '../third_party/skia/src/opts',
[email protected]9d6bc352013-07-23 13:00:10157 '../third_party/skia/src/image',
halcanary7b3ebdb2015-01-06 20:17:37158 '../third_party/skia/src/pdf',
[email protected]2b889f882013-08-01 14:19:39159 '../third_party/skia/src/ports',
[email protected]9d6bc352013-07-23 13:00:10160 '../third_party/skia/src/sfnt',
161 '../third_party/skia/src/utils',
162 '../third_party/skia/src/lazy',
163 ],
164 'conditions': [
165 ['skia_support_gpu != 0', {
166 'includes': [
167 '../third_party/skia/gyp/gpu.gypi',
168 ],
169 'sources': [
[email protected]54dd8ab2014-01-16 23:40:00170 '<@(skgpu_null_gl_sources)',
[email protected]9d6bc352013-07-23 13:00:10171 '<@(skgpu_sources)',
172 ],
173 'include_dirs': [
174 '../third_party/skia/include/gpu',
[email protected]9d6bc352013-07-23 13:00:10175 '../third_party/skia/src/gpu',
176 ],
177 }],
178 ['skia_support_pdf == 0', {
179 'sources/': [
dnicoara96ecc9252014-11-18 22:32:35180 ['exclude', '../third_party/skia/src/doc/SkDocument_PDF.cpp'],
181 ['exclude', '../third_party/skia/src/pdf/'],
[email protected]9d6bc352013-07-23 13:00:10182 ],
183 }],
184 ['skia_support_pdf == 1', {
185 'dependencies': [
186 '../third_party/sfntly/sfntly.gyp:sfntly',
187 ],
188 }],
189
mtkleinf922e95f2014-10-30 16:58:01190 [ 'OS == "win"', {
191 'sources!': [
192 # Keeping _win.cpp
193 "../third_party/skia/src/utils/SkThreadUtils_pthread.cpp",
194 "../third_party/skia/src/utils/SkThreadUtils_pthread_other.cpp",
195 ],
196 },{
197 'sources!': [
198 # Keeping _pthread.cpp and _pthread_other.cpp
199 "../third_party/skia/src/utils/SkThreadUtils_win.cpp",
200 ],
201 }],
202
[email protected]9d6bc352013-07-23 13:00:10203 [ 'OS != "mac"', {
204 'sources/': [
205 ['exclude', '/mac/']
206 ],
207 }],
[email protected]9d6bc352013-07-23 13:00:10208 [ 'OS == "android" and target_arch == "arm"', {
209 'sources': [
210 '../third_party/skia/src/core/SkUtilsArm.cpp',
211 ],
torne9845b892015-04-07 21:02:54212 'dependencies': [
213 '../build/android/ndk.gyp:cpu_features',
[email protected]9d6bc352013-07-23 13:00:10214 ],
215 }],
[email protected]b098e1d82013-11-08 06:24:58216 [ 'desktop_linux == 1 or chromeos == 1', {
[email protected]9d6bc352013-07-23 13:00:10217 'dependencies': [
218 '../build/linux/system.gyp:fontconfig',
219 '../build/linux/system.gyp:freetype2',
[email protected]9d6bc352013-07-23 13:00:10220 '../third_party/icu/icu.gyp:icuuc',
221 ],
222 'cflags': [
223 '-Wno-unused',
224 '-Wno-unused-function',
225 ],
226 }],
sfunkenhauser97a0a632015-01-14 19:56:15227 [ 'use_cairo == 1 and use_pango == 1', {
[email protected]928362a2013-11-19 20:17:16228 'dependencies': [
229 '../build/linux/system.gyp:pangocairo',
230 ],
231 }],
[email protected]b098e1d82013-11-08 06:24:58232 [ 'OS=="win" or OS=="mac" or OS=="ios" or OS=="android"', {
[email protected]9d6bc352013-07-23 13:00:10233 'sources!': [
234 '../third_party/skia/src/ports/SkFontConfigInterface_direct.cpp',
[email protected]2dc1e102014-08-14 14:04:34235 '../third_party/skia/src/ports/SkFontHost_fontconfig.cpp',
[email protected]9d6bc352013-07-23 13:00:10236 '../third_party/skia/src/fonts/SkFontMgr_fontconfig.cpp',
237 ],
238 }],
[email protected]b098e1d82013-11-08 06:24:58239 [ 'OS=="win" or OS=="mac" or OS=="ios"', {
[email protected]9d6bc352013-07-23 13:00:10240 'sources!': [
241 '../third_party/skia/src/ports/SkFontHost_FreeType.cpp',
242 '../third_party/skia/src/ports/SkFontHost_FreeType_common.cpp',
[email protected]9d6bc352013-07-23 13:00:10243
244 ],
245 }],
246 [ 'OS == "android"', {
247 'dependencies': [
248 '../third_party/expat/expat.gyp:expat',
249 '../third_party/freetype/freetype.gyp:ft2',
250 ],
251 # This exports a hard dependency because it needs to run its
252 # symlink action in order to expose the skia header files.
253 'hard_dependency': 1,
254 'include_dirs': [
255 '../third_party/expat/files/lib',
256 ],
257 }],
258 [ 'OS == "ios"', {
[email protected]9d6bc352013-07-23 13:00:10259 'include_dirs': [
260 '../third_party/skia/include/utils/ios',
261 '../third_party/skia/include/utils/mac',
262 ],
263 'link_settings': {
264 'libraries': [
265 '$(SDKROOT)/System/Library/Frameworks/ImageIO.framework',
266 ],
267 },
268 'sources': [
269 # This file is used on both iOS and Mac, so it should be removed
270 # from the ios and mac conditions and moved into the main sources
271 # list.
272 '../third_party/skia/src/utils/mac/SkStream_mac.cpp',
273 ],
[email protected]8e3f8c82013-08-21 15:09:55274
[email protected]9d6bc352013-07-23 13:00:10275 # The main skia_opts target does not currently work on iOS because the
276 # target architecture on iOS is determined at compile time rather than
277 # gyp time (simulator builds are x86, device builds are arm). As a
278 # temporary measure, this is a separate opts target for iOS-only, using
279 # the _none.cpp files to avoid architecture-dependent implementations.
280 'dependencies': [
281 'skia_library_opts.gyp:skia_opts_none',
282 ],
283 'dependencies!': [
284 'skia_library_opts.gyp:skia_opts',
285 ],
286 }],
287 [ 'OS == "mac"', {
[email protected]9d6bc352013-07-23 13:00:10288 'direct_dependent_settings': {
289 'include_dirs': [
290 '../third_party/skia/include/utils/mac',
291 ],
292 },
293 'include_dirs': [
294 '../third_party/skia/include/utils/mac',
295 ],
296 'link_settings': {
297 'libraries': [
298 '$(SDKROOT)/System/Library/Frameworks/AppKit.framework',
299 ],
300 },
301 'sources': [
302 '../third_party/skia/src/utils/mac/SkStream_mac.cpp',
303 ],
304 }],
305 [ 'OS == "win"', {
306 'sources!': [
307 '../third_party/skia/src/ports/SkOSFile_posix.cpp',
[email protected]9d6bc352013-07-23 13:00:10308 '../third_party/skia/src/ports/SkTime_Unix.cpp',
309 '../third_party/skia/src/ports/SkTLS_pthread.cpp',
310 ],
[email protected]1d93409e2013-08-21 17:13:19311 'include_dirs': [
312 '../third_party/skia/include/utils/win',
313 '../third_party/skia/src/utils/win',
314 ],
[email protected]1d93409e2013-08-21 17:13:19315 },{ # not 'OS == "win"'
316 'sources!': [
[email protected]15c7a712014-06-06 13:33:24317 '../third_party/skia/src/ports/SkFontMgr_win_dw.cpp',
[email protected]6ea5ec082014-03-24 16:18:39318 '../third_party/skia/src/ports/SkRemotableFontMgr_win_dw.cpp',
[email protected]15c7a712014-06-06 13:33:24319 '../third_party/skia/src/ports/SkScalerContext_win_dw.cpp',
320 '../third_party/skia/src/ports/SkScalerContext_win_dw.h',
321 '../third_party/skia/src/ports/SkTypeface_win_dw.cpp',
322 '../third_party/skia/src/ports/SkTypeface_win_dw.h',
[email protected]1d93409e2013-08-21 17:13:19323
[email protected]6ea5ec082014-03-24 16:18:39324 '../third_party/skia/src/utils/win/SkDWrite.h',
325 '../third_party/skia/src/utils/win/SkDWrite.cpp',
[email protected]1d93409e2013-08-21 17:13:19326 '../third_party/skia/src/utils/win/SkDWriteFontFileStream.cpp',
327 '../third_party/skia/src/utils/win/SkDWriteFontFileStream.h',
328 '../third_party/skia/src/utils/win/SkDWriteGeometrySink.cpp',
329 '../third_party/skia/src/utils/win/SkDWriteGeometrySink.h',
330 '../third_party/skia/src/utils/win/SkHRESULT.cpp',
331 ],
[email protected]9d6bc352013-07-23 13:00:10332 }],
[email protected]9d6bc352013-07-23 13:00:10333 ],
334 'target_conditions': [
335 # Pull in specific Mac files for iOS (which have been filtered out
336 # by file name rules).
337 [ 'OS == "ios"', {
338 'sources/': [
339 ['include', 'SkFontHost_mac\\.cpp$',],
340 ['include', 'SkStream_mac\\.cpp$',],
341 ['include', 'SkCreateCGImageRef\\.cpp$',],
342 ],
lliabraa7ecee0c2014-11-19 14:32:34343 'xcode_settings' : {
344 'WARNING_CFLAGS': [
345 # SkFontHost_mac.cpp uses API deprecated in iOS 7.
346 # crbug.com/408571
347 '-Wno-deprecated-declarations',
348 ],
349 },
[email protected]9d6bc352013-07-23 13:00:10350 }],
351 ],
352
[email protected]9d6bc352013-07-23 13:00:10353 'direct_dependent_settings': {
354 'include_dirs': [
[email protected]9d6bc352013-07-23 13:00:10355 '../third_party/skia/include/core',
356 '../third_party/skia/include/effects',
357 '../third_party/skia/include/pdf',
358 '../third_party/skia/include/gpu',
[email protected]9d6bc352013-07-23 13:00:10359 '../third_party/skia/include/lazy',
360 '../third_party/skia/include/pathops',
361 '../third_party/skia/include/pipe',
362 '../third_party/skia/include/ports',
363 '../third_party/skia/include/utils',
364 ],
[email protected]9d6bc352013-07-23 13:00:10365 },
366}