# 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.

if (is_nacl) {
  import("//build/config/nacl/config.gni")
}

if (is_nacl && is_nacl_glibc) {
  cpp_target_type = "shared_library"
} else {
  cpp_target_type = "static_library"
}

# Link to this target to get the PPAPI C++ wrapper objects and plugin startup
# code. See also "objects" below.
target(cpp_target_type, "cpp") {
  output_name = "ppapi_cpp_lib"

  sources = [
    "module_embedder.h",
    "ppp_entrypoints.cc",
  ]

  public_deps = [
    ":objects",
    "//ppapi/c",
  ]

  if (is_nacl) {
    public_deps += [ "//build/config/nacl:nacl_base" ]

    if (is_nacl_glibc) {
      # When using gcc, we hide all symbols by default, but that breaks at
      # link time as the test executable requires symbols defined in the
      # shared library.
      configs -= [ "//build/config/gcc:symbol_visibility_hidden" ]
      configs += [ "//build/config/gcc:symbol_visibility_default" ]

      cflags = [ "-fPIC" ]
    } else {
      # This library is distributed as a part of the SDK and as such has to
      # be a static library rather than a source set.
      complete_static_lib = true
    }
  }
}

# Link to this target to get only the PPAPI C++ wrapper objects but not the
# plugin startup code. Some plugins need special startup code that they supply
# themselves.
source_set("objects") {
  sources = [
    "array_output.cc",
    "array_output.h",
    "audio.cc",
    "audio.h",
    "audio_buffer.cc",
    "audio_buffer.h",
    "audio_config.cc",
    "audio_config.h",
    "audio_encoder.cc",
    "audio_encoder.h",
    "completion_callback.h",
    "compositor.cc",
    "compositor.h",
    "compositor_layer.cc",
    "compositor_layer.h",
    "core.cc",
    "core.h",
    "directory_entry.cc",
    "directory_entry.h",
    "file_io.cc",
    "file_io.h",
    "file_ref.cc",
    "file_ref.h",
    "file_system.cc",
    "file_system.h",
    "fullscreen.cc",
    "fullscreen.h",
    "graphics_2d.cc",
    "graphics_2d.h",
    "graphics_3d.cc",
    "graphics_3d.h",
    "graphics_3d_client.cc",
    "graphics_3d_client.h",
    "host_resolver.cc",
    "host_resolver.h",
    "image_data.cc",
    "image_data.h",
    "input_event.cc",
    "input_event.h",
    "instance.cc",
    "instance.h",
    "instance_handle.cc",
    "instance_handle.h",
    "logging.h",
    "media_stream_audio_track.cc",
    "media_stream_audio_track.h",
    "media_stream_video_track.cc",
    "media_stream_video_track.h",
    "message_handler.h",
    "message_loop.cc",
    "message_loop.h",
    "module.cc",
    "module.h",
    "module_impl.h",
    "mouse_cursor.cc",
    "mouse_cursor.h",
    "mouse_lock.cc",
    "mouse_lock.h",
    "net_address.cc",
    "net_address.h",
    "network_list.cc",
    "network_list.h",
    "network_monitor.cc",
    "network_monitor.h",
    "network_proxy.cc",
    "network_proxy.h",
    "output_traits.h",
    "point.h",
    "rect.cc",
    "rect.h",
    "resource.cc",
    "resource.h",
    "size.h",
    "tcp_socket.cc",
    "tcp_socket.h",
    "text_input_controller.cc",
    "text_input_controller.h",
    "touch_point.h",
    "udp_socket.cc",
    "udp_socket.h",
    "url_loader.cc",
    "url_loader.h",
    "url_request_info.cc",
    "url_request_info.h",
    "url_response_info.cc",
    "url_response_info.h",
    "var.cc",
    "var.h",
    "var_array.cc",
    "var_array.h",
    "var_array_buffer.cc",
    "var_array_buffer.h",
    "var_dictionary.cc",
    "var_dictionary.h",
    "video_decoder.cc",
    "video_decoder.h",
    "video_encoder.cc",
    "video_encoder.h",
    "video_frame.cc",
    "video_frame.h",
    "view.cc",
    "view.h",
    "vpn_provider.cc",
    "vpn_provider.h",
    "websocket.cc",
    "websocket.h",

    # Dev interfaces.
    "dev/audio_input_dev.cc",
    "dev/audio_input_dev.h",
    "dev/buffer_dev.cc",
    "dev/buffer_dev.h",
    "dev/crypto_dev.cc",
    "dev/crypto_dev.h",
    "dev/cursor_control_dev.cc",
    "dev/cursor_control_dev.h",
    "dev/device_ref_dev.cc",
    "dev/device_ref_dev.h",
    "dev/file_chooser_dev.cc",
    "dev/file_chooser_dev.h",
    "dev/ime_input_event_dev.cc",
    "dev/ime_input_event_dev.h",
    "dev/memory_dev.cc",
    "dev/memory_dev.h",
    "dev/printing_dev.cc",
    "dev/printing_dev.h",
    "dev/text_input_dev.cc",
    "dev/text_input_dev.h",
    "dev/truetype_font_dev.cc",
    "dev/truetype_font_dev.h",
    "dev/url_util_dev.cc",
    "dev/url_util_dev.h",
    "dev/video_capture_client_dev.cc",
    "dev/video_capture_client_dev.h",
    "dev/video_capture_dev.cc",
    "dev/video_capture_dev.h",
    "dev/video_decoder_client_dev.cc",
    "dev/video_decoder_client_dev.h",
    "dev/video_decoder_dev.cc",
    "dev/video_decoder_dev.h",
    "dev/view_dev.cc",
    "dev/view_dev.h",

    # Deprecated interfaces.
    "dev/scriptable_object_deprecated.cc",
    "dev/scriptable_object_deprecated.h",

    # Private interfaces.
    "private/camera_capabilities_private.cc",
    "private/camera_capabilities_private.h",
    "private/camera_device_private.cc",
    "private/camera_device_private.h",
    "private/content_decryptor_private.cc",
    "private/content_decryptor_private.h",
    "private/ext_crx_file_system_private.cc",
    "private/ext_crx_file_system_private.h",
    "private/file_io_private.cc",
    "private/file_io_private.h",
    "private/find_private.cc",
    "private/find_private.h",
    "private/flash.cc",
    "private/flash.h",
    "private/flash_clipboard.cc",
    "private/flash_clipboard.h",
    "private/flash_device_id.cc",
    "private/flash_device_id.h",
    "private/flash_drm.cc",
    "private/flash_drm.h",
    "private/flash_file.cc",
    "private/flash_file.h",
    "private/flash_font_file.cc",
    "private/flash_font_file.h",
    "private/flash_fullscreen.cc",
    "private/flash_fullscreen.h",
    "private/flash_menu.cc",
    "private/flash_menu.h",
    "private/flash_message_loop.cc",
    "private/flash_message_loop.h",
    "private/host_resolver_private.cc",
    "private/host_resolver_private.h",
    "private/instance_private.cc",
    "private/instance_private.h",
    "private/isolated_file_system_private.cc",
    "private/isolated_file_system_private.h",
    "private/net_address_private.cc",
    "private/net_address_private.h",
    "private/output_protection_private.cc",
    "private/output_protection_private.h",
    "private/pass_file_handle.cc",
    "private/pass_file_handle.h",
    "private/pdf.cc",
    "private/pdf.h",
    "private/platform_verification.cc",
    "private/platform_verification.h",
    "private/tcp_server_socket_private.cc",
    "private/tcp_server_socket_private.h",
    "private/tcp_socket_private.cc",
    "private/tcp_socket_private.h",
    "private/udp_socket_private.cc",
    "private/udp_socket_private.h",
    "private/uma_private.cc",
    "private/uma_private.h",
    "private/var_private.cc",
    "private/var_private.h",
    "private/video_destination_private.cc",
    "private/video_destination_private.h",
    "private/video_frame_private.cc",
    "private/video_frame_private.h",
    "private/video_source_private.cc",
    "private/video_source_private.h",
    "private/x509_certificate_private.cc",
    "private/x509_certificate_private.h",

    # Trusted interfaces.
    "trusted/browser_font_trusted.cc",
    "trusted/browser_font_trusted.h",
    "trusted/file_chooser_trusted.cc",
    "trusted/file_chooser_trusted.h",

    # Utility sources.
    "../utility/completion_callback_factory.h",
    "../utility/completion_callback_factory_thread_traits.h",
    "../utility/graphics/paint_aggregator.cc",
    "../utility/graphics/paint_aggregator.h",
    "../utility/graphics/paint_manager.cc",
    "../utility/graphics/paint_manager.h",
    "../utility/threading/lock.cc",
    "../utility/threading/lock.h",
    "../utility/threading/simple_thread.cc",
    "../utility/threading/simple_thread.h",
    "../utility/websocket/websocket_api.cc",
    "../utility/websocket/websocket_api.h",
  ]

  configs += [ "//build/config:precompiled_headers" ]

  public_deps = [
    "//ppapi/c",
  ]

  if (is_nacl) {
    public_deps += [ "//build/config/nacl:nacl_base" ]

    if (is_nacl_glibc) {
      # When using gcc, we hide all symbols by default, but that breaks at
      # link time as the test executable requires symbols defined in the
      # shared library.
      configs -= [ "//build/config/gcc:symbol_visibility_hidden" ]
      configs += [ "//build/config/gcc:symbol_visibility_default" ]

      cflags = [ "-fPIC" ]
    }
  }
}
