1 # Copyright (c) 2012 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.
9 'type': '<(component)',
13 'skia_support_gpu': 0,
15 'skia_support_gpu': 1,
21 # These two set the paths so we can include skia/gyp/core.gypi
22 'skia_src_path': '../third_party/skia/src',
23 'skia_include_path': '../third_party/skia/include',
27 '../third_party/skia/gyp/core.gypi',
28 '../third_party/skia/gyp/effects.gypi',
32 # this should likely be moved into src/utils in skia
33 '../third_party/skia/src/core/SkFlate.cpp',
34 # We don't want to add this to Skia's core.gypi since it is
35 # Android only. Include it here and remove it for everyone
37 '../third_party/skia/src/core/SkPaintOptionsAndroid.cpp',
39 '../third_party/skia/src/ports/SkImageDecoder_empty.cpp',
40 #'../third_party/skia/src/images/bmpdecoderhelper.cpp',
41 #'../third_party/skia/src/images/bmpdecoderhelper.h',
42 #'../third_party/skia/src/images/SkFDStream.cpp',
43 #'../third_party/skia/src/images/SkImageDecoder.cpp',
44 #'../third_party/skia/src/images/SkImageDecoder_FactoryDefault.cpp',
45 #'../third_party/skia/src/images/SkImageDecoder_FactoryRegistrar.cpp',
46 #'../third_party/skia/src/images/SkImageDecoder_fpdfemb.cpp',
47 #'../third_party/skia/src/images/SkImageDecoder_libbmp.cpp',
48 #'../third_party/skia/src/images/SkImageDecoder_libgif.cpp',
49 #'../third_party/skia/src/images/SkImageDecoder_libico.cpp',
50 #'../third_party/skia/src/images/SkImageDecoder_libjpeg.cpp',
51 #'../third_party/skia/src/images/SkImageDecoder_libpng.cpp',
52 #'../third_party/skia/src/images/SkImageDecoder_libpvjpeg.cpp',
53 #'../third_party/skia/src/images/SkImageDecoder_wbmp.cpp',
54 #'../third_party/skia/src/images/SkImageEncoder.cpp',
55 #'../third_party/skia/src/images/SkImageEncoder_Factory.cpp',
56 #'../third_party/skia/src/images/SkImageRef.cpp',
57 #'../third_party/skia/src/images/SkImageRefPool.cpp',
58 #'../third_party/skia/src/images/SkImageRefPool.h',
59 #'../third_party/skia/src/images/SkImageRef_GlobalPool.cpp',
60 #'../third_party/skia/src/images/SkMovie.cpp',
61 #'../third_party/skia/src/images/SkMovie_gif.cpp',
62 '../third_party/skia/src/images/SkScaledBitmapSampler.cpp',
63 '../third_party/skia/src/images/SkScaledBitmapSampler.h',
65 '../third_party/skia/src/opts/opts_check_SSE2.cpp',
67 '../third_party/skia/src/pdf/SkPDFCatalog.cpp',
68 '../third_party/skia/src/pdf/SkPDFCatalog.h',
69 '../third_party/skia/src/pdf/SkPDFDevice.cpp',
70 '../third_party/skia/src/pdf/SkPDFDocument.cpp',
71 '../third_party/skia/src/pdf/SkPDFFont.cpp',
72 '../third_party/skia/src/pdf/SkPDFFont.h',
73 '../third_party/skia/src/pdf/SkPDFFormXObject.cpp',
74 '../third_party/skia/src/pdf/SkPDFFormXObject.h',
75 '../third_party/skia/src/pdf/SkPDFGraphicState.cpp',
76 '../third_party/skia/src/pdf/SkPDFGraphicState.h',
77 '../third_party/skia/src/pdf/SkPDFImage.cpp',
78 '../third_party/skia/src/pdf/SkPDFImage.h',
79 '../third_party/skia/src/pdf/SkPDFImageStream.cpp',
80 '../third_party/skia/src/pdf/SkPDFImageStream.h',
81 '../third_party/skia/src/pdf/SkPDFPage.cpp',
82 '../third_party/skia/src/pdf/SkPDFPage.h',
83 '../third_party/skia/src/pdf/SkPDFShader.cpp',
84 '../third_party/skia/src/pdf/SkPDFShader.h',
85 '../third_party/skia/src/pdf/SkPDFStream.cpp',
86 '../third_party/skia/src/pdf/SkPDFStream.h',
87 '../third_party/skia/src/pdf/SkPDFTypes.cpp',
88 '../third_party/skia/src/pdf/SkPDFTypes.h',
89 '../third_party/skia/src/pdf/SkPDFUtils.cpp',
90 '../third_party/skia/src/pdf/SkPDFUtils.h',
92 #'../third_party/skia/src/ports/SkPurgeableMemoryBlock_android.cpp',
93 #'../third_party/skia/src/ports/SkPurgeableMemoryBlock_mac.cpp',
94 '../third_party/skia/src/ports/SkPurgeableMemoryBlock_none.cpp',
96 '../third_party/skia/src/ports/SkFontConfigInterface_android.cpp',
97 #'../third_party/skia/src/ports/SkFontHost_FONTPATH.cpp',
98 '../third_party/skia/src/ports/SkFontHost_FreeType.cpp',
99 '../third_party/skia/src/ports/SkFontHost_FreeType_common.cpp',
100 '../third_party/skia/src/ports/SkFontHost_FreeType_common.h',
101 '../third_party/skia/src/ports/SkFontConfigParser_android.cpp',
102 #'../third_party/skia/src/ports/SkFontHost_ascender.cpp',
103 #'../third_party/skia/src/ports/SkFontHost_linux.cpp',
104 '../third_party/skia/src/ports/SkFontHost_mac.cpp',
105 #'../third_party/skia/src/ports/SkFontHost_none.cpp',
106 '../third_party/skia/src/ports/SkFontHost_win.cpp',
107 '../third_party/skia/src/ports/SkGlobalInitialization_chromium.cpp',
108 #'../third_party/skia/src/ports/SkImageDecoder_CG.cpp',
109 #'../third_party/skia/src/ports/SkImageDecoder_empty.cpp',
110 #'../third_party/skia/src/ports/SkImageRef_ashmem.cpp',
111 #'../third_party/skia/src/ports/SkImageRef_ashmem.h',
112 #'../third_party/skia/src/ports/SkOSEvent_android.cpp',
113 #'../third_party/skia/src/ports/SkOSEvent_dummy.cpp',
114 '../third_party/skia/src/ports/SkOSFile_posix.cpp',
115 '../third_party/skia/src/ports/SkOSFile_stdio.cpp',
116 '../third_party/skia/src/ports/SkOSFile_win.cpp',
117 #'../third_party/skia/src/ports/SkThread_none.cpp',
118 '../third_party/skia/src/ports/SkThread_pthread.cpp',
119 '../third_party/skia/src/ports/SkThread_win.cpp',
120 '../third_party/skia/src/ports/SkTime_Unix.cpp',
121 #'../third_party/skia/src/ports/SkXMLParser_empty.cpp',
122 #'../third_party/skia/src/ports/SkXMLParser_expat.cpp',
123 #'../third_party/skia/src/ports/SkXMLParser_tinyxml.cpp',
124 #'../third_party/skia/src/ports/SkXMLPullParser_expat.cpp',
126 '../third_party/skia/src/sfnt/SkOTUtils.cpp',
127 '../third_party/skia/src/sfnt/SkOTUtils.h',
129 '../third_party/skia/include/utils/mac/SkCGUtils.h',
130 '../third_party/skia/include/utils/SkDeferredCanvas.h',
131 '../third_party/skia/include/utils/SkMatrix44.h',
132 '../third_party/skia/src/utils/mac/SkCreateCGImageRef.cpp',
133 '../third_party/skia/src/utils/SkBase64.cpp',
134 '../third_party/skia/src/utils/SkBase64.h',
135 '../third_party/skia/src/utils/SkBitSet.cpp',
136 '../third_party/skia/src/utils/SkBitSet.h',
137 '../third_party/skia/src/utils/SkDeferredCanvas.cpp',
138 '../third_party/skia/src/utils/SkMatrix44.cpp',
139 '../third_party/skia/src/utils/SkNullCanvas.cpp',
140 '../third_party/skia/include/utils/SkNWayCanvas.h',
141 '../third_party/skia/src/utils/SkNWayCanvas.cpp',
142 '../third_party/skia/src/utils/SkPictureUtils.cpp',
143 '../third_party/skia/src/utils/SkRTConf.cpp',
144 '../third_party/skia/include/utils/SkRTConf.h',
145 '../third_party/skia/include/pdf/SkPDFDevice.h',
146 '../third_party/skia/include/pdf/SkPDFDocument.h',
148 '../third_party/skia/include/ports/SkTypeface_win.h',
150 #'../third_party/skia/include/images/SkImageDecoder.h',
151 #'../third_party/skia/include/images/SkImageEncoder.h',
152 '../third_party/skia/include/images/SkImageRef.h',
153 '../third_party/skia/include/images/SkImageRef_GlobalPool.h',
154 '../third_party/skia/include/images/SkMovie.h',
155 '../third_party/skia/include/images/SkPageFlipper.h',
157 '../third_party/skia/include/utils/SkNullCanvas.h',
158 '../third_party/skia/include/utils/SkPictureUtils.h',
159 'ext/analysis_canvas.cc',
160 'ext/analysis_canvas.h',
161 'ext/bitmap_platform_device.h',
162 'ext/bitmap_platform_device_android.cc',
163 'ext/bitmap_platform_device_android.h',
164 'ext/bitmap_platform_device_data.h',
165 'ext/bitmap_platform_device_linux.cc',
166 'ext/bitmap_platform_device_linux.h',
167 'ext/bitmap_platform_device_mac.cc',
168 'ext/bitmap_platform_device_mac.h',
169 'ext/bitmap_platform_device_win.cc',
170 'ext/bitmap_platform_device_win.h',
173 'ext/google_logging.cc',
174 'ext/image_operations.cc',
175 'ext/image_operations.h',
176 'ext/lazy_pixel_ref.cc',
177 'ext/lazy_pixel_ref.h',
178 'ext/lazy_pixel_ref_utils.cc',
179 'ext/lazy_pixel_ref_utils.h',
180 'ext/SkThread_chrome.cc',
181 'ext/paint_simplifier.cc',
182 'ext/paint_simplifier.h',
183 'ext/platform_canvas.cc',
184 'ext/platform_canvas.h',
185 'ext/platform_device.cc',
186 'ext/platform_device.h',
187 'ext/platform_device_linux.cc',
188 'ext/platform_device_mac.cc',
189 'ext/platform_device_win.cc',
190 'ext/recursive_gaussian_convolution.cc',
191 'ext/recursive_gaussian_convolution.h',
193 'ext/SkMemory_new_handler.cpp',
194 'ext/skia_trace_shim.h',
195 'ext/skia_utils_base.cc',
196 'ext/skia_utils_base.h',
197 'ext/skia_utils_ios.mm',
198 'ext/skia_utils_ios.h',
199 'ext/skia_utils_mac.mm',
200 'ext/skia_utils_mac.h',
201 'ext/skia_utils_win.cc',
202 'ext/skia_utils_win.h',
203 'ext/vector_canvas.cc',
204 'ext/vector_canvas.h',
205 'ext/vector_platform_device_emf_win.cc',
206 'ext/vector_platform_device_emf_win.h',
207 'ext/vector_platform_device_skia.cc',
208 'ext/vector_platform_device_skia.h',
213 '../third_party/skia/include/config',
214 '../third_party/skia/include/core',
215 '../third_party/skia/include/effects',
216 '../third_party/skia/include/images',
217 '../third_party/skia/include/lazy',
218 '../third_party/skia/include/pathops',
219 '../third_party/skia/include/pdf',
220 '../third_party/skia/include/pipe',
221 '../third_party/skia/include/ports',
222 '../third_party/skia/include/utils',
223 '../third_party/skia/src/core',
224 '../third_party/skia/src/image',
225 '../third_party/skia/src/sfnt',
226 '../third_party/skia/src/utils',
227 '../third_party/skia/src/lazy',
229 'msvs_disabled_warnings': [4244, 4267, 4341, 4345, 4390, 4554, 4748, 4800],
232 #'SK_GAMMA_APPLY_TO_A8',
233 'SK_BUILD_NO_IMAGE_ENCODE',
234 'GR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"',
235 'GR_STATIC_RECT_VB=1',
236 'GR_AGGRESSIVE_SHADER_OPTS=1',
237 'SK_DEFERRED_CANVAS_USES_GPIPE=1',
238 'SK_ENABLE_INST_COUNT=0',
240 # this flag can be removed entirely once this has baked for a while
241 'SK_ALLOW_OVER_32K_BITMAPS',
243 # skia uses static initializers to initialize the serialization logic
244 # of its "pictures" library. This is currently not used in chrome; if
245 # it ever gets used the processes that use it need to call
246 # SkGraphics::Init().
247 'SK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0',
249 # Disable this check because it is too strict for some Chromium-specific
250 # subclasses of SkPixelRef. See bug: crbug.com/171776.
251 'SK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK',
253 'IGNORE_ROT_AA_RECT_OPT',
256 '../third_party/skia/include/core/SkTypes.h',
259 ['skia_support_gpu != 0', {
261 '../third_party/skia/gyp/gpu.gypi',
268 '../third_party/skia/include/gpu',
269 '../third_party/skia/include/gpu/gl',
270 '../third_party/skia/src/gpu',
272 }, { # skia_support_gpu == 0
277 ['release_valgrind_build == 1', {
279 'SK_DEBUG_PATH_REF=1',
281 'direct_dependent_settings': {
283 'SK_DEBUG_PATH_REF=1',
287 #Settings for text blitting, chosen to approximate the system browser.
290 'SK_GAMMA_EXPONENT=1.2',
291 'SK_GAMMA_CONTRAST=0.2',
294 ['OS == "android"', {
296 'SK_GAMMA_APPLY_TO_A8',
297 'SK_GAMMA_EXPONENT=1.4',
298 'SK_GAMMA_CONTRAST=0.0',
304 'SK_GAMMA_CONTRAST=0.5',
310 'SK_GAMMA_CONTRAST=0.0',
314 # For POSIX platforms, prefer the Mutex implementation provided by Skia
315 # since it does not generate static initializers.
316 [ 'OS == "android" or OS == "linux" or OS == "mac" or OS == "ios"', {
318 'SK_USE_POSIX_THREADS',
320 'direct_dependent_settings': {
322 'SK_USE_POSIX_THREADS',
326 'ext/SkThread_chrome.cc',
329 [ 'OS != "android"', {
331 ['exclude', '_android\\.(cc|cpp)$'],
334 '../third_party/skia/src/core/SkPaintOptionsAndroid.cpp',
337 'SK_DEFAULT_FONT_CACHE_LIMIT=(20*1024*1024)',
342 ['exclude', '_ios\\.(cc|cpp|mm?)$'],
345 '<(DEPTH)/third_party/WebKit/Source/WebKit/chromium/skia_webkit.gyp:skia_webkit',
350 ['exclude', '_mac\\.(cc|cpp|mm?)$'],
355 'sources/': [ ['exclude', '_win\\.(cc|cpp)$'] ],
357 [ 'target_arch == "arm" and arm_version >= 7 and arm_neon == 1', {
362 [ 'target_arch == "arm" or target_arch == "mipsel"', {
364 '../third_party/skia/src/opts/opts_check_SSE2.cpp'
369 '../build/linux/system.gyp:fontconfig',
370 '../build/linux/system.gyp:freetype2',
371 '../build/linux/system.gyp:pangocairo',
372 '../third_party/icu/icu.gyp:icuuc',
376 '-Wno-unused-function',
379 '../third_party/skia/src/fonts/SkFontMgr_fontconfig.cpp',
380 '../third_party/skia/src/ports/SkFontHost_fontconfig.cpp',
381 '../third_party/skia/src/ports/SkFontConfigInterface_direct.cpp',
384 # 'SK_USE_COLOR_LUMINANCE',
387 [ 'use_glib == 0 and OS != "android"', {
388 'sources/': [ ['exclude', '_linux\\.(cc|cpp)$'] ],
390 '../third_party/skia/src/ports/SkFontHost_FreeType.cpp',
391 '../third_party/skia/src/ports/SkFontHost_FreeType_common.cpp',
394 [ 'toolkit_uses_gtk == 1', {
396 '../build/linux/system.gyp:gdk',
398 }, { # toolkit_uses_gtk == 0
399 'sources/': [ ['exclude', '_gtk\\.(cc|cpp)$'] ],
401 [ 'OS == "android"', {
403 '../third_party/skia/src/ports/SkFontHost_fontconfig.cpp',
406 ['exclude', '_linux\\.(cc|cpp)$'],
409 [ '_toolset == "target"', {
413 'SK_BUILD_FOR_ANDROID',
414 # Android devices are typically more memory constrained, so
415 # use a smaller glyph cache.
416 'SK_DEFAULT_FONT_CACHE_LIMIT=(8*1024*1024)',
420 '../third_party/expat/expat.gyp:expat',
421 '../third_party/freetype/freetype.gyp:ft2',
425 # Android doesn't use Skia's PDF generation, which is what uses
427 '../third_party/sfntly/sfntly.gyp:sfntly',
429 # This exports a hard dependency because it needs to run its
430 # symlink action in order to expose the skia header files.
431 'hard_dependency': 1,
433 '../third_party/expat/files/lib',
436 ['include', 'ext/platform_device_linux\\.cc$'],
437 ['exclude', '../third_party/skia/src/pdf/'],
440 'ext/vector_platform_device_skia.cc',
443 [ '_toolset == "target" and android_webview_build == 0', {
448 [ '_toolset=="host" and host_os=="linux"', {
450 'ext/platform_device_linux.cc',
458 'SK_USE_MAC_CORE_TEXT',
461 '../third_party/skia/include/utils/ios',
462 '../third_party/skia/include/utils/mac',
466 '$(SDKROOT)/System/Library/Frameworks/ImageIO.framework',
474 '../third_party/sfntly/sfntly.gyp:sfntly',
477 # This file is used on both iOS and Mac, so it should be removed
478 # from the ios and mac conditions and moved into the main sources
480 '../third_party/skia/src/utils/mac/SkStream_mac.cpp',
483 ['exclude', '/pdf/'],
484 ['exclude', '^ext/vector_platform_device_skia\\.'],
485 ['exclude', 'opts_check_SSE2\\.cpp$'],
491 'SK_USE_MAC_CORE_TEXT',
492 # 'SK_USE_COLOR_LUMINANCE',
495 '../third_party/skia/include/utils/mac',
499 '$(SDKROOT)/System/Library/Frameworks/AppKit.framework',
503 '../third_party/skia/src/utils/mac/SkStream_mac.cpp',
508 '../third_party/skia/src/ports/SkOSFile_posix.cpp',
509 '../third_party/skia/src/ports/SkThread_pthread.cpp',
510 '../third_party/skia/src/ports/SkTime_Unix.cpp',
511 'ext/SkThread_chrome.cc',
516 'direct_dependent_settings': {
522 ['component=="shared_library"', {
525 'GR_IMPLEMENTATION=1',
527 'SKIA_IMPLEMENTATION=1',
530 '../base/base.gyp:base',
532 'direct_dependent_settings': {
539 # TODO(scottmg): http://crbug.com/177306
543 # Don't warn about string->bool used in asserts.
544 '-Wstring-conversion',
548 '-Wstring-conversion',
554 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
555 '../third_party/sfntly/sfntly.gyp:sfntly',
556 '../third_party/zlib/zlib.gyp:zlib',
558 'direct_dependent_settings': {
562 #temporary until we can hide SkFontHost
563 '../third_party/skia/src/core',
565 '../third_party/skia/include/config',
566 '../third_party/skia/include/core',
567 '../third_party/skia/include/effects',
568 '../third_party/skia/include/pdf',
569 '../third_party/skia/include/gpu',
570 '../third_party/skia/include/gpu/gl',
571 '../third_party/skia/include/pathops',
572 '../third_party/skia/include/pipe',
573 '../third_party/skia/include/ports',
574 '../third_party/skia/include/utils',
578 'SK_BUILD_NO_IMAGE_ENCODE',
579 'SK_DEFERRED_CANVAS_USES_GPIPE=1',
580 'GR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"',
581 'GR_AGGRESSIVE_SHADER_OPTS=1',
582 'SK_ENABLE_INST_COUNT=0',
588 '../third_party/zlib/zlib.gyp:zlib',
591 # Don't use non-NDK available stuff.
592 'SK_BUILD_FOR_ANDROID',
595 [ '_toolset == "target" and android_webview_build == 0', {
604 '../third_party/skia/include/utils/mac',
609 'target_conditions': [
610 # Pull in specific Mac files for iOS (which have been filtered out
611 # by file name rules).
614 ['include', 'SkFontHost_mac\\.cpp$',],
615 ['include', 'SkStream_mac\\.cpp$',],
616 ['include', 'SkCreateCGImageRef\\.cpp$',],
622 # Due to an unfortunate intersection of lameness between gcc and gyp,
623 # we have to build the *_SSE2.cpp files in a separate target. The
624 # gcc lameness is that, in order to compile SSE2 intrinsics code, it
625 # must be passed the -msse2 flag. However, with this flag, it may
626 # emit SSE2 instructions even for scalar code, such as the CPUID
627 # test used to test for the presence of SSE2. So that, and all other
628 # code must be compiled *without* -msse2. The gyp lameness is that it
629 # does not allow file-specific CFLAGS, so we must create this extra
630 # target for those files to be compiled with -msse2.
632 # This is actually only a problem on 32-bit Linux (all Intel Macs have
633 # SSE2, Linux x86_64 has SSE2 by definition, and MSC will happily emit
634 # SSE2 from instrinsics, which generating plain ol' 386 for everything
635 # else). However, to keep the .gyp file simple and avoid platform-specific
636 # build breakage, we do this on all platforms.
638 # For about the same reason, we need to compile the ARM opts files
639 # separately as well.
641 'target_name': 'skia_opts',
642 'type': 'static_library',
649 '../third_party/skia/include/config',
650 '../third_party/skia/include/core',
651 '../third_party/skia/include/effects',
652 '../third_party/skia/include/images',
653 '../third_party/skia/include/lazy',
654 '../third_party/skia/include/pathops',
655 '../third_party/skia/include/utils',
656 '../third_party/skia/src/core',
659 [ 'os_posix == 1 and OS != "mac" and OS != "android" and \
660 target_arch != "arm" and target_arch != "mipsel"', {
665 [ 'OS == "android"', {
667 'SK_BUILD_FOR_ANDROID',
670 [ 'target_arch != "arm" and target_arch != "mipsel"', {
672 '../third_party/skia/src/opts/SkBitmapProcState_opts_SSE2.cpp',
673 '../third_party/skia/src/opts/SkBlitRect_opts_SSE2.cpp',
674 '../third_party/skia/src/opts/SkBlitRow_opts_SSE2.cpp',
675 '../third_party/skia/src/opts/SkUtils_opts_SSE2.cpp',
676 'ext/convolver_SSE2.cc',
679 # x86 Android doesn't support SSSE3 instructions.
680 [ 'OS != "android"', {
687 [ 'target_arch == "arm"', {
689 [ 'arm_version >= 7 and arm_neon == 1', {
694 # The neon assembly contains conditional instructions which
695 # aren't enclosed in an IT block. The assembler complains
696 # without this option.
698 '-Wa,-mimplicit-it=always',
702 # The assembly uses the frame pointer register (r7 in Thumb/r11 in
703 # ARM), the compiler doesn't like that. Explicitly remove the
704 # -fno-omit-frame-pointer flag for Android, as that gets added to all
705 # targets via common.gypi.
707 '-fno-omit-frame-pointer',
712 '-fomit-frame-pointer',
715 '../third_party/skia/src/opts/SkBitmapProcState_opts_arm.cpp',
718 [ 'target_arch == "arm" and (arm_version < 7 or arm_neon == 0)', {
720 '../third_party/skia/src/opts/memset.arm.S',
723 [ 'target_arch == "arm" and arm_version >= 7 and arm_neon == 1', {
725 '../third_party/skia/src/opts/memset16_neon.S',
726 '../third_party/skia/src/opts/memset32_neon.S',
727 '../third_party/skia/src/opts/SkBitmapProcState_arm_neon.cpp',
728 '../third_party/skia/src/opts/SkBitmapProcState_matrixProcs_neon.cpp',
729 '../third_party/skia/src/opts/SkBitmapProcState_matrix_clamp_neon.h',
730 '../third_party/skia/src/opts/SkBitmapProcState_matrix_repeat_neon.h',
731 '../third_party/skia/src/opts/SkBlitRow_opts_arm_neon.cpp',
734 [ 'target_arch == "arm" and arm_version < 6', {
736 '../third_party/skia/src/opts/SkBlitRow_opts_none.cpp',
737 '../third_party/skia/src/opts/SkUtils_opts_none.cpp',
740 [ 'target_arch == "arm" and arm_version >= 6', {
742 '../third_party/skia/src/opts/SkBlitRow_opts_arm.cpp',
743 '../third_party/skia/src/opts/SkBlitRow_opts_arm.h',
744 '../third_party/skia/src/opts/opts_check_arm.cpp',
747 [ 'target_arch == "mipsel"',{
749 '-fomit-frame-pointer',
752 '../third_party/skia/src/opts/SkBitmapProcState_opts_none.cpp',
753 '../third_party/skia/src/opts/SkBlitRow_opts_none.cpp',
754 '../third_party/skia/src/opts/SkUtils_opts_none.cpp',
755 'ext/convolver_mips_dspr2.cc',
760 # For the same lame reasons as what is done for skia_opts, we have to
761 # create another target specifically for SSSE3 code as we would not want
762 # to compile the SSE2 code with -mssse3 which would potentially allow
763 # gcc to generate SSSE3 code.
765 'target_name': 'skia_opts_ssse3',
766 'type': 'static_library',
773 '../third_party/skia/include/config',
774 '../third_party/skia/include/core',
775 '../third_party/skia/include/pathops',
776 '../third_party/skia/src/core',
779 [ 'OS in ["linux", "freebsd", "openbsd", "solaris"]', {
786 'GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS': 'YES',
793 'direct_dependent_settings': {
799 [ 'target_arch != "arm" and target_arch != "mipsel"', {
801 '../third_party/skia/src/opts/SkBitmapProcState_opts_SSSE3.cpp',
807 'target_name': 'image_operations_bench',
808 'type': 'executable',
810 '../base/base.gyp:base',
817 'ext/image_operations_bench.cc',
824 # The main skia_opts target does not currently work on iOS because the
825 # target architecture on iOS is determined at compile time rather than
826 # gyp time (simulator builds are x86, device builds are arm). As a
827 # temporary measure, this is a separate opts target for iOS-only, using
828 # the _none.cpp files to avoid architecture-dependent implementations.
830 'target_name': 'skia_opts_ios',
831 'type': 'static_library',
835 '../third_party/skia/include/config',
836 '../third_party/skia/include/core',
837 '../third_party/skia/include/effects',
838 '../third_party/skia/include/images',
839 '../third_party/skia/include/lazy',
840 '../third_party/skia/include/pathops',
841 '../third_party/skia/include/utils',
842 '../third_party/skia/src/core',
845 '../third_party/skia/src/opts/SkBitmapProcState_opts_none.cpp',
846 '../third_party/skia/src/opts/SkBlitRow_opts_none.cpp',
847 '../third_party/skia/src/opts/SkUtils_opts_none.cpp',