diff options
author | Christopher Ferris <cferris@google.com> | 2019-03-28 17:19:14 -0700 |
---|---|---|
committer | Christopher Ferris <cferris@google.com> | 2019-03-28 17:19:14 -0700 |
commit | 971023700ed7880bbfb231b413496732db7f5378 (patch) | |
tree | 065aeeab3bb534be11b4703073162d0e5359ccec | |
parent | 747f4c884e5bcd3b285fcc95d90db739f1990d3a (diff) | |
download | linux-x86-971023700ed7880bbfb231b413496732db7f5378.tar.gz |
Add static versions of scudo libraries.
Bug: 123689570
Test: Builds.
Change-Id: Ic33de879302ab8e64613cebc73de4601c3323327
-rw-r--r-- | Android.bp | 112 | ||||
-rw-r--r-- | soong/clangprebuilts.go | 6 |
2 files changed, 117 insertions, 1 deletions
diff --git a/Android.bp b/Android.bp index d9405eafd..e453d7529 100644 --- a/Android.bp +++ b/Android.bp @@ -507,6 +507,62 @@ libclang_rt_prebuilt_library_shared { check_elf_files: false, // Bypass circular dependency between libc++ } +libclang_rt_prebuilt_library_static { + name: "libclang_rt.scudo-arm-android.static", + enabled: false, + vendor_available: true, + sanitize: { + never: true, + }, + arch: { + arm: { + enabled: true, + }, + }, +} + +libclang_rt_prebuilt_library_static { + name: "libclang_rt.scudo-aarch64-android.static", + enabled: false, + vendor_available: true, + sanitize: { + never: true, + }, + arch: { + arm64: { + enabled: true, + }, + }, +} + +libclang_rt_prebuilt_library_static { + name: "libclang_rt.scudo-i686-android.static", + enabled: false, + vendor_available: true, + sanitize: { + never: true, + }, + arch: { + x86: { + enabled: true, + }, + }, +} + +libclang_rt_prebuilt_library_static { + name: "libclang_rt.scudo-x86_64-android.static", + enabled: false, + vendor_available: true, + sanitize: { + never: true, + }, + arch: { + x86_64: { + enabled: true, + }, + }, +} + libclang_rt_prebuilt_library_shared { name: "libclang_rt.scudo_minimal-arm-android", sdk_version: "24", @@ -571,6 +627,62 @@ libclang_rt_prebuilt_library_shared { shared_libs: ["libc", "libdl", "liblog"], } +libclang_rt_prebuilt_library_static { + name: "libclang_rt.scudo_minimal-arm-android.static", + enabled: false, + vendor_available: true, + sanitize: { + never: true, + }, + arch: { + arm: { + enabled: true, + }, + }, +} + +libclang_rt_prebuilt_library_static { + name: "libclang_rt.scudo_minimal-aarch64-android.static", + enabled: false, + vendor_available: true, + sanitize: { + never: true, + }, + arch: { + arm64: { + enabled: true, + }, + }, +} + +libclang_rt_prebuilt_library_static { + name: "libclang_rt.scudo_minimal-i686-android.static", + enabled: false, + vendor_available: true, + sanitize: { + never: true, + }, + arch: { + x86: { + enabled: true, + }, + }, +} + +libclang_rt_prebuilt_library_static { + name: "libclang_rt.scudo_minimal-x86_64-android.static", + enabled: false, + vendor_available: true, + sanitize: { + never: true, + }, + arch: { + x86_64: { + enabled: true, + }, + }, +} + // ----------------------------------------------------------------------------- // Export shared libraries for host tools (libLLVM, libclang, libc++). These // are exported only when the LLVM_BUILD_HOST_TOOLS environment variable is set. diff --git a/soong/clangprebuilts.go b/soong/clangprebuilts.go index 75cd436ce..a802c239b 100644 --- a/soong/clangprebuilts.go +++ b/soong/clangprebuilts.go @@ -234,7 +234,11 @@ func libClangRtPrebuiltLibraryStatic(ctx android.LoadHookContext) { name := strings.TrimPrefix(ctx.ModuleName(), "prebuilt_") p := &props{} - p.Srcs = []string{path.Join(libDir, name+".a")} + if strings.HasSuffix(name, ".static") { + p.Srcs = []string{path.Join(libDir, strings.TrimSuffix(name, ".static")+".a")} + } else { + p.Srcs = []string{path.Join(libDir, name+".a")} + } p.System_shared_libs = []string{} p.No_libcrt = proptools.BoolPtr(true) p.No_libgcc = proptools.BoolPtr(true) |