# 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. component("shared_impl") { output_name = "ppapi_shared" sources = [ "array_var.cc", "array_var.h", "array_writer.cc", "array_writer.h", "callback_tracker.cc", "callback_tracker.h", "compositor_layer_data.cc", "compositor_layer_data.h", "dictionary_var.cc", "dictionary_var.h", "file_growth.cc", "file_growth.h", "file_io_state_manager.cc", "file_io_state_manager.h", "file_path.cc", "file_path.h", "file_ref_create_info.cc", "file_ref_create_info.h", "file_ref_util.cc", "file_ref_util.h", "file_system_util.cc", "file_system_util.h", "file_type_conversion.cc", "file_type_conversion.h", "host_resource.cc", "host_resource.h", "id_assignment.cc", "id_assignment.h", "media_stream_audio_track_shared.cc", "media_stream_audio_track_shared.h", "media_stream_buffer.h", "media_stream_buffer_manager.cc", "media_stream_buffer_manager.h", "media_stream_video_track_shared.cc", "media_stream_video_track_shared.h", "platform_file.cc", "platform_file.h", "ppapi_constants.h", "ppapi_globals.cc", "ppapi_globals.h", "ppapi_nacl_plugin_args.cc", "ppapi_nacl_plugin_args.h", "ppapi_permissions.cc", "ppapi_permissions.h", "ppapi_preferences.cc", "ppapi_preferences.h", "ppapi_switches.cc", "ppapi_switches.h", "ppb_audio_config_shared.cc", "ppb_audio_config_shared.h", "ppb_audio_shared.cc", "ppb_audio_shared.h", "ppb_crypto_shared.cc", "ppb_device_ref_shared.cc", "ppb_device_ref_shared.h", "ppb_gamepad_shared.cc", "ppb_gamepad_shared.h", "ppb_graphics_3d_shared.cc", "ppb_graphics_3d_shared.h", "ppb_image_data_shared.cc", "ppb_image_data_shared.h", "ppb_input_event_shared.cc", "ppb_input_event_shared.h", "ppb_instance_shared.cc", "ppb_instance_shared.h", "ppb_memory_shared.cc", "ppb_message_loop_shared.cc", "ppb_message_loop_shared.h", "ppb_opengles2_shared.cc", "ppb_opengles2_shared.h", "ppb_tcp_socket_shared.cc", "ppb_tcp_socket_shared.h", "ppb_trace_event_impl.cc", "ppb_trace_event_impl.h", "ppb_var_shared.cc", "ppb_var_shared.h", "ppb_view_shared.cc", "ppb_view_shared.h", "ppp_flash_browser_operations_shared.h", "ppp_instance_combined.cc", "ppp_instance_combined.h", "proxy_lock.cc", "proxy_lock.h", "resource.cc", "resource.h", "resource_tracker.cc", "resource_tracker.h", "resource_var.cc", "resource_var.h", "scoped_pp_resource.cc", "scoped_pp_resource.h", "scoped_pp_var.cc", "scoped_pp_var.h", "socket_option_data.cc", "socket_option_data.h", "thread_aware_callback.cc", "thread_aware_callback.h", "time_conversion.cc", "time_conversion.h", "tracked_callback.cc", "tracked_callback.h", "url_request_info_data.cc", "url_request_info_data.h", "url_response_info_data.cc", "url_response_info_data.h", "var.cc", "var.h", "var_tracker.cc", "var_tracker.h", # TODO(viettrungluu): Split these out; it won"t be used in NaCl. "private/net_address_private_impl.cc", "private/net_address_private_impl.h", "private/net_address_private_impl_constants.cc", "private/ppb_x509_certificate_private_shared.cc", "private/ppb_x509_certificate_private_shared.h", ] if (!is_nacl) { sources += [ "flash_clipboard_format_registry.cc", "flash_clipboard_format_registry.h", "ppb_url_util_shared.cc", "ppb_url_util_shared.h", "ppb_video_decoder_shared.cc", "ppb_video_decoder_shared.h", "private/ppb_char_set_shared.cc", "private/ppb_char_set_shared.h", ] } # 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 the # native 64-bit Chrome build. # See also //ppapi/thunk if (is_win && current_cpu == "x64" && current_toolchain != default_toolchain) { sources -= [ "ppb_audio_shared.cc", "ppb_graphics_3d_shared.cc", "ppb_opengles2_shared.cc", "private/net_address_private_impl.cc", "private/ppb_host_resolver_shared.cc", ] } defines = [ "PPAPI_SHARED_IMPLEMENTATION", # This target goes in the same library as thunk (in GYP they are the same). "PPAPI_THUNK_IMPLEMENTATION", ] deps = [ "//base", "//base:i18n", "//base/third_party/dynamic_annotations", "//gpu/command_buffer/client", "//gpu/command_buffer/client:gles2_cmd_helper", "//gpu/command_buffer/client:gles2_implementation", "//gpu/command_buffer/common", "//ipc", "//media:shared_memory_support", "//ppapi/c", "//ppapi/thunk", "//third_party/icu:icuuc", "//url", ] if (!is_nacl) { deps += [ "//skia", "//ui/events:events_base", "//ui/surface", ] } if (is_mac) { libs = [ "QuartzCore.framework" ] } } source_set("test_support") { testonly = true sources = [ "test_globals.cc", "test_globals.h", "unittest_utils.cc", "unittest_utils.h", ] deps = [ "//base/test:test_support", "//ipc", "//ipc:test_support", "//ppapi/proxy", "//ppapi/shared_impl", "//testing/gmock", "//testing/gtest", ] }