blob: 114c89430f340a5aa280bd162e149b8a437f00a8 [file] [log] [blame]
# 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.
import("//build/bazel/export_fuchsia_package_to_bazel.gni")
import("//build/bind/bind.gni")
import("//build/components.gni")
import("//build/drivers.gni")
import("//build/test.gni")
group("platform") {
deps = [ ":platform-bus" ]
}
driver_bind_rules("platform-bus-bind") {
bind_output = "platform-bus.bindbc"
disable_autobind = true
}
fuchsia_driver("platform-bus-driver") {
output_name = "platform-bus"
sources = [
"node-util.cc",
"platform-bus.cc",
"platform-device.cc",
"platform-interrupt.cc",
]
deps = [
":platform-bus-bind",
"//sdk/banjo/fuchsia.hardware.iommu:fuchsia.hardware.iommu_banjo_cpp",
"//sdk/banjo/fuchsia.hardware.platform.device:fuchsia.hardware.platform.device_banjo_cpp",
"//sdk/fidl/fuchsia.boot:fuchsia.boot_cpp",
"//sdk/fidl/fuchsia.hardware.interrupt:fuchsia.hardware.interrupt_cpp",
"//sdk/fidl/fuchsia.hardware.platform.bus:fuchsia.hardware.platform.bus_cpp",
"//sdk/fidl/fuchsia.hardware.platform.device:fuchsia.hardware.platform.device_cpp",
"//sdk/fidl/fuchsia.sysinfo:fuchsia.sysinfo_cpp",
"//sdk/lib/component/outgoing/cpp",
"//sdk/lib/driver/component/cpp:cpp",
"//sdk/lib/zbi-format",
"//src/devices/bind/fuchsia:fuchsia_cpp",
"//src/devices/bind/fuchsia.platform:fuchsia.platform_cpp",
"//src/devices/lib/driver",
"//src/devices/lib/driver:driver_runtime",
"//src/lib/ddk",
# TODO(https://fxbug.dev/42113849): Migrate to the new bind rules and delete the below
"//src/lib/ddk:ddk-deprecated-binding-headers",
"//src/lib/ddktl",
"//zircon/system/ulib/fbl",
"//zircon/system/ulib/sync",
"//zircon/system/ulib/zircon-internal",
"//zircon/system/ulib/zx",
]
}
fuchsia_driver_component("platform-bus") {
visibility = [ ":*" ]
component_name = "platform-bus"
deps = [ ":platform-bus-driver" ]
info = "platform-bus-info.json"
manifest = "meta/platform-bus.cml"
}
fuchsia_driver_package("package") {
package_name = "platform-bus"
driver_components = [ ":platform-bus" ]
}
# Define Bazel input resource so it can be used
export_fuchsia_package_to_bazel("platform-bus-package-bazel") {
package = ":package"
package_name = "platform-bus"
}
test("platform-bus-unittest") {
sources = [
"node-util.cc",
"platform-bus-unittest.cc",
"platform-bus.cc",
"platform-device.cc",
"platform-interrupt.cc",
]
deps = [
":platform-bus-bind",
"//sdk/banjo/fuchsia.hardware.iommu:fuchsia.hardware.iommu_banjo_cpp",
"//sdk/banjo/fuchsia.hardware.platform.device:fuchsia.hardware.platform.device_banjo_cpp",
"//sdk/banjo/fuchsia.hardware.powerimpl:fuchsia.hardware.powerimpl_banjo_cpp",
"//sdk/fidl/fuchsia.boot:fuchsia.boot_cpp",
"//sdk/fidl/fuchsia.hardware.interrupt:fuchsia.hardware.interrupt_cpp",
"//sdk/fidl/fuchsia.hardware.platform.bus:fuchsia.hardware.platform.bus_cpp",
"//sdk/fidl/fuchsia.hardware.platform.device:fuchsia.hardware.platform.device_cpp",
"//sdk/fidl/fuchsia.sysinfo:fuchsia.sysinfo_cpp",
"//sdk/lib/component/outgoing/cpp",
"//sdk/lib/driver/component/cpp:cpp",
"//sdk/lib/zbi-format",
"//src/devices/bind/fuchsia:fuchsia_cpp",
"//src/devices/bind/fuchsia.platform:fuchsia.platform_cpp",
"//src/devices/lib/driver",
"//src/devices/lib/driver:driver_runtime",
"//src/devices/testing/fake-bti",
"//src/devices/testing/no_ddk",
"//src/lib/ddk",
# TODO(https://fxbug.dev/42113849): Migrate to the new bind rules and delete the below
"//src/devices/testing/driver-runtime-main:zxtest",
"//src/lib/ddk:ddk-deprecated-binding-headers",
"//src/lib/ddktl",
"//zircon/system/ulib/fbl",
"//zircon/system/ulib/sync",
"//zircon/system/ulib/zircon-internal",
"//zircon/system/ulib/zx",
"//zircon/system/ulib/zxtest",
]
}
fuchsia_unittest_package("platform-bus-unittest-package") {
package_name = "platform-bus-unittest"
deps = [ ":platform-bus-unittest" ]
}
group("tests") {
testonly = true
deps = [
":platform-bus-unittest-package",
"test:platform-bus-test",
"test/power-integration-test:power-integration-tests-package",
]
}