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  'target_defaults': {
7    'variables': {
8      'ppapi_proxy_target': 0,
9    },
10    'target_conditions': [
11      # This part is shared between the targets defined below.
12      ['ppapi_proxy_target==1', {
13        'sources': [
14          # Take some standalone files from the C++ wrapper allowing us to more
15          # easily make async callbacks in the proxy. We can't depend on the
16          # full C++ wrappers at this layer since the C++ wrappers expect
17          # symbols defining the globals for "being a plugin" which we are not.
18          # These callback files are standalone.
19          'cpp/completion_callback.h',
20          'utility/completion_callback_factory.h',
21
22          'proxy/audio_buffer_resource.cc',
23          'proxy/audio_buffer_resource.h',
24          'proxy/audio_input_resource.cc',
25          'proxy/audio_input_resource.h',
26          'proxy/broker_dispatcher.cc',
27          'proxy/broker_dispatcher.h',
28          'proxy/broker_resource.cc',
29          'proxy/broker_resource.h',
30          'proxy/browser_font_singleton_resource.cc',
31          'proxy/browser_font_singleton_resource.h',
32          'proxy/compositor_layer_resource.cc',
33          'proxy/compositor_layer_resource.h',
34          'proxy/compositor_resource.cc',
35          'proxy/compositor_resource.h',
36          'proxy/connection.h',
37          'proxy/device_enumeration_resource_helper.cc',
38          'proxy/device_enumeration_resource_helper.h',
39          'proxy/dispatcher.cc',
40          'proxy/dispatcher.h',
41          'proxy/enter_proxy.h',
42          'proxy/error_conversion.cc',
43          'proxy/error_conversion.h',
44          'proxy/file_chooser_resource.cc',
45          'proxy/file_chooser_resource.h',
46          'proxy/file_io_resource.cc',
47          'proxy/file_io_resource.h',
48          'proxy/file_mapping_resource.cc',
49          'proxy/file_mapping_resource.h',
50          'proxy/file_mapping_resource_posix.cc',
51          'proxy/file_mapping_resource_win.cc',
52          'proxy/file_ref_resource.cc',
53          'proxy/file_ref_resource.h',
54          'proxy/file_system_resource.cc',
55          'proxy/file_system_resource.h',
56          'proxy/flash_clipboard_resource.cc',
57          'proxy/flash_clipboard_resource.h',
58          'proxy/flash_drm_resource.cc',
59          'proxy/flash_drm_resource.h',
60          'proxy/flash_file_resource.cc',
61          'proxy/flash_file_resource.h',
62          'proxy/flash_font_file_resource.cc',
63          'proxy/flash_font_file_resource.h',
64          'proxy/flash_fullscreen_resource.cc',
65          'proxy/flash_fullscreen_resource.h',
66          'proxy/flash_menu_resource.cc',
67          'proxy/flash_menu_resource.h',
68          'proxy/flash_resource.cc',
69          'proxy/flash_resource.h',
70          'proxy/gamepad_resource.cc',
71          'proxy/gamepad_resource.h',
72          'proxy/graphics_2d_resource.cc',
73          'proxy/graphics_2d_resource.h',
74          'proxy/host_dispatcher.cc',
75          'proxy/host_dispatcher.h',
76          'proxy/host_resolver_private_resource.cc',
77          'proxy/host_resolver_private_resource.h',
78          'proxy/host_resolver_resource.cc',
79          'proxy/host_resolver_resource.h',
80          'proxy/host_resolver_resource_base.cc',
81          'proxy/host_resolver_resource_base.h',
82          'proxy/host_var_serialization_rules.cc',
83          'proxy/host_var_serialization_rules.h',
84          'proxy/interface_list.cc',
85          'proxy/interface_list.h',
86          'proxy/interface_proxy.cc',
87          'proxy/interface_proxy.h',
88          'proxy/isolated_file_system_private_resource.cc',
89          'proxy/isolated_file_system_private_resource.h',
90          'proxy/locking_resource_releaser.h',
91          'proxy/media_stream_audio_track_resource.cc',
92          'proxy/media_stream_audio_track_resource.h',
93          'proxy/media_stream_track_resource_base.cc',
94          'proxy/media_stream_track_resource_base.h',
95          'proxy/media_stream_video_track_resource.cc',
96          'proxy/media_stream_video_track_resource.h',
97          'proxy/message_handler.cc',
98          'proxy/message_handler.h',
99          'proxy/net_address_resource.cc',
100          'proxy/net_address_resource.h',
101          'proxy/network_list_resource.cc',
102          'proxy/network_list_resource.h',
103          'proxy/network_monitor_resource.cc',
104          'proxy/network_monitor_resource.h',
105          'proxy/network_proxy_resource.cc',
106          'proxy/network_proxy_resource.h',
107          'proxy/output_protection_resource.cc',
108          'proxy/output_protection_resource.h',
109          'proxy/pdf_resource.cc',
110          'proxy/pdf_resource.h',
111          'proxy/platform_verification_private_resource.cc',
112          'proxy/platform_verification_private_resource.h',
113          'proxy/plugin_array_buffer_var.cc',
114          'proxy/plugin_array_buffer_var.h',
115          'proxy/plugin_dispatcher.cc',
116          'proxy/plugin_dispatcher.h',
117          'proxy/plugin_globals.cc',
118          'proxy/plugin_globals.h',
119          'proxy/plugin_message_filter.cc',
120          'proxy/plugin_message_filter.h',
121          'proxy/plugin_resource.cc',
122          'proxy/plugin_resource.h',
123          'proxy/plugin_resource_tracker.cc',
124          'proxy/plugin_resource_tracker.h',
125          'proxy/plugin_resource_var.cc',
126          'proxy/plugin_resource_var.h',
127          'proxy/plugin_var_serialization_rules.cc',
128          'proxy/plugin_var_serialization_rules.h',
129          'proxy/plugin_var_tracker.cc',
130          'proxy/plugin_var_tracker.h',
131          'proxy/ppapi_command_buffer_proxy.cc',
132          'proxy/ppapi_command_buffer_proxy.h',
133          'proxy/ppapi_messages.h',
134          'proxy/ppapi_message_utils.h',
135          'proxy/ppb_audio_proxy.cc',
136          'proxy/ppb_audio_proxy.h',
137          'proxy/ppb_broker_proxy.cc',
138          'proxy/ppb_broker_proxy.h',
139          'proxy/ppb_buffer_proxy.cc',
140          'proxy/ppb_buffer_proxy.h',
141          'proxy/ppb_core_proxy.cc',
142          'proxy/ppb_core_proxy.h',
143          'proxy/ppb_flash_message_loop_proxy.cc',
144          'proxy/ppb_flash_message_loop_proxy.h',
145          'proxy/ppb_graphics_3d_proxy.cc',
146          'proxy/ppb_graphics_3d_proxy.h',
147          'proxy/ppb_image_data_proxy.cc',
148          'proxy/ppb_image_data_proxy.h',
149          'proxy/ppb_instance_proxy.cc',
150          'proxy/ppb_instance_proxy.h',
151          'proxy/ppb_message_loop_proxy.cc',
152          'proxy/ppb_message_loop_proxy.h',
153          'proxy/ppb_testing_proxy.cc',
154          'proxy/ppb_testing_proxy.h',
155          'proxy/ppb_var_deprecated_proxy.cc',
156          'proxy/ppb_var_deprecated_proxy.h',
157          'proxy/ppb_video_decoder_proxy.cc',
158          'proxy/ppb_video_decoder_proxy.h',
159          'proxy/ppb_x509_certificate_private_proxy.cc',
160          'proxy/ppb_x509_certificate_private_proxy.h',
161          'proxy/ppp_class_proxy.cc',
162          'proxy/ppp_class_proxy.h',
163          'proxy/ppp_content_decryptor_private_proxy.cc',
164          'proxy/ppp_content_decryptor_private_proxy.h',
165          'proxy/ppp_find_proxy.cc',
166          'proxy/ppp_find_proxy.h',
167          'proxy/ppp_graphics_3d_proxy.cc',
168          'proxy/ppp_graphics_3d_proxy.h',
169          'proxy/ppp_input_event_proxy.cc',
170          'proxy/ppp_input_event_proxy.h',
171          'proxy/ppp_instance_private_proxy.cc',
172          'proxy/ppp_instance_private_proxy.h',
173          'proxy/ppp_instance_proxy.cc',
174          'proxy/ppp_instance_proxy.h',
175          'proxy/ppp_messaging_proxy.cc',
176          'proxy/ppp_messaging_proxy.h',
177          'proxy/ppp_mouse_lock_proxy.cc',
178          'proxy/ppp_mouse_lock_proxy.h',
179          'proxy/ppp_pdf_proxy.cc',
180          'proxy/ppp_pdf_proxy.h',
181          'proxy/ppp_printing_proxy.cc',
182          'proxy/ppp_printing_proxy.h',
183          'proxy/ppp_text_input_proxy.cc',
184          'proxy/ppp_text_input_proxy.h',
185          'proxy/ppp_video_decoder_proxy.cc',
186          'proxy/ppp_video_decoder_proxy.h',
187          'proxy/printing_resource.cc',
188          'proxy/printing_resource.h',
189          'proxy/proxy_array_output.cc',
190          'proxy/proxy_array_output.h',
191          'proxy/proxy_channel.cc',
192          'proxy/proxy_channel.h',
193          'proxy/proxy_completion_callback_factory.h',
194          'proxy/proxy_module.cc',
195          'proxy/proxy_module.h',
196          'proxy/proxy_object_var.cc',
197          'proxy/proxy_object_var.h',
198          'proxy/resource_creation_proxy.cc',
199          'proxy/resource_creation_proxy.h',
200          'proxy/resource_reply_thread_registrar.cc',
201          'proxy/resource_reply_thread_registrar.h',
202          'proxy/talk_resource.cc',
203          'proxy/talk_resource.h',
204          'proxy/tcp_server_socket_private_resource.cc',
205          'proxy/tcp_server_socket_private_resource.h',
206          'proxy/tcp_socket_private_resource.cc',
207          'proxy/tcp_socket_private_resource.h',
208          'proxy/tcp_socket_resource.cc',
209          'proxy/tcp_socket_resource.h',
210          'proxy/tcp_socket_resource_base.cc',
211          'proxy/tcp_socket_resource_base.h',
212          'proxy/truetype_font_resource.cc',
213          'proxy/truetype_font_resource.h',
214          'proxy/truetype_font_singleton_resource.cc',
215          'proxy/truetype_font_singleton_resource.h',
216          'proxy/udp_socket_private_resource.cc',
217          'proxy/udp_socket_private_resource.h',
218          'proxy/udp_socket_resource.cc',
219          'proxy/udp_socket_resource.h',
220          'proxy/udp_socket_resource_base.cc',
221          'proxy/udp_socket_resource_base.h',
222          'proxy/uma_private_resource.cc',
223          'proxy/uma_private_resource.h',
224          'proxy/url_loader_resource.cc',
225          'proxy/url_loader_resource.h',
226          'proxy/url_request_info_resource.cc',
227          'proxy/url_request_info_resource.h',
228          'proxy/url_response_info_resource.cc',
229          'proxy/url_response_info_resource.h',
230          'proxy/var_serialization_rules.h',
231          'proxy/video_capture_resource.cc',
232          'proxy/video_capture_resource.h',
233          'proxy/video_decoder_resource.cc',
234          'proxy/video_decoder_resource.h',
235          'proxy/video_destination_resource.cc',
236          'proxy/video_destination_resource.h',
237          'proxy/video_frame_resource.cc',
238          'proxy/video_frame_resource.h',
239          'proxy/video_source_resource.cc',
240          'proxy/video_source_resource.h',
241          'proxy/websocket_resource.cc',
242          'proxy/websocket_resource.h',
243        ],
244        'defines': [
245          'PPAPI_PROXY_IMPLEMENTATION',
246        ],
247        'include_dirs': [
248          '..',
249        ],
250        'target_conditions': [
251          ['>(nacl_untrusted_build)==1', {
252            'sources': [
253              'nacl_irt/irt_ppapi.cc',
254              'nacl_irt/irt_ppapi.h',
255              'nacl_irt/irt_start.cc',
256              'nacl_irt/manifest_service.cc',
257              'nacl_irt/manifest_service.h',
258              'nacl_irt/plugin_main.cc',
259              'nacl_irt/plugin_main.h',
260              'nacl_irt/plugin_startup.cc',
261              'nacl_irt/plugin_startup.h',
262              'nacl_irt/ppapi_dispatcher.cc',
263              'nacl_irt/ppapi_dispatcher.h',
264            ],
265            'sources!': [
266              'proxy/audio_input_resource.cc',
267              'proxy/broker_dispatcher.cc',
268              'proxy/browser_font_singleton_resource.cc',
269              'proxy/device_enumeration_resource_helper.cc',
270              'proxy/flash_clipboard_resource.cc',
271              'proxy/flash_drm_resource.cc',
272              'proxy/flash_file_resource.cc',
273              'proxy/flash_font_file_resource.cc',
274              'proxy/flash_fullscreen_resource.cc',
275              'proxy/flash_menu_resource.cc',
276              'proxy/flash_resource.cc',
277              'proxy/host_dispatcher.cc',
278              'proxy/host_var_serialization_rules.cc',
279              'proxy/pdf_resource.cc',
280              'proxy/platform_verification_private_resource.cc',
281              'proxy/platform_verification_private_resource.h',
282              'proxy/ppb_broker_proxy.cc',
283              'proxy/ppb_buffer_proxy.cc',
284              'proxy/ppb_flash_message_loop_proxy.cc',
285              'proxy/ppb_flash_proxy.cc',
286              'proxy/ppb_pdf_proxy.cc',
287              'proxy/ppb_talk_private_proxy.cc',
288              'proxy/ppb_video_capture_proxy.cc',
289              'proxy/ppb_video_decoder_proxy.cc',
290              'proxy/ppp_content_decryptor_private_proxy.cc',
291              'proxy/ppp_instance_private_proxy.cc',
292              'proxy/ppp_video_decoder_proxy.cc',
293              'proxy/serialized_flash_menu.cc',
294              'proxy/talk_resource.cc',
295              'proxy/video_capture_resource.cc',
296            ],
297          }],
298        ],
299      }],
300    ],
301  },
302}
303