blob: 2f4a3476fd9f522d42280a13280bed14dc1a411f [file]
load(
"@kleaf//build/kernel/kleaf:kernel.bzl",
"ddk_library",
"ddk_module",
"kernel_compile_commands",
"kernel_config_devicetree_library",
"kernel_modules_install",
"system_dlkm_image",
"vendor_dlkm_image",
)
load("@rules_devicetree//devicetree:dtb.bzl", "dtb")
# Test building no-op DDK module against kernel from sources
ddk_library(
name = "mylib",
srcs = ["mylib.c"],
hdrs = ["mylib.h"],
kernel_build = "//tests:kernel",
)
ddk_module(
name = "out_of_tree",
srcs = ["mydriver.c"],
out = "out_of_tree.ko",
kernel_build = "//tests:kernel",
deps = [":mylib"],
)
kernel_modules_install(
name = "device_modules_install",
kernel_modules = [
":out_of_tree",
],
)
system_dlkm_image(
name = "device_system_dlkm_image",
base = "//tests:base_system_dlkm",
kernel_modules_install = ":device_modules_install",
)
vendor_dlkm_image(
name = "device_vendor_dlkm_image",
kernel_modules_install = ":device_modules_install",
)
filegroup(
name = "device_images",
srcs = [
":device_system_dlkm_image",
":device_vendor_dlkm_image",
],
visibility = ["//tests:__pkg__"],
)
kernel_config_devicetree_library(
name = "kernel_config_dt_lib",
kernel_build = "//tests:kernel",
)
dtb(
name = "test_dtb",
srcs = ["test_device.dts"],
visibility = ["//tests:__pkg__"],
deps = [":kernel_config_dt_lib"],
)
kernel_compile_commands(
name = "out_of_tree_compile_commands",
deps = [":out_of_tree"],
)