# Copyright 2019 The Fuchsia Authors
#
# Use of this source code is governed by a MIT-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/MIT

zx_library("hypervisor") {
  kernel = true
  sources = [
    "cpu.cc",
    "guest_physical_address_space.cc",
    "hypervisor_unittest.cc",
    "ktrace.cc",
    "trap_map.cc",
  ]
  deps = [
    "$zx/kernel/arch/$zircon_cpu/hypervisor",
    "$zx/kernel/lib/fbl",
    "$zx/kernel/lib/ktl",
    "$zx/kernel/lib/ktrace",
    "$zx/kernel/lib/unittest",
    "$zx/system/ulib/bitmap",
  ]
  public_deps = [
    # <hypervisor/trap_map.h> has #include <object/port_dispatcher.h>.
    "$zx/kernel/object:headers",

    # <hypervisor/id_allocator.h> has #include <bitmap/raw-bitmap.h>.
    "$zx/system/ulib/bitmap:headers",

    # <hypervisor/guest_physical_address_space.h> has #include <vm/vm_aspace.h>.
    "$zx/kernel/vm:headers",

    # <hypervisor/interrupt_tracker.h> has #include <lib/ktrace.h>.
    "$zx/kernel/lib/ktrace:headers",
  ]
}
