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

source_set("utility") {
  sources = [
    "in_process_utility_thread.cc",
    "in_process_utility_thread.h",
    "utility_main.cc",
    "utility_thread_impl.cc",
    "utility_thread_impl.h",
  ]

  configs += [ "//content:content_implementation" ]

  deps = [
    "//base",
    "//content:export",
    "//courgette:courgette_lib",
    "//mojo/public/interfaces/application",
    "//third_party/WebKit/public:blink_headers",
  ]
}

