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

source_set("printer") {
  sources = [
    "call-printer.cc",
    "call-printer.h",
    "instruction.cc",
    "instruction.h",
    "printer-util.cc",
    "printer-util.h",
  ]

  deps = [
    "//garnet/lib/debugger_utils",
    "//garnet/lib/intel_pt_decode",
    "//garnet/public/lib/fxl",
    "//third_party/processor-trace/libipt",
    "//zircon/public/lib/fit",
  ]

  if (!is_fuchsia) {
    deps += [ "//zircon/system/public" ]
  }
}
