- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / common / extensions / api / api.gyp
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.
4
5 {
6   'targets': [
7     {
8       'target_name': 'api',
9       'type': 'static_library',
10       'sources': [
11         '<@(schema_files)',
12       ],
13       # TODO(jschuh): http://crbug.com/167187 size_t -> int
14       'msvs_disabled_warnings': [ 4267 ],
15       'includes': [
16         '../../../../build/json_schema_bundle_compile.gypi',
17         '../../../../build/json_schema_compile.gypi',
18       ],
19       'variables': {
20         'chromium_code': 1,
21         # Disable schema compiler to generate model extension API code.
22         # Only register the extension functions in extension system.
23         'non_compiled_schema_files': [
24           'adview.json',
25           'browsing_data.json',
26           'chromeos_info_private.json',
27           'extension.json',
28           'idltest.idl',
29           'infobars.json',
30           'media_player_private.json',
31           'music_manager_private.idl',
32           'preferences_private.json',
33           'principals_private.idl',
34           'top_sites.json',
35         ],
36         'conditions': [
37           ['OS!="android"', {
38             'schema_files': [
39               'activity_log_private.json',
40               'alarms.idl',
41               'app_current_window_internal.idl',
42               'app_runtime.idl',
43               'app_window.idl',
44               'audio.idl',
45               'autotest_private.idl',
46               'bluetooth.idl',
47               'bookmark_manager_private.json',
48               'bookmarks.json',
49               'braille_display_private.idl',
50               'cast_channel.idl',
51               'cloud_print_private.json',
52               'command_line_private.json',
53               'content_settings.json',
54               'context_menus.json',
55               'cookies.json',
56               'debugger.json',
57               'desktop_capture.json',
58               'developer_private.idl',
59               'dial.idl',
60               'dns.idl',
61               'downloads.idl',
62               'downloads_internal.idl',
63               'echo_private.json',
64               'enterprise_platform_keys_private.json',
65               'events.json',
66               'experimental_accessibility.json',
67               'experimental_discovery.idl',
68               'experimental_history.json',
69               'experimental_identity.idl',
70               'feedback_private.idl',
71               'file_browser_private.json',
72               'file_system.idl',
73               'font_settings.json',
74               'hangouts_private.idl',
75               'history.json',
76               'i18n.json',
77               'identity.idl',
78               'identity_private.idl',
79               'idle.json',
80               'image_writer_private.idl',
81               'input_ime.json',
82               'location.idl',
83               'management.json',
84               'manifest_types.json',
85               'mdns.idl',
86               'media_galleries.idl',
87               'media_galleries_private.idl',
88               'metrics_private.json',
89               'networking_private.json',
90               'notifications.idl',
91               'omnibox.json',
92               'page_capture.json',
93               'permissions.json',
94               'power.idl',
95               'push_messaging.idl',
96               'runtime.json',
97               'serial.idl',
98               'sessions.json',
99               'signed_in_devices.idl',
100               'socket.idl',
101               'sockets_tcp.idl',
102               'sockets_tcp_server.idl',
103               'sockets_udp.idl',
104               'storage.json',
105               'sync_file_system.idl',
106               'system_cpu.idl',
107               'system_display.idl',
108               'system_indicator.idl',
109               'system_memory.idl',
110               'system_private.json',
111               'system_storage.idl',
112               'tab_capture.idl',
113               'tabs.json',
114               'terminal_private.json',
115               'test.json',
116               'usb.idl',
117               'virtual_keyboard_private.json',
118               'web_navigation.json',
119               'web_request.json',
120               # Despite the name, this API does not rely on any
121               # WebRTC-specific bits and as such does not belong in
122               # the enable_webrtc=0 section below.
123               'webrtc_audio_private.idl',
124               'webstore_private.json',
125               'webview.json',
126               'windows.json',
127             ],
128           }, {  # OS=="android"
129               'schema_files': [
130                 # These should be eliminated. See crbug.com/305852.
131                 'activity_log_private.json',
132                 'alarms.idl',
133                 'app_runtime.idl',
134                 'app_window.idl',
135                 'context_menus.json',
136                 'downloads.idl',
137                 'events.json',
138                 'feedback_private.idl',
139                 'file_system.idl',
140                 'manifest_types.json',
141                 'omnibox.json',
142                 'permissions.json',
143                 'runtime.json',
144                 'storage.json',
145                 'sync_file_system.idl',
146                 'tab_capture.idl',
147                 'tabs.json',
148                 'web_navigation.json',
149                 'web_request.json',
150                 'windows.json',
151               ],
152           }],
153           ['chromeos==1', {
154             'schema_files': [
155               'diagnostics.idl',
156               'file_browser_handler_internal.json',
157               'log_private.idl',
158               'wallpaper.json',
159               'wallpaper_private.json',
160             ],
161           }],
162           ['enable_webrtc==1', {
163             'schema_files': [
164               'webrtc_cast_send_transport.idl',
165               'webrtc_cast_udp_transport.idl',
166               'webrtc_logging_private.idl',
167             ],
168           }],
169         ],
170         'cc_dir': 'chrome/common/extensions/api',
171         'root_namespace': 'extensions::api',
172       },
173       'dependencies': [
174         '<(DEPTH)/skia/skia.gyp:skia',
175         '<(DEPTH)/sync/sync.gyp:sync',
176       ],
177       'conditions': [
178         ['chromeos==1', {
179           'dependencies': [
180             '<(DEPTH)/chrome/chrome.gyp:drive_proto',
181           ],
182         }],
183       ],
184     },
185   ],
186 }