# Copyright 2019 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

config("includes") {
  include_dirs = [ "include" ]
}

# default_library_type is shared on Fuchsia and static on host.
target(default_library_type, "log") {
  sources = [ "log.cc" ]

  public = [
    "include/lib/log/log.h",
    "include/lib/log/log_writer.h",
  ]
  public_configs = [ ":includes" ]

  deps = [
    "//sdk/lib/fdio",
    "//zircon/system/ulib/fbl",
    "//zircon/system/ulib/zx-panic-libc",
  ]

  if (is_fuchsia) {
    configs += [ "//build/config/fuchsia:static_cpp_standard_library" ]
  }
}
