Roll src/third_party/WebKit 9c0bc58:6682ca2 (svn 183299:183304)
[chromium-blink-merge.git] / skia / skia.gyp
blobc4129db5a58a6fcfc19d4b4c4753601c879fac55
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.
6   'conditions': [
7     # In component mode (shared_lib), we build all of skia as a single DLL.
8     # However, in the static mode, we need to build skia as multiple targets
9     # in order to support the use case where a platform (e.g. Android) may
10     # already have a copy of skia as a system library.
11     ['component=="static_library" and use_system_skia==0', {
12       'targets': [
13         {
14           'target_name': 'skia_library',
15           'type': 'static_library',
16           'includes': [
17             'skia_library.gypi',
18             'skia_common.gypi',
19             '../build/android/increase_size_for_speed.gypi',
20           ],
21         },
22       ],
23     }],
24     ['component=="static_library" and use_system_skia==1', {
25       'targets': [
26         {
27           'target_name': 'skia_library',
28           'type': 'none',
29           'includes': [
30             'skia_system.gypi',
31             '../build/android/increase_size_for_speed.gypi',
32           ],
33         },
34       ],
35     }],
36     ['component=="static_library"', {
37       'targets': [
38         {
39           'target_name': 'skia',
40           'type': 'none',
41           'dependencies': [
42             'skia_library',
43             'skia_chrome',
44           ],
45           'export_dependent_settings': [
46             'skia_library',
47             'skia_chrome',
48           ],
49         },
50         {
51           'target_name': 'skia_chrome',
52           'type': 'static_library',
53           'includes': [
54             'skia_chrome.gypi',
55             'skia_common.gypi',
56             '../build/android/increase_size_for_speed.gypi',
57           ],
58         },
59       ],
60     },
61     {  # component != static_library
62       'targets': [
63         {
64           'target_name': 'skia',
65           'type': 'shared_library',
66           'includes': [
67             'skia_library.gypi',
68             'skia_chrome.gypi',
69             'skia_common.gypi',
70             '../build/android/increase_size_for_speed.gypi',
71           ],
72           'defines': [
73             'SKIA_DLL',
74             'SKIA_IMPLEMENTATION=1',
75             'GR_GL_IGNORE_ES3_MSAA=0',
76           ],
77           'direct_dependent_settings': {
78             'defines': [
79               'SKIA_DLL',
80               'GR_GL_IGNORE_ES3_MSAA=0',
81             ],
82           },
83         },
84         {
85           'target_name': 'skia_library',
86           'type': 'none',
87         },
88         {
89           'target_name': 'skia_chrome',
90           'type': 'none',
91         },
92       ],
93     }],
94   ],
96   # targets that are not dependent upon the component type
97   'targets': [
98     {
99       'target_name': 'skia_chrome_opts',
100       'type': 'static_library',
101       'include_dirs': [
102         '..',
103         'config',
104         '../third_party/skia/include/core',
105       ],
106       'conditions': [
107         [ 'os_posix == 1 and OS != "mac" and OS != "android" and \
108             target_arch != "arm" and target_arch != "mipsel" and \
109             target_arch != "arm64" and target_arch != "mips64el"', {
110           'cflags': [
111             '-msse2',
112           ],
113         }],
114         [ 'target_arch != "arm" and target_arch != "mipsel" and \
115            target_arch != "arm64" and target_arch != "mips64el"', {
116           'sources': [
117             'ext/convolver_SSE2.cc',
118           ],
119         }],
120         [ 'target_arch == "mipsel"',{
121           'cflags': [
122             '-fomit-frame-pointer',
123           ],
124           'sources': [
125             'ext/convolver_mips_dspr2.cc',
126           ],
127         }],
128       ],
129     },
130     {
131       'target_name': 'image_operations_bench',
132       'type': 'executable',
133       'dependencies': [
134         '../base/base.gyp:base',
135         'skia',
136       ],
137       'include_dirs': [
138         '..',
139       ],
140       'sources': [
141         'ext/image_operations_bench.cc',
142       ],
143     },
144     {
145       'target_name': 'filter_fuzz_stub',
146       'type': 'executable',
147       'dependencies': [
148         '../base/base.gyp:base',
149         'skia.gyp:skia',
150       ],
151       'sources': [
152         'tools/filter_fuzz_stub/filter_fuzz_stub.cc',
153       ],
154       'includes': [
155         '../build/android/increase_size_for_speed.gypi',
156       ],
157     },
158   ],