# Copyright 2016 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("//chromecast/chromecast.gni")

cast_source_set("utility") {
  sources = [
    "cast_content_utility_client.h",
  ]

  deps = [
    "//base",
    "//content/public/utility",
  ]

  if (chromecast_branding == "public") {
    sources += [ "cast_content_utility_client_simple.cc" ]
  }

  if (!is_fuchsia) {
    sources += [ "cast_content_utility_client.cc" ]

    deps += [
      "//chromecast:chromecast_buildflags",
      "//components/services/heap_profiling",
      "//components/services/heap_profiling/public/mojom",
      "//services/service_manager/public/cpp",
    ]
  }
}
