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

# This library contains utilities useful to debug all clients of the zxdb suite.
source_set("logging") {
  public = [
    "debug.h",
    "file_line_function.h",
    "logging.h",
    "macros.h",
  ]

  sources = [
    "debug.cc",
    "file_line_function.cc",
    "logging.cc",
  ]

  deps = [ "//src/lib/fxl" ]
}
