Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fc100c82 authored by Prateek Sood's avatar Prateek Sood
Browse files

kernel_headers: kernel headers library package



This change is foundational for converting many modules that
depend on kernel headers built via the platform build system.

Bug: 143567008
Change-Id: I5808a8464ed30287b75baac9a74285bff5825fe2
[rishabhb@codeaurora.org: add logic to iterate over mandatory headers
 and only generate these headers if not already present in
 usr/include/asm.]
Signed-off-by: default avatarRishabh Bhatnagar <rishabhb@codeaurora.org>
Signed-off-by: default avatarPrateek Sood <prsood@codeaurora.org>
parent 11ae02d0
Loading
Loading
Loading
Loading
+33 −15
Original line number Diff line number Diff line
@@ -3,25 +3,43 @@ cc_binary_host {
    srcs: ["scripts/unifdef.c"],
    sanitize: {
        never: true,
    },
}

genrule {
    name: "gen-headers_install.sh",
    srcs: ["scripts/headers_install.sh"],
    tools: ["unifdef"],
    out: ["headers_install.sh"],
    cmd: "sed 's+scripts/unifdef+$(location unifdef)+g' $(in) > $(out)",
}

gensrcs {
    name: "qseecom-kernel-includes",
cc_prebuilt_binary {
    name: "headers_install.sh",
    device_supported: false,
    host_supported: true,
    srcs: [":gen-headers_install.sh"],
}

    // move to out/ as root for header generation because of scripts/unifdef
    // storage - at the expense of extra ../ references
    cmd: "pushd out && mkdir -p scripts && rm -f scripts/unifdef && ln -s ../../$(location unifdef) scripts/unifdef && ../$(location scripts/headers_install.sh) `dirname ../$(out)` ../ $(in) && popd",
// Use the following for verbose output from kernel_headers.py.
// kernel_headers_verbose = "--verbose "
// Use the following for minimal output from kernel_headers.py.
kernel_headers_verbose = ""

    tools: ["unifdef"],
    tool_files: ["scripts/headers_install.sh"],
    export_include_dirs: ["include/uapi"],
    srcs: ["include/uapi/linux/qseecom.h"],
    output_extension: "h",
}
build = ["gen_headers_arm.bp", "gen_headers_arm64.bp"]

cc_library_headers {
    name: "qseecom-kernel-headers",
    generated_headers: ["qseecom-kernel-includes"],
    export_generated_headers: ["qseecom-kernel-includes"],
    name: "qti_kernel_headers",
    arch: {
        arm: {
            generated_headers: ["qti_generate_kernel_headers_arm"],
            export_generated_headers: ["qti_generate_kernel_headers_arm"],
        },
        arm64: {
            generated_headers: ["qti_generate_kernel_headers_arm64"],
            export_generated_headers: ["qti_generate_kernel_headers_arm64"],
        },
    },
    vendor: true,
    recovery_available: true,
}

gen_headers_arm.bp

0 → 100644
+1004 −0

File added.

Preview size limit exceeded, changes collapsed.

gen_headers_arm64.bp

0 → 100644
+995 −0

File added.

Preview size limit exceeded, changes collapsed.

kernel_headers.py

0 → 100644
+936 −0

File added.

Preview size limit exceeded, changes collapsed.