blob: 766dc4aaeccf534dde647c3054ab9bbd4efb2730 [file] [log] [blame]
# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
source_set("thunk") {
# In GYP this is the same target as shared_impl. In GN these are split apart
# for clarity but to get component builds correct, targets must only depend
# on these via the shared_impl component.
# TODO(brettw) separate these when GYP compat is no longer required.
visibility = [ "//ppapi/shared_impl" ]
sources = [
"enter.cc",
"enter.h",
"ppb_audio_api.h",
"ppb_audio_buffer_api.h",
"ppb_audio_buffer_thunk.cc",
"ppb_audio_config_api.h",
"ppb_audio_config_thunk.cc",
"ppb_audio_encoder_api.h",
"ppb_audio_encoder_thunk.cc",
"ppb_audio_input_api.h",
"ppb_audio_thunk.cc",
"ppb_broker_api.h",
"ppb_browser_font_trusted_api.h",
"ppb_buffer_api.h",
"ppb_camera_capabilities_api.h",
"ppb_camera_capabilities_private_thunk.cc",
"ppb_camera_device_api.h",
"ppb_camera_device_private_thunk.cc",
"ppb_compositor_api.h",
"ppb_compositor_layer_api.h",
"ppb_compositor_layer_thunk.cc",
"ppb_compositor_thunk.cc",
"ppb_console_thunk.cc",
"ppb_cursor_control_thunk.cc",
"ppb_device_ref_api.h",
"ppb_device_ref_dev_thunk.cc",
"ppb_ext_crx_file_system_private_thunk.cc",
"ppb_file_chooser_api.h",
"ppb_file_chooser_dev_thunk.cc",
"ppb_file_chooser_trusted_thunk.cc",
"ppb_file_io_api.h",
"ppb_file_io_private_thunk.cc",
"ppb_file_io_thunk.cc",
"ppb_file_ref_api.h",
"ppb_file_ref_thunk.cc",
"ppb_file_system_api.h",
"ppb_file_system_thunk.cc",
"ppb_find_private_thunk.cc",
"ppb_flash_clipboard_api.h",
"ppb_flash_drm_api.h",
"ppb_flash_font_file_api.h",
"ppb_flash_fullscreen_api.h",
"ppb_flash_functions_api.h",
"ppb_flash_menu_api.h",
"ppb_flash_message_loop_api.h",
"ppb_flash_print_thunk.cc",
"ppb_fullscreen_thunk.cc",
"ppb_gamepad_api.h",
"ppb_gamepad_thunk.cc",
"ppb_graphics_2d_api.h",
"ppb_graphics_2d_thunk.cc",
"ppb_graphics_3d_api.h",
"ppb_graphics_3d_thunk.cc",
"ppb_host_resolver_api.h",
"ppb_host_resolver_private_api.h",
"ppb_host_resolver_private_thunk.cc",
"ppb_host_resolver_thunk.cc",
"ppb_image_data_api.h",
"ppb_image_data_thunk.cc",
"ppb_input_event_api.h",
"ppb_input_event_thunk.cc",
"ppb_instance_api.h",
"ppb_instance_private_thunk.cc",
"ppb_instance_thunk.cc",
"ppb_isolated_file_system_private_api.h",
"ppb_isolated_file_system_private_thunk.cc",
"ppb_media_stream_audio_track_api.h",
"ppb_media_stream_audio_track_thunk.cc",
"ppb_media_stream_video_track_api.h",
"ppb_media_stream_video_track_thunk.cc",
"ppb_message_loop_api.h",
"ppb_messaging_thunk.cc",
"ppb_mouse_cursor_thunk.cc",
"ppb_mouse_lock_thunk.cc",
"ppb_net_address_api.h",
"ppb_net_address_thunk.cc",
"ppb_network_list_api.h",
"ppb_network_list_thunk.cc",
"ppb_network_monitor_api.h",
"ppb_network_monitor_thunk.cc",
"ppb_network_proxy_api.h",
"ppb_network_proxy_thunk.cc",
"ppb_output_protection_api.h",
"ppb_output_protection_private_thunk.cc",
"ppb_pdf_api.h",
"ppb_platform_verification_api.h",
"ppb_printing_api.h",
"ppb_printing_dev_thunk.cc",
"ppb_tcp_server_socket_private_api.h",
"ppb_tcp_server_socket_private_thunk.cc",
"ppb_tcp_socket_api.h",
"ppb_tcp_socket_private_api.h",
"ppb_tcp_socket_private_thunk.cc",
"ppb_tcp_socket_thunk.cc",
"ppb_text_input_thunk.cc",
"ppb_truetype_font_api.h",
"ppb_truetype_font_dev_thunk.cc",
"ppb_truetype_font_singleton_api.h",
"ppb_udp_socket_api.h",
"ppb_udp_socket_private_api.h",
"ppb_udp_socket_private_thunk.cc",
"ppb_udp_socket_thunk.cc",
"ppb_uma_private_thunk.cc",
"ppb_uma_singleton_api.h",
"ppb_url_loader_api.h",
"ppb_url_loader_thunk.cc",
"ppb_url_loader_trusted_thunk.cc",
"ppb_url_request_info_api.h",
"ppb_url_request_info_thunk.cc",
"ppb_url_response_info_api.h",
"ppb_url_response_info_thunk.cc",
"ppb_var_array_thunk.cc",
"ppb_var_dictionary_thunk.cc",
"ppb_video_capture_api.h",
"ppb_video_decoder_api.h",
"ppb_video_decoder_dev_api.h",
"ppb_video_decoder_thunk.cc",
"ppb_video_destination_private_api.h",
"ppb_video_destination_private_thunk.cc",
"ppb_video_encoder_api.h",
"ppb_video_encoder_thunk.cc",
"ppb_video_frame_api.h",
"ppb_video_frame_thunk.cc",
"ppb_video_source_private_api.h",
"ppb_video_source_private_thunk.cc",
"ppb_view_api.h",
"ppb_view_dev_thunk.cc",
"ppb_view_thunk.cc",
"ppb_websocket_api.h",
"ppb_websocket_thunk.cc",
"ppb_x509_certificate_private_api.h",
"ppb_x509_certificate_private_thunk.cc",
"thunk.h",
]
if (!is_nacl) {
sources += [
"ppb_audio_input_dev_thunk.cc",
"ppb_broker_thunk.cc",
"ppb_browser_font_trusted_thunk.cc",
"ppb_buffer_thunk.cc",
"ppb_char_set_thunk.cc",
"ppb_content_decryptor_private_thunk.cc",
"ppb_flash_clipboard_thunk.cc",
"ppb_flash_device_id_thunk.cc",
"ppb_flash_drm_thunk.cc",
"ppb_flash_file_fileref_thunk.cc",
"ppb_flash_file_modulelocal_thunk.cc",
"ppb_flash_font_file_thunk.cc",
"ppb_flash_fullscreen_thunk.cc",
"ppb_flash_menu_thunk.cc",
"ppb_flash_message_loop_thunk.cc",
"ppb_flash_thunk.cc",
"ppb_gles_chromium_texture_mapping_thunk.cc",
"ppb_pdf_thunk.cc",
"ppb_platform_verification_private_thunk.cc",
"ppb_url_util_thunk.cc",
"ppb_video_capture_thunk.cc",
"ppb_video_decoder_dev_thunk.cc",
]
}
# We exclude a few more things for nacl_win64, to avoid pulling in more
# dependencies.
# TODO(GYP) this isn't correct. This should only be specifically for the
# nacl_win64 build (cross-compiled for a 32-bit Chrome), rather than all
# 64-bit builds.
# See also //ppapi/shared_impl
if (is_win && current_cpu == "x64" && current_toolchain != default_toolchain) {
sources += [
"ppb_graphics_3d_thunk.cc",
"ppb_host_resolver_private_thunk.cc",
"ppb_tcp_server_socket_private_thunk.cc",
"ppb_tcp_socket_private_thunk.cc",
"ppb_udp_socket_private_thunk.cc",
"ppb_x509_certificate_private_thunk.cc",
]
}
configs += [ "//build/config:precompiled_headers" ]
defines = [
# This target goes in the same library as shared_impl (in GYP they are the
# same).
"PPAPI_SHARED_IMPLEMENTATION",
"PPAPI_THUNK_IMPLEMENTATION",
]
}