chromium/ui/ozone/demo/BUILD.gn

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

import("//gpu/vulkan/features.gni")

group("demo") {
  deps = [
    ":ozone_demo",
    ":skia_demo",
  ]
}

source_set("ozone_demo_lib") {
  sources = [
    "demo_window.cc",
    "demo_window.h",
    "renderer.h",
    "renderer_base.cc",
    "renderer_base.h",
    "renderer_factory.cc",
    "renderer_factory.h",
    "window_manager.cc",
    "window_manager.h",
  ]

  deps = [
    "//base",
    "//ui/display/types",
    "//ui/events",
    "//ui/events:dom_keycode_converter",
    "//ui/events/ozone/layout",
    "//ui/gfx/geometry",
    "//ui/ozone",
    "//ui/platform_window",
  ]

  if (is_chromeos) {
    deps += [ "//ui/gfx/linux:gbm" ]
  }
}

executable("ozone_demo") {
  sources = [
    "gl_renderer.cc",
    "gl_renderer.h",
    "ozone_demo.cc",
    "simple_renderer_factory.cc",
    "simple_renderer_factory.h",
    "software_renderer.cc",
    "software_renderer.h",
    "surfaceless_gl_renderer.cc",
    "surfaceless_gl_renderer.h",
  ]

  deps = [
    ":ozone_demo_lib",
    "//components/tracing:startup_tracing",
    "//gpu/vulkan:buildflags",
    "//mojo/core/embedder",
    "//ui/events/ozone/layout",
    "//ui/gl",
    "//ui/gl/init",
    "//ui/ozone",
  ]

  if (enable_vulkan) {
    sources += [
      "vulkan_overlay_renderer.cc",
      "vulkan_overlay_renderer.h",
      "vulkan_renderer.cc",
      "vulkan_renderer.h",
    ]
    deps += [ "//gpu/vulkan/init" ]
  }
}

executable("skia_demo") {
  sources = [
    "skia/skia_demo.cc",
    "skia/skia_gl_renderer.cc",
    "skia/skia_gl_renderer.h",
    "skia/skia_renderer_factory.cc",
    "skia/skia_renderer_factory.h",
    "skia/skia_surfaceless_gl_renderer.cc",
    "skia/skia_surfaceless_gl_renderer.h",
  ]

  deps = [
    ":ozone_demo_lib",
    "//components/tracing:startup_tracing",
    "//mojo/core/embedder",
    "//skia",
    "//ui/events/ozone/layout",
    "//ui/gl",
    "//ui/gl/init",
    "//ui/ozone",
  ]

  if (is_chromeos) {
    deps += [ "//ui/gfx/linux:gbm" ]
  }
}