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

# GYP version mojo/mojo_examples.gypi:mojo_compositor_app
shared_library("compositor_app") {
  output_name = "mojo_compositor_app"

  sources = [
    "compositor_app.cc",
    "compositor_host.cc",
    "compositor_host.h",
  ]

  deps = [
    "//base",
    "//cc",
    "//mojo/application",
    "//mojo/cc",
    "//mojo/common",
    "//mojo/public/c/system:for_shared_library",
    "//mojo/public/gles2:for_shared_library",
    "//mojo/services/public/cpp/geometry",
    "//mojo/services/public/interfaces/geometry",
    "//mojo/services/public/interfaces/gpu",
    "//mojo/services/public/interfaces/native_viewport",
  ]
}
