Merge "ANDROID: build: Use upstream UAPI library function"
This commit is contained in:
commit
97b7a25f52
@ -9,6 +9,7 @@ load(
|
||||
"kernel_compile_commands",
|
||||
"kernel_images",
|
||||
"kernel_modules_install",
|
||||
"kernel_uapi_headers_cc_library",
|
||||
"merged_kernel_uapi_headers",
|
||||
)
|
||||
load(
|
||||
@ -25,7 +26,6 @@ load(":msm_common.bzl", "define_top_level_config", "gen_config_without_source_li
|
||||
load(":msm_dtc.bzl", "define_dtc_dist")
|
||||
load(":msm_abl.bzl", "define_abl_dist")
|
||||
load(":super_image.bzl", "super_image")
|
||||
load(":uapi_library.bzl", "define_uapi_library")
|
||||
load(":image_opts.bzl", "boot_image_opts")
|
||||
load(":target_variants.bzl", "la_variants")
|
||||
load(":modules.bzl", "COMMON_GKI_MODULES_LIST")
|
||||
@ -334,6 +334,17 @@ def _define_kernel_dist(target, msm_target, variant, base_kernel):
|
||||
dist_dir = dist_dir,
|
||||
)
|
||||
|
||||
def _define_uapi_library(target):
|
||||
"""Define a cc_library for userspace programs to use
|
||||
|
||||
Args:
|
||||
target: kernel_build target name (e.g. "kalama_gki")
|
||||
"""
|
||||
kernel_uapi_headers_cc_library(
|
||||
name = "{}_uapi_header_library".format(target),
|
||||
kernel_build = ":{}".format(target),
|
||||
)
|
||||
|
||||
def define_msm_la(
|
||||
msm_target,
|
||||
variant,
|
||||
@ -414,10 +425,10 @@ def define_msm_la(
|
||||
|
||||
_define_kernel_dist(target, msm_target, variant, base_kernel)
|
||||
|
||||
_define_uapi_library(target)
|
||||
|
||||
define_abl_dist(target, msm_target, variant)
|
||||
|
||||
define_dtc_dist(target, msm_target, variant)
|
||||
|
||||
define_uapi_library(target)
|
||||
|
||||
define_extras(target)
|
||||
|
@ -8,6 +8,7 @@ load(
|
||||
"kernel_compile_commands",
|
||||
"kernel_images",
|
||||
"kernel_modules_install",
|
||||
"kernel_uapi_headers_cc_library",
|
||||
"merged_kernel_uapi_headers",
|
||||
)
|
||||
load(
|
||||
@ -22,7 +23,6 @@ load(
|
||||
load(":msm_common.bzl", "define_top_level_config", "gen_config_without_source_lines", "get_out_dir")
|
||||
load(":msm_dtc.bzl", "define_dtc_dist")
|
||||
load(":image_opts.bzl", "vm_image_opts")
|
||||
load(":uapi_library.bzl", "define_uapi_library")
|
||||
load(":target_variants.bzl", "vm_variants")
|
||||
|
||||
def define_make_vm_dtb_img(target, dtb_list, page_size):
|
||||
@ -248,6 +248,17 @@ def _define_kernel_dist(target, msm_target, variant):
|
||||
dist_dir = dist_dir,
|
||||
)
|
||||
|
||||
def _define_uapi_library(target):
|
||||
"""Define a cc_library for userspace programs to use
|
||||
|
||||
Args:
|
||||
target: kernel_build target name (e.g. "kalama_gki")
|
||||
"""
|
||||
kernel_uapi_headers_cc_library(
|
||||
name = "{}_uapi_header_library".format(target),
|
||||
kernel_build = ":{}".format(target),
|
||||
)
|
||||
|
||||
def define_msm_vm(
|
||||
msm_target,
|
||||
variant,
|
||||
@ -294,9 +305,9 @@ def define_msm_vm(
|
||||
|
||||
_define_kernel_dist(target, msm_target, variant)
|
||||
|
||||
define_dtc_dist(target, msm_target, variant)
|
||||
_define_uapi_library(target)
|
||||
|
||||
define_uapi_library(target)
|
||||
define_dtc_dist(target, msm_target, variant)
|
||||
|
||||
# use only dtbs related to the variant for dtb image creation
|
||||
if "tuivm" in msm_target:
|
||||
|
@ -1,18 +0,0 @@
|
||||
load(":uapi_unpacker.bzl", "uapi_unpacker")
|
||||
|
||||
def define_uapi_library(target):
|
||||
"""Create a header-only cc_library of the kernel's UAPI headers
|
||||
|
||||
Args:
|
||||
target: name of main Bazel target (e.g. `kalama_gki`)
|
||||
"""
|
||||
uapi_unpacker(
|
||||
name = "{}_uapi_unpacker".format(target),
|
||||
kernel_uapi_headers = ":{}_uapi_headers".format(target),
|
||||
)
|
||||
|
||||
native.cc_library(
|
||||
name = "{}_uapi_header_library".format(target),
|
||||
hdrs = [":{}_uapi_unpacker".format(target)],
|
||||
includes = ["{}_uapi_unpacker_uapi_headers".format(target)],
|
||||
)
|
@ -1,31 +0,0 @@
|
||||
def _uapi_unpacker_impl(ctx):
|
||||
input_tar = ctx.file.kernel_uapi_headers
|
||||
out_dir = ctx.actions.declare_directory(ctx.label.name + "_uapi_headers")
|
||||
|
||||
ctx.actions.run_shell(
|
||||
outputs = [out_dir],
|
||||
inputs = [input_tar],
|
||||
arguments = [input_tar.path, out_dir.path],
|
||||
progress_message = "Unpacking UAPI headers",
|
||||
command = """
|
||||
tar_file="${PWD}/$1"
|
||||
out_dir="${PWD}/$2"
|
||||
mkdir -p "$out_dir"
|
||||
cd "$out_dir"
|
||||
tar --strip-components=2 -xzf "$tar_file"
|
||||
""",
|
||||
)
|
||||
|
||||
return [DefaultInfo(files = depset([out_dir]))]
|
||||
|
||||
uapi_unpacker = rule(
|
||||
implementation = _uapi_unpacker_impl,
|
||||
doc = """Unpack `kernel-uapi-headers.tar.gz`""",
|
||||
attrs = {
|
||||
"kernel_uapi_headers": attr.label(
|
||||
allow_single_file = True,
|
||||
mandatory = True,
|
||||
doc = "the kernel_uapi_headers tarball or label",
|
||||
),
|
||||
},
|
||||
)
|
Loading…
Reference in New Issue
Block a user