load("//build/kernel/kleaf:kernel.bzl", "ddk_module") load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir") def define_basic_modules(targets, variants): for t in targets: for v in variants: define_modules(t, v) def define_modules(target, variant): tv = "{}_{}".format(target, variant) rule_base = "{}_qbt_handler".format(tv) ddk_module( name = rule_base, out = "qbt_handler.ko", deps = ["//msm-kernel:all_headers"], srcs = [ "qbt_handler.c", "qbt_handler.h" ], includes = ["include/linux"], kernel_build = "//msm-kernel:{}".format(tv), visibility = ["//visibility:public"] ) copy_to_dist_dir( name = "{}_dist".format(rule_base), data = [":{}".format(rule_base)], dist_dir = "../out/target/product/{}/dlkm/lib/modules/".format(target), flat = True, wipe_dist_dir = False, allow_duplicate_filenames = False, mode_overrides = {"**/*": "644"}, log = "info", )