# 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_base.gyp:mojo_environment_chromium
source_set("chromium") {
  output_name = "mojo_environment_chromium"

  sources = [
    "environment.cc",

    # TODO(vtl): This is kind of ugly. (See TODO in logging.h.)
    "//third_party/mojo/src/mojo/public/cpp/environment/async_waiter.h",
    "//third_party/mojo/src/mojo/public/cpp/environment/lib/async_waiter.cc",
    "//third_party/mojo/src/mojo/public/cpp/environment/lib/logging.cc",
    "//third_party/mojo/src/mojo/public/cpp/environment/lib/scoped_task_tracking.cc",
    "//third_party/mojo/src/mojo/public/cpp/environment/lib/scoped_task_tracking.h",
    "//third_party/mojo/src/mojo/public/cpp/environment/logging.h",
    "//third_party/mojo/src/mojo/public/cpp/environment/task_tracker.h",
  ]

  public_deps = [
    ":chromium_impl",
  ]

  deps = [
    "//third_party/mojo/src/mojo/public/c/environment",
    "//third_party/mojo/src/mojo/public/cpp/bindings:callback",
    "//third_party/mojo/src/mojo/public/cpp/environment",
    "//third_party/mojo/src/mojo/public/cpp/system",
  ]
}

# GYP version: mojo_base.gyp:mojo_environment_chromium_impl
component("chromium_impl") {
  output_name = "mojo_environment_impl"
  visibility = [ "//mojo/*" ]

  sources = [
    "default_async_waiter_impl.cc",
    "default_async_waiter_impl.h",
    "default_logger_impl.cc",
    "default_logger_impl.h",
    "default_run_loop_impl.cc",
    "default_run_loop_impl.h",
    "default_task_tracker_impl.cc",
    "default_task_tracker_impl.h",
  ]

  defines = [ "MOJO_ENVIRONMENT_IMPL_IMPLEMENTATION" ]

  public_configs =
      [ "//third_party/mojo/src/mojo/public/build/config:mojo_sdk" ]

  deps = [
    "//base",
    "//base/third_party/dynamic_annotations",
    "//mojo/message_pump",
    "//third_party/mojo/src/mojo/public/c/system:for_component",
    "//third_party/mojo/src/mojo/public/cpp/environment:environment",
  ]
}
