blob: 110566b28f8c78ff039fdfee91be80dce984d7c9 [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.
import("//build/config/jumbo.gni")
import("//build/config/nacl/config.gni")
jumbo_component("shared_impl") {
output_name = "ppapi_shared"
if (is_nacl) {
# The nacl toolchain has template related bugs that are triggered
# in jumbo builds. https://crbug.com/912152
never_build_jumbo = true
}
sources = [
"array_var.cc",
"array_var.h",
"array_writer.cc",
"array_writer.h",
"callback_tracker.cc",
"callback_tracker.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_flash_font_file_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",
"vpn_provider_util.cc",
"vpn_provider_util.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",
]
}
# This condition is catching the build of nacl64.exe, which is built
# in the 64-bit toolchain when the overall build is 32-bit.
# See also //ppapi/thunk
if (is_win && target_cpu == "x86" && current_cpu == "x64") {
sources -= [
"ppb_audio_shared.cc",
"ppb_graphics_3d_shared.cc",
"ppb_opengles2_shared.cc",
"private/net_address_private_impl.cc",
]
}
configs += [ "//build/config:precompiled_headers" ]
defines = [
"PPAPI_SHARED_IMPLEMENTATION",
# This target goes in the same library as thunk (in GYP they are the same).
"PPAPI_THUNK_IMPLEMENTATION",
]
public_deps = [
"//base",
"//ppapi/c",
"//ppapi/thunk",
]
deps = [
"//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",
]
if (!is_nacl) {
deps += [
"//net",
"//skia",
"//ui/events:events_base",
"//ui/surface",
]
}
if (!is_nacl_nonsfi) {
deps += [
"//base:i18n",
"//base/third_party/dynamic_annotations",
"//third_party/icu:icuuc",
"//url",
]
}
if (is_mac) {
libs = [ "QuartzCore.framework" ]
}
}
static_library("test_support") {
testonly = true
sources = [
"test_globals.cc",
"test_globals.h",
"test_utils.cc",
"test_utils.h",
]
public_deps = [
"//ppapi/shared_impl",
]
deps = [
"//base/test:test_support",
"//ipc",
"//ipc:test_support",
"//ppapi/proxy",
"//testing/gmock",
"//testing/gtest",
]
}