Export libc++ headers for musl sysroot

Export the libc++ headers for inclusion in the musl sysroot so that
the clang runtimes can link against them.

Bug: 215802826
Test: musl llvm build
Change-Id: Ia661da7ad7158e09b3e956ab93159e3e42855424
This commit is contained in:
Colin Cross
2022-02-25 18:30:07 -08:00
parent df8cb36848
commit bdf5fe7af5

View File

@@ -294,3 +294,32 @@ python_test {
},
},
}
// Export libc++ headers for inclusion in the musl sysroot.
genrule {
name: "libc_musl_sysroot_libc++_headers",
visibility: ["//external/musl"],
srcs: [
"NOTICE",
"include/**/*",
],
out: ["libc_musl_sysroot_libc++_headers.zip"],
tools: [
"soong_zip",
"zip2zip",
],
cmd: "LIBCXX_DIR=$$(dirname $(location NOTICE)) && " +
"$(location soong_zip) -o $(genDir)/sysroot.zip -symlinks=false" +
// NOTICE
" -j -f $(location NOTICE) " +
// headers
" -P include/c++ " +
" -C $${LIBCXX_DIR}/include " +
" -D $${LIBCXX_DIR}/include " +
" && " +
"$(location zip2zip) -i $(genDir)/sysroot.zip -o $(out) " +
" -x include/c++/CMakeLists.txt" +
" -x include/c++/module.modulemap " +
" include/**/*:include " +
" NOTICE:NOTICE.libc++",
}