123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
- load(":msm_common.bzl", "get_out_dir")
- def define_dtc_dist(target, msm_target, variant):
- """Create distribution targets for device tree compiler and associated tools
- Args:
- target: name of main Bazel target (e.g. `kalama_gki`)
- """
- dtc_bin_targets = [
- "@dtc//:dtc",
- "@dtc//:fdtget",
- "@dtc//:fdtput",
- "@dtc//:fdtdump",
- "@dtc//:fdtoverlay",
- "@dtc//:fdtoverlaymerge",
- ]
- dtc_lib_targets = [
- "@dtc//:dtc_gen",
- "@dtc//:libfdt",
- ]
- dtc_inc_targets = [
- "@dtc//:libfdt/fdt.h",
- "@dtc//:libfdt/libfdt.h",
- "@dtc//:libfdt/libfdt_env.h",
- ]
- dtc_tar_cmd = "mkdir -p bin lib include\n"
- for label in dtc_bin_targets:
- dtc_tar_cmd += "cp $(locations {}) bin/\n".format(label)
- for label in dtc_lib_targets:
- dtc_tar_cmd += "cp $(locations {}) lib/\n".format(label)
- for label in dtc_inc_targets:
- dtc_tar_cmd += "cp $(locations {}) include/\n".format(label)
- dtc_tar_cmd += """
- chmod 755 bin/* lib/*
- chmod 644 include/*
- tar -czf "$@" bin lib include
- """
- native.genrule(
- name = "{}_dtc_tarball".format(target),
- srcs = dtc_bin_targets + dtc_lib_targets + dtc_inc_targets,
- outs = ["{}_dtc.tar.gz".format(target)],
- cmd = dtc_tar_cmd,
- )
- native.alias(
- name = "{}_dtc".format(target),
- actual = ":{}_dtc_tarball".format(target),
- )
- copy_to_dist_dir(
- name = "{}_dtc_dist".format(target),
- archives = [":{}_dtc_tarball".format(target)],
- dist_dir = "{}/host".format(get_out_dir(msm_target, variant)),
- flat = True,
- wipe_dist_dir = True,
- log = "info",
- )
|