ANDROID: db845c: Local define for db845c targets
Generally DAMP is a best practice in Bazel, for this
specific case, it helps with:
* Better target discoverability and auto-completion.
* It's possible to use `select` for KGDB fixes later on
without encountering name expectations broken.
Bug: 256196368
Bug: 270320056
Change-Id: I300404a9b2b4b7c6569145a942ecb445d23e8e9a
Signed-off-by: Ulises Mendez Martinez <umendez@google.com>
diff --git a/BUILD.bazel b/BUILD.bazel
index c0827bd..28e6f3c 100644
--- a/BUILD.bazel
+++ b/BUILD.bazel
@@ -3,7 +3,7 @@
load("@bazel_skylib//rules:write_file.bzl", "write_file")
load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
-load("//build/kernel/kleaf:common_kernels.bzl", "define_common_kernels", "define_db845c")
+load("//build/kernel/kleaf:common_kernels.bzl", "define_common_kernels")
load(
"//build/kernel/kleaf:kernel.bzl",
"ddk_headers",
@@ -12,6 +12,7 @@
"kernel_images",
"kernel_modules_install",
"kernel_unstripped_modules_archive",
+ "merged_kernel_uapi_headers",
)
load(":modules.bzl", "COMMON_GKI_MODULES_LIST")
@@ -102,15 +103,17 @@
},
})
-define_db845c(
+kernel_build(
name = "db845c",
outs = [
"arch/arm64/boot/dts/qcom/qrb5165-rb5.dtb",
"arch/arm64/boot/dts/qcom/sdm845-db845c.dtb",
],
- define_abi_targets = True,
- kmi_symbol_list = "//common:android/abi_gki_aarch64_db845c",
- kmi_symbol_list_add_only = True,
+ # Enable mixed build.
+ base_kernel = ":kernel_aarch64",
+ build_config = "build.config.db845c",
+ collect_unstripped_modules = True,
+ kmi_symbol_list = "android/abi_gki_aarch64_db845c",
make_goals = [
"modules",
"qcom/sdm845-db845c.dtb",
@@ -280,6 +283,47 @@
"sound/soc/qcom/snd-soc-sdm845.ko",
"sound/soc/qcom/snd-soc-sm8250.ko",
],
+ strip_modules = True,
+)
+
+kernel_abi(
+ name = "db845c_abi",
+ kernel_build = ":db845c",
+ kmi_symbol_list_add_only = True,
+)
+
+kernel_modules_install(
+ name = "db845c_modules_install",
+ kernel_build = ":db845c",
+)
+
+merged_kernel_uapi_headers(
+ name = "db845c_merged_kernel_uapi_headers",
+ kernel_build = ":db845c",
+)
+
+kernel_images(
+ name = "db845c_images",
+ build_initramfs = True,
+ kernel_build = ":db845c",
+ kernel_modules_install = ":db845c_modules_install",
+)
+
+copy_to_dist_dir(
+ name = "db845c_dist",
+ data = [
+ ":db845c",
+ ":db845c_images",
+ ":db845c_modules_install",
+ ":db845c_merged_kernel_uapi_headers",
+ # Mixed build: Additional GKI artifacts.
+ ":kernel_aarch64",
+ ":kernel_aarch64_modules",
+ ":kernel_aarch64_additional_artifacts",
+ ],
+ dist_dir = "out/db845/dist",
+ flat = True,
+ log = "info",
)
_ROCKPI4_MODULE_OUTS = [
@@ -349,13 +393,14 @@
],
build_config = "build.config.rockpi4",
collect_unstripped_modules = True,
- kmi_symbol_list = "//common:android/abi_gki_rockpi4",
+ kmi_symbol_list = "android/abi_gki_rockpi4",
make_goals = [
"Image",
"modules",
"rockchip/rk3399-rock-pi-4b.dtb",
],
module_outs = COMMON_GKI_MODULES_LIST + _ROCKPI4_MODULE_OUTS + _ROCKPI4_WATCHDOG_MODULE_OUTS,
+ visibility = ["//visibility:private"],
)
# TODO(b/258259749): Convert rockpi4 to mixed build
@@ -379,6 +424,7 @@
"rockchip/rk3399-rock-pi-4b.dtb",
],
module_outs = COMMON_GKI_MODULES_LIST + _ROCKPI4_MODULE_OUTS,
+ visibility = ["//visibility:private"],
)
alias(
@@ -391,13 +437,13 @@
kernel_abi(
name = "rockpi4_abi",
- kernel_build = "//common:rockpi4",
+ kernel_build = ":rockpi4",
kmi_symbol_list_add_only = True,
)
kernel_modules_install(
name = "rockpi4_modules_install",
- kernel_build = "//common:rockpi4",
+ kernel_build = ":rockpi4",
)
kernel_unstripped_modules_archive(
@@ -408,8 +454,8 @@
kernel_images(
name = "rockpi4_images",
build_initramfs = True,
- kernel_build = "//common:rockpi4",
- kernel_modules_install = "//common:rockpi4_modules_install",
+ kernel_build = ":rockpi4",
+ kernel_modules_install = ":rockpi4_modules_install",
)
copy_to_dist_dir(
@@ -429,13 +475,13 @@
outs = [],
base_kernel = ":kernel_aarch64",
build_config = "build.config.gki.aarch64.fips140",
- kmi_symbol_list = "//common:android/abi_gki_aarch64_fips140",
+ kmi_symbol_list = "android/abi_gki_aarch64_fips140",
module_outs = ["crypto/fips140.ko"],
)
kernel_abi(
name = "fips140_abi",
- kernel_build = "//common:fips140",
+ kernel_build = ":fips140",
kmi_symbol_list_add_only = True,
)