# Copyright 2016 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//arkweb/build/features/features.gni")
import("//build/config/ui.gni")

config("gpu_ipc_client_implementation") {
  defines = [ "GPU_IPC_CLIENT_IMPLEMENTATION" ]
  configs = [ "//build/config/compiler:wexit_time_destructors" ]
}

component("client") {
  configs += [ ":gpu_ipc_client_implementation" ]

  sources = [
    "client_shared_image_interface.cc",
    "client_shared_image_interface.h",
    "command_buffer_proxy_impl.cc",
    "command_buffer_proxy_impl.h",
    "gpu_channel_host.cc",
    "gpu_channel_host.h",
    "gpu_channel_observer.h",
    "gpu_ipc_client_export.h",
    "shared_image_interface_proxy.cc",
    "shared_image_interface_proxy.h",
  ]

  if (is_arkweb) {
    import("//arkweb/chromium_ext/gpu/ipc/client/arkweb_gpu_ipc_client_ext.gni")
    sources += arkweb_gpu_ipc_client_sources
  }

  deps = [
    "//base",
    "//cc/paint",
    "//components/viz/common/resources:shared_image_format",
    "//gpu/command_buffer/client",
    "//gpu/command_buffer/common",
    "//gpu/config",
    "//mojo/public/cpp/bindings",
    "//mojo/public/cpp/system",
    "//ui/gfx:color_space",
    "//ui/gfx/geometry",
    "//ui/gl",
  ]
  public_deps = [
    "//gpu/ipc/common",
    "//ipc",
  ]
}