1# 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  'conditions': [
7    ['android_webview_build == 0', {
8      'targets': [
9        {
10          # GN version: //components/dom_distiller/webui
11          'target_name': 'dom_distiller_webui',
12          'type': 'static_library',
13          'dependencies': [
14            '../base/base.gyp:base',
15            '../content/content.gyp:content_browser',
16            '../skia/skia.gyp:skia',
17            '../sync/sync.gyp:sync',
18            'components_resources.gyp:components_resources',
19            'components_strings.gyp:components_strings',
20            'distilled_page_proto',
21            'dom_distiller_core',
22          ],
23          'include_dirs': [
24            '..',
25          ],
26          'sources': [
27            'dom_distiller/webui/dom_distiller_handler.cc',
28            'dom_distiller/webui/dom_distiller_handler.h',
29            'dom_distiller/webui/dom_distiller_ui.cc',
30            'dom_distiller/webui/dom_distiller_ui.h',
31          ],
32        },
33        {
34          # GN version: //components/dom_distiller/core
35          'target_name': 'dom_distiller_core',
36          'type': 'static_library',
37          'dependencies': [
38            '../base/base.gyp:base',
39            '../skia/skia.gyp:skia',
40            '../sync/sync.gyp:sync',
41            '../third_party/dom_distiller_js/dom_distiller_js.gyp:dom_distiller_js_proto',
42            'components.gyp:leveldb_proto',
43            'components_resources.gyp:components_resources',
44            'components_strings.gyp:components_strings',
45            'distilled_page_proto',
46            'pref_registry',
47          ],
48          'include_dirs': [
49            '..',
50          ],
51          'export_dependent_settings': [
52            'distilled_page_proto',
53            '../third_party/dom_distiller_js/dom_distiller_js.gyp:dom_distiller_js_proto',
54          ],
55          'sources': [
56            'dom_distiller/android/component_jni_registrar.cc',
57            'dom_distiller/android/component_jni_registrar.h',
58            'dom_distiller/core/article_distillation_update.cc',
59            'dom_distiller/core/article_distillation_update.h',
60            'dom_distiller/core/article_entry.cc',
61            'dom_distiller/core/article_entry.h',
62            'dom_distiller/core/distilled_content_store.cc',
63            'dom_distiller/core/distilled_content_store.h',
64            'dom_distiller/core/distilled_page_prefs.cc',
65            'dom_distiller/core/distilled_page_prefs.h',
66            'dom_distiller/core/distilled_page_prefs_android.cc',
67            'dom_distiller/core/distilled_page_prefs_android.h',
68            'dom_distiller/core/distiller.cc',
69            'dom_distiller/core/distiller.h',
70            'dom_distiller/core/distiller_page.cc',
71            'dom_distiller/core/distiller_page.h',
72            'dom_distiller/core/distiller_url_fetcher.cc',
73            'dom_distiller/core/distiller_url_fetcher.h',
74            'dom_distiller/core/dom_distiller_constants.cc',
75            'dom_distiller/core/dom_distiller_constants.h',
76            'dom_distiller/core/dom_distiller_model.cc',
77            'dom_distiller/core/dom_distiller_model.h',
78            'dom_distiller/core/dom_distiller_observer.h',
79            'dom_distiller/core/dom_distiller_service.cc',
80            'dom_distiller/core/dom_distiller_service.h',
81            'dom_distiller/core/dom_distiller_service_android.cc',
82            'dom_distiller/core/dom_distiller_service_android.h',
83            'dom_distiller/core/dom_distiller_store.cc',
84            'dom_distiller/core/dom_distiller_store.h',
85            'dom_distiller/core/feedback_reporter.cc',
86            'dom_distiller/core/feedback_reporter.h',
87            'dom_distiller/core/font_family_list.h',
88            'dom_distiller/core/task_tracker.cc',
89            'dom_distiller/core/task_tracker.h',
90            'dom_distiller/core/theme_list.h',
91            'dom_distiller/core/url_constants.cc',
92            'dom_distiller/core/url_constants.h',
93            'dom_distiller/core/url_utils_android.cc',
94            'dom_distiller/core/url_utils_android.h',
95            'dom_distiller/core/url_utils.cc',
96            'dom_distiller/core/url_utils.h',
97            'dom_distiller/core/viewer.cc',
98            'dom_distiller/core/viewer.h',
99          ],
100          'conditions': [
101            ['OS == "android"', {
102              'dependencies': [
103                'dom_distiller_core_jni_headers',
104              ],
105            }],
106          ],
107        },
108        {
109          # GN version: components/dom_distiller/core:test_support
110          'target_name': 'dom_distiller_test_support',
111          'type': 'static_library',
112          'dependencies': [
113            'dom_distiller_core',
114            'components.gyp:leveldb_proto_test_support',
115            '../sync/sync.gyp:sync',
116            '../testing/gmock.gyp:gmock',
117          ],
118          'include_dirs': [
119            '..',
120          ],
121          'sources': [
122            'dom_distiller/core/dom_distiller_test_util.cc',
123            'dom_distiller/core/dom_distiller_test_util.h',
124            'dom_distiller/core/fake_distiller.cc',
125            'dom_distiller/core/fake_distiller.h',
126            'dom_distiller/core/fake_distiller_page.cc',
127            'dom_distiller/core/fake_distiller_page.h',
128          ],
129        },
130        {
131          # GN version: //components/dom_distiller/core/proto
132          'target_name': 'distilled_page_proto',
133          'type': 'static_library',
134          'sources': [
135            'dom_distiller/core/proto/distilled_article.proto',
136            'dom_distiller/core/proto/distilled_page.proto',
137          ],
138          'variables': {
139            'proto_in_dir': 'dom_distiller/core/proto',
140            'proto_out_dir': 'components/dom_distiller/core/proto',
141          },
142          'includes': [ '../build/protoc.gypi' ]
143        },
144      ],
145      'conditions': [
146        ['OS != "ios"', {
147          'targets': [
148            {
149              # GN version: //components/dom_distiller/content
150              'target_name': 'dom_distiller_content',
151              'type': 'static_library',
152              'dependencies': [
153                '../content/content.gyp:content_browser',
154                '../net/net.gyp:net',
155                '../skia/skia.gyp:skia',
156                '../sync/sync.gyp:sync',
157                'components_resources.gyp:components_resources',
158                'components_strings.gyp:components_strings',
159                'dom_distiller_core',
160              ],
161              'include_dirs': [
162                '..',
163              ],
164              'sources': [
165                'dom_distiller/content/distiller_page_web_contents.cc',
166                'dom_distiller/content/distiller_page_web_contents.h',
167                'dom_distiller/content/dom_distiller_viewer_source.cc',
168                'dom_distiller/content/dom_distiller_viewer_source.h',
169                'dom_distiller/content/web_contents_main_frame_observer.cc',
170                'dom_distiller/content/web_contents_main_frame_observer.h',
171              ],
172            },
173          ],
174        }],
175        ['OS=="android"', {
176          'targets': [
177            {
178              'target_name': 'dom_distiller_core_java',
179              'type': 'none',
180              'dependencies': [
181                'dom_distiller_core_font_family_java',
182                'dom_distiller_core_theme_java',
183                '../base/base.gyp:base',
184              ],
185              'variables': {
186                'java_in_dir': 'dom_distiller/android/java',
187              },
188              'includes': [ '../build/java.gypi' ],
189            },
190            {
191              'target_name': 'dom_distiller_core_font_family_java',
192              'type': 'none',
193              'sources': [
194                'dom_distiller/android/java/src/org/chromium/components/dom_distiller/core/FontFamily.template',
195              ],
196              'variables': {
197                'package_name': 'org/chromium/components/dom_distiller/core',
198                'template_deps': ['dom_distiller/core/font_family_list.h'],
199              },
200              'includes': [ '../build/android/java_cpp_template.gypi' ],
201            },
202            {
203              'target_name': 'dom_distiller_core_jni_headers',
204              'type': 'none',
205              'sources': [
206                'dom_distiller/android/java/src/org/chromium/components/dom_distiller/core/DistilledPagePrefs.java',
207                'dom_distiller/android/java/src/org/chromium/components/dom_distiller/core/DomDistillerService.java',
208                'dom_distiller/android/java/src/org/chromium/components/dom_distiller/core/DomDistillerUrlUtils.java',
209              ],
210              'variables': {
211                'jni_gen_package': 'dom_distiller_core',
212              },
213              'includes': [ '../build/jni_generator.gypi' ],
214            },
215            {
216              'target_name': 'dom_distiller_core_theme_java',
217              'type': 'none',
218              'sources': [
219                'dom_distiller/android/java/src/org/chromium/components/dom_distiller/core/Theme.template',
220              ],
221              'variables': {
222                'package_name': 'org/chromium/components/dom_distiller/core',
223                'template_deps': ['dom_distiller/core/theme_list.h'],
224              },
225              'includes': [ '../build/android/java_cpp_template.gypi' ],
226            },
227          ],
228        }],
229      ],
230    }],
231  ],
232}
233