blob: 8683358968c0138b013c1a12f5354b6e48fd1e51 [file] [log] [blame]
# Copyright 2024 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.
import("//build/bind/bind.gni")
import("//build/devicetree/devicetree.gni")
import("//build/drivers.gni")
driver_bind_rules("bind") {
bind_output = "crosvm.bindbc"
rules = "meta/crosvm.bind"
tests = "meta/bind_tests.json"
deps = [
"//sdk/fidl/fuchsia.hardware.platform.bus:fuchsia.hardware.platform.bus_bindlib",
"//src/devices/bind/fuchsia.platform",
]
}
group("tests") {
testonly = true
deps = [ ":bind_test" ]
}
fuchsia_cc_driver("driver") {
output_name = "crosvm"
sources = [
"crosvm.cc",
"pciroot.cc",
]
deps = [
"//sdk/banjo/fuchsia.hardware.pciroot:fuchsia.hardware.pciroot_banjo_cpp",
"//sdk/fidl/fuchsia.driver.compat:fuchsia.driver.compat_cpp",
"//sdk/fidl/fuchsia.hardware.pci:fuchsia.hardware.pci_cpp",
"//sdk/fidl/fuchsia.hardware.platform.bus:fuchsia.hardware.platform.bus_cpp",
"//sdk/fidl/fuchsia.kernel:fuchsia.kernel_cpp",
"//sdk/lib/driver/compat/cpp",
"//sdk/lib/driver/component/cpp",
"//sdk/lib/driver/devicetree/manager",
"//sdk/lib/driver/devicetree/visitors:load-visitors",
"//sdk/lib/driver/devicetree/visitors/default/bind-property",
"//sdk/lib/driver/devicetree/visitors/drivers/pci",
"//sdk/lib/driver/metadata/cpp",
"//src/devices/bind/fuchsia.pci:fuchsia.pci_cpp",
"//src/devices/bind/fuchsia.test:fuchsia.test_cpp",
"//src/devices/lib/driver:driver_runtime",
"//src/devices/pci/lib/pci",
"//zircon/system/ulib/fbl",
"//zircon/system/ulib/sync:sync-cpp",
"//zircon/system/ulib/zx",
]
}
fuchsia_driver_component("component") {
component_name = "crosvm"
deps = [
":bind",
":driver",
]
info = "meta/crosvm-info.json"
manifest = "meta/crosvm.cml"
}
fuchsia_driver_package("package") {
package_name = "crosvm"
driver_components = [ ":component" ]
export_to_bazel = true
}