1# Copyright 2014 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  'targets': [
7    {
8      # GN version: //components/bookmarks/browser
9      'target_name': 'bookmarks_browser',
10      'type': 'static_library',
11      'include_dirs': [
12        '..',
13      ],
14      'dependencies': [
15        '../base/base.gyp:base',
16        '../net/net.gyp:net',
17        '../third_party/icu/icu.gyp:icuuc',
18        '../ui/base/ui_base.gyp:ui_base',
19        '../ui/gfx/gfx.gyp:gfx',
20        '../url/url.gyp:url_lib',
21        'bookmarks_common',
22        'components_strings.gyp:components_strings',
23        'favicon_base',
24        'keyed_service_core',
25        'pref_registry',
26        'query_parser',
27        'startup_metric_utils',
28      ],
29      'sources': [
30        'bookmarks/browser/base_bookmark_model_observer.cc',
31        'bookmarks/browser/base_bookmark_model_observer.h',
32        'bookmarks/browser/bookmark_client.cc',
33        'bookmarks/browser/bookmark_client.h',
34        'bookmarks/browser/bookmark_codec.cc',
35        'bookmarks/browser/bookmark_codec.h',
36        'bookmarks/browser/bookmark_expanded_state_tracker.cc',
37        'bookmarks/browser/bookmark_expanded_state_tracker.h',
38        'bookmarks/browser/bookmark_index.cc',
39        'bookmarks/browser/bookmark_index.h',
40        'bookmarks/browser/bookmark_match.cc',
41        'bookmarks/browser/bookmark_match.h',
42        'bookmarks/browser/bookmark_model.cc',
43        'bookmarks/browser/bookmark_model.h',
44        'bookmarks/browser/bookmark_model_observer.h',
45        'bookmarks/browser/bookmark_node.cc',
46        'bookmarks/browser/bookmark_node.h',
47        'bookmarks/browser/bookmark_node_data.cc',
48        'bookmarks/browser/bookmark_node_data.h',
49        'bookmarks/browser/bookmark_node_data_ios.cc',
50        'bookmarks/browser/bookmark_node_data_mac.cc',
51        'bookmarks/browser/bookmark_node_data_views.cc',
52        'bookmarks/browser/bookmark_pasteboard_helper_mac.h',
53        'bookmarks/browser/bookmark_pasteboard_helper_mac.mm',
54        'bookmarks/browser/bookmark_storage.cc',
55        'bookmarks/browser/bookmark_storage.h',
56        'bookmarks/browser/bookmark_utils.cc',
57        'bookmarks/browser/bookmark_utils.h',
58        'bookmarks/browser/scoped_group_bookmark_actions.cc',
59        'bookmarks/browser/scoped_group_bookmark_actions.h',
60      ],
61      'conditions': [
62        ['OS == "android"', {
63          'dependencies': [
64            'bookmarks_jni_headers',
65          ],
66          'sources' : [
67            'bookmarks/common/android/bookmark_id.cc',
68            'bookmarks/common/android/bookmark_id.h',
69            'bookmarks/common/android/bookmark_type_list.h',
70            'bookmarks/common/android/component_jni_registrar.cc',
71            'bookmarks/common/android/component_jni_registrar.h',
72          ],
73        }],
74      ],
75    },
76    {
77      # GN version: //components/bookmarks/common
78      'target_name': 'bookmarks_common',
79      'type': 'static_library',
80      'include_dirs': [
81        '..',
82      ],
83      'dependencies': [
84        '../base/base.gyp:base',
85      ],
86      'sources': [
87        'bookmarks/common/bookmark_constants.cc',
88        'bookmarks/common/bookmark_constants.h',
89        'bookmarks/common/bookmark_pref_names.cc',
90        'bookmarks/common/bookmark_pref_names.h',
91      ],
92    },
93    {
94      # GN version: //components/bookmarks/test
95      'target_name': 'bookmarks_test_support',
96      'type': 'static_library',
97      'include_dirs': [
98        '..',
99      ],
100      'dependencies': [
101        '../base/base.gyp:base',
102        '../testing/gmock.gyp:gmock',
103        '../ui/events/platform/events_platform.gyp:events_platform',
104        '../url/url.gyp:url_lib',
105        'bookmarks_browser',
106      ],
107      'sources': [
108        'bookmarks/test/bookmark_test_helpers.cc',
109        'bookmarks/test/bookmark_test_helpers.h',
110        'bookmarks/test/mock_bookmark_model_observer.cc',
111        'bookmarks/test/mock_bookmark_model_observer.h',
112        'bookmarks/test/test_bookmark_client.cc',
113        'bookmarks/test/test_bookmark_client.h',
114      ],
115      'conditions': [
116        ['use_x11==1', {
117          'dependencies': [
118            '../ui/events/platform/x11/x11_events_platform.gyp:x11_events_platform',
119          ],
120        }],
121      ],
122    },
123  ],
124  'conditions' : [
125    ['OS=="android"', {
126      'targets': [
127        {
128          'target_name': 'bookmarks_java',
129          'type': 'none',
130          'dependencies': [
131            '../base/base.gyp:base_java',
132            'bookmark_type_java',
133          ],
134          'variables': {
135            'java_in_dir': 'bookmarks/common/android/java',
136          },
137          'includes': [ '../build/java.gypi' ],
138        },
139        {
140          'target_name': 'bookmarks_jni_headers',
141          'type': 'none',
142          'sources': [
143            'bookmarks/common/android/java/src/org/chromium/components/bookmarks/BookmarkId.java',
144          ],
145          'variables': {
146            'jni_gen_package': 'components/bookmarks',
147          },
148          'includes': [ '../build/jni_generator.gypi' ],
149        },
150        {
151          'target_name': 'bookmark_type_java',
152          'type': 'none',
153          'sources': [
154            'bookmarks/common/android/java/src/org/chromium/components/bookmarks/BookmarkType.template',
155          ],
156          'variables': {
157            'package_name': 'org/chromium/components/bookmarks',
158            'template_deps': ['bookmarks/common/android/bookmark_type_list.h'],
159          },
160          'includes': [ '../build/android/java_cpp_template.gypi' ],
161        },
162      ],
163    }]
164  ],
165}
166