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

import("../../../mojo_sdk_root.gni")
import("$mojo_sdk_root/mojo/public/mojo_sdk.gni")

mojo_sdk_source_set("cpp") {
  restrict_external_deps = false
  public_configs = [ "../../../public/build/config:mojo_services" ]
  sources = [
    "surfaces_utils.cc",
    "surfaces_utils.h",
  ]

  deps = [
    "../../../geometry/public/interfaces",
    "../../../surfaces/public/interfaces",
  ]
}
