// // Copyright (C) 2017 The Android Open Source Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // package { default_applicable_licenses: ["prebuilts_clang_host_linux-x86_license"], } // Added automatically by a large-scale-change that took the approach of // 'apply every license found to every target'. While this makes sure we respect // every license restriction, it may not be entirely correct. // // e.g. GPL in an MIT project might only apply to the contrib/ directory. // // Please consider splitting the single license below into multiple licenses, // taking care not to lose any license_kind information, and overriding the // default license using the 'licenses: [...]' property on targets as needed. // // For unused files, consider creating a 'fileGroup' with "//visibility:private" // to attach the license to, and including a comment whether the files may be // used in the current project. // See: http://go/android-license-faq license { name: "prebuilts_clang_host_linux-x86_license", visibility: [":__subpackages__"], license_kinds: [ "SPDX-license-identifier-Apache-2.0", "SPDX-license-identifier-BSD", "SPDX-license-identifier-GPL", "SPDX-license-identifier-LGPL", "SPDX-license-identifier-MIT", "SPDX-license-identifier-NCSA", "SPDX-license-identifier-PSF-2.0", "SPDX-license-identifier-Zlib", "legacy_unencumbered", ], // large-scale-change unable to identify any license_text files } llvm_prebuilt_library_static { name: "libFuzzer", sdk_version: "minimum", sanitize: { never: true, }, } llvm_prebuilt_library_static { name: "libomp", sdk_version: "minimum", vendor_available: true, product_available: true, sanitize: { never: true, }, } cc_defaults { name: "libclang_rt-prebuilt-default", ramdisk_available: true, vendor_ramdisk_available: true, apex_available: [ "//apex_available:anyapex", "//apex_available:platform", ], } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.builtins-android-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "minimum", enabled: false, recovery_available: true, vendor_available: true, product_available: true, native_bridge_supported: true, sanitize: { never: true, }, stl: "none", } libclang_rt_prebuilt_library_static { name: "libclang_rt.builtins-arm-android", defaults: ["libclang_rt.builtins-android-default"], arch: { arm: { enabled: true, }, }, bazel_module: { label: "//prebuilts/clang/host/linux-x86:libclang_rt", }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.builtins-arm-android-exported", defaults: ["libclang_rt.builtins-android-default"], arch: { arm: { enabled: true, }, }, // This exported variant of the builtins library is only intended for use in // libc.so and libm.so, which exports some builtins symbols for backwards // compatibility. visibility: [ "//bionic:__subpackages__", "//frameworks/libs/native_bridge_support/libc:__subpackages__", ], } libclang_rt_prebuilt_library_static { name: "libclang_rt.builtins-aarch64-android", defaults: ["libclang_rt.builtins-android-default"], host_supported: true, arch: { arm64: { enabled: true, }, }, bazel_module: { label: "//prebuilts/clang/host/linux-x86:libclang_rt", }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.builtins-i686-android", defaults: ["libclang_rt.builtins-android-default"], arch: { x86: { enabled: true, }, }, bazel_module: { label: "//prebuilts/clang/host/linux-x86:libclang_rt", }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.builtins-i686-android-exported", defaults: ["libclang_rt.builtins-android-default"], arch: { x86: { enabled: true, }, }, // This exported variant of the builtins library is only intended for use in // libc.so, which exports some builtins symbols for backwards compatibility. visibility: [ "//bionic:__subpackages__", "//frameworks/libs/native_bridge_support/libc:__subpackages__", ], } libclang_rt_prebuilt_library_static { name: "libclang_rt.builtins-x86_64-android", defaults: [ "linux_bionic_supported", "libclang_rt.builtins-android-default", ], arch: { x86_64: { enabled: true, }, }, bazel_module: { label: "//prebuilts/clang/host/linux-x86:libclang_rt", }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.builtins-default", enabled: false, host_supported: true, sanitize: { never: true, }, stl: "none", } libclang_rt_prebuilt_library_static { name: "libclang_rt.builtins-x86_64", defaults: ["libclang_rt.builtins-default"], target: { linux_glibc_x86_64: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.builtins-i386", defaults: ["libclang_rt.builtins-default"], target: { linux_glibc_x86: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.asan-android-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "minimum", enabled: false, recovery_available: true, native_bridge_supported: true, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.asan-arm-android", defaults: ["libclang_rt.asan-android-default"], sdk_version: "24", check_elf_files: false, // Bypass circular dependency between libc++ is_llndk: true, arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.asan-aarch64-android", defaults: ["libclang_rt.asan-android-default"], check_elf_files: false, // Bypass circular dependency between libc++ is_llndk: true, host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.asan-i686-android", defaults: ["libclang_rt.asan-android-default"], check_elf_files: false, // Bypass circular dependency between libc++ is_llndk: true, arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.asan-x86_64-android", defaults: [ "linux_bionic_supported", "libclang_rt.asan-android-default", ], check_elf_files: false, // Bypass circular dependency between libc++ is_llndk: true, arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.ubsan_standalone-android-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "minimum", enabled: false, vendor_available: true, product_available: true, recovery_available: true, double_loadable: true, stl: "c++_shared", vndk: { enabled: true, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.ubsan_standalone-arm-android", defaults: ["libclang_rt.ubsan_standalone-android-default"], sdk_version: "24", check_elf_files: false, // Bypass circular dependency between libc++ arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.ubsan_standalone-aarch64-android", defaults: ["libclang_rt.ubsan_standalone-android-default"], check_elf_files: false, // Bypass circular dependency between libc++ host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.ubsan_standalone-i686-android", defaults: [ "linux_bionic_supported", "libclang_rt.ubsan_standalone-android-default", ], check_elf_files: false, // Bypass circular dependency between libc++ arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.ubsan_standalone-x86_64-android", defaults: [ "linux_bionic_supported", "libclang_rt.ubsan_standalone-android-default", ], check_elf_files: false, // Bypass circular dependency between libc++ arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// libclang_rt_prebuilt_library_shared { name: "libclang_rt.ubsan_standalone-i386", enabled: false, host_supported: true, target: { linux_glibc_x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.ubsan_standalone-x86_64", enabled: false, host_supported: true, target: { linux_glibc_x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.ubsan_standalone-android.static-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "minimum", enabled: false, vendor_available: true, product_available: true, recovery_available: true, double_loadable: true, stl: "c++_static", } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_standalone-arm-android.static", defaults: ["libclang_rt.ubsan_standalone-android.static-default"], sdk_version: "24", check_elf_files: false, // Bypass circular dependency between libc++ arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_standalone-aarch64-android.static", defaults: ["libclang_rt.ubsan_standalone-android.static-default"], check_elf_files: false, // Bypass circular dependency between libc++ host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_standalone-i686-android.static", defaults: [ "linux_bionic_supported", "libclang_rt.ubsan_standalone-android.static-default", ], check_elf_files: false, // Bypass circular dependency between libc++ arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_standalone-x86_64-android.static", defaults: [ "linux_bionic_supported", "libclang_rt.ubsan_standalone-android.static-default", ], check_elf_files: false, // Bypass circular dependency between libc++ arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_standalone-i386.static", enabled: false, host_supported: true, target: { linux_glibc_x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_standalone-x86_64.static", enabled: false, host_supported: true, target: { linux_glibc_x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.ubsan_minimal-android-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "minimum", enabled: false, vendor_available: true, product_available: true, ramdisk_available: false, vendor_ramdisk_available: false, } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_minimal-arm-android", defaults: ["libclang_rt.ubsan_minimal-android-default"], arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_minimal-aarch64-android", defaults: ["libclang_rt.ubsan_minimal-android-default"], host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_minimal-i686-android", defaults: [ "linux_bionic_supported", "libclang_rt.ubsan_minimal-android-default", ], arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_minimal-x86_64-android", defaults: [ "linux_bionic_supported", "libclang_rt.ubsan_minimal-android-default", ], arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_minimal-i386", enabled: false, host_supported: true, target: { linux_glibc_x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.ubsan_minimal-x86_64", enabled: false, host_supported: true, target: { linux_glibc_x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// libclang_rt_prebuilt_library_static { name: "libclang_rt.hwasan_static-aarch64-android", sdk_version: "minimum", enabled: false, recovery_available: true, vendor_available: true, product_available: true, host_supported: true, arch: { arm64: { enabled: true, }, }, defaults: [ "libclang_rt-prebuilt-default", ], } /////////////////////////////////////////////////////////////////////////////// libclang_rt_prebuilt_library_shared { name: "libclang_rt.hwasan-aarch64-android", sdk_version: "minimum", enabled: false, recovery_available: true, host_supported: true, arch: { arm64: { enabled: true, }, }, check_elf_files: false, // Bypass circular dependency between libc++ is_llndk: true, defaults: [ "libclang_rt-prebuilt-default", ], } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.profile-android-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "minimum", enabled: false, recovery_available: true, vendor_available: true, product_available: true, } libclang_rt_prebuilt_library_static { name: "libclang_rt.profile-arm-android", defaults: ["libclang_rt.profile-android-default"], arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.profile-aarch64-android", defaults: ["libclang_rt.profile-android-default"], host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.profile-i686-android", defaults: ["libclang_rt.profile-android-default"], arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.profile-x86_64-android", defaults: ["libclang_rt.profile-android-default"], arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// libclang_rt_prebuilt_library_static { name: "libclang_rt.profile-x86_64", sdk_version: "minimum", enabled: false, host_supported: true, ramdisk_available: false, vendor_ramdisk_available: false, target: { linux_glibc_x86_64: { enabled: true, }, }, defaults: [ "libclang_rt-prebuilt-default", ], } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.fuzzer-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "minimum", enabled: false, host_supported: true, ramdisk_available: false, vendor_ramdisk_available: false, sanitize: { never: true, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.fuzzer-x86_64", defaults: ["libclang_rt.fuzzer-default"], target: { linux_glibc_x86_64: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.fuzzer-i386", defaults: ["libclang_rt.fuzzer-default"], target: { linux_glibc_x86: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// libclang_rt_prebuilt_library_shared { name: "libclang_rt.asan-x86_64", enabled: false, host_supported: true, target: { linux_glibc_x86_64: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.asan-i386", enabled: false, host_supported: true, target: { linux_glibc_x86: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.fuzzer-android-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "minimum", enabled: false, recovery_available: true, vendor_available: true, product_available: true, sanitize: { never: true, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.fuzzer-arm-android", defaults: ["libclang_rt.fuzzer-android-default"], arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.fuzzer-aarch64-android", defaults: ["libclang_rt.fuzzer-android-default"], host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.fuzzer-i686-android", defaults: ["libclang_rt.fuzzer-android-default"], arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.fuzzer-x86_64-android", defaults: ["libclang_rt.fuzzer-android-default"], arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// libclang_rt_prebuilt_library_static { name: "libclang_rt.profile-i386", sdk_version: "minimum", enabled: false, host_supported: true, ramdisk_available: false, vendor_ramdisk_available: false, target: { linux_glibc_x86: { enabled: true, }, }, check_elf_files: false, // Bypass circular dependency between libc++ defaults: [ "libclang_rt-prebuilt-default", ], } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.scudo-android-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "minimum", enabled: false, vendor_available: true, product_available: true, ramdisk_available: false, vendor_ramdisk_available: false, vndk: { enabled: true, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.scudo-arm-android", defaults: ["libclang_rt.scudo-android-default"], sdk_version: "24", check_elf_files: false, // Bypass circular dependency between libc++ arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.scudo-aarch64-android", defaults: ["libclang_rt.scudo-android-default"], check_elf_files: false, // Bypass circular dependency between libc++ host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.scudo-i686-android", defaults: ["libclang_rt.scudo-android-default"], check_elf_files: false, // Bypass circular dependency between libc++ arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.scudo-x86_64-android", defaults: ["libclang_rt.scudo-android-default"], check_elf_files: false, // Bypass circular dependency between libc++ arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.scudo-android.static-default", defaults: ["libclang_rt-prebuilt-default"], enabled: false, vendor_available: true, product_available: true, ramdisk_available: false, vendor_ramdisk_available: false, sanitize: { never: true, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.scudo-arm-android.static", defaults: ["libclang_rt.scudo-android.static-default"], arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.scudo-aarch64-android.static", defaults: ["libclang_rt.scudo-android.static-default"], host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.scudo-i686-android.static", defaults: ["libclang_rt.scudo-android.static-default"], arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.scudo-x86_64-android.static", defaults: ["libclang_rt.scudo-android.static-default"], arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.scudo_minimal-android-default", defaults: ["libclang_rt-prebuilt-default"], sdk_version: "23", enabled: false, vendor_available: true, product_available: true, ramdisk_available: false, vendor_ramdisk_available: false, vndk: { enabled: true, }, shared_libs: ["libc", "libdl", "liblog"], } libclang_rt_prebuilt_library_shared { name: "libclang_rt.scudo_minimal-arm-android", defaults: ["libclang_rt.scudo_minimal-android-default"], sdk_version: "24", arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.scudo_minimal-aarch64-android", defaults: ["libclang_rt.scudo_minimal-android-default"], host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.scudo_minimal-i686-android", defaults: ["libclang_rt.scudo_minimal-android-default"], arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_shared { name: "libclang_rt.scudo_minimal-x86_64-android", defaults: ["libclang_rt.scudo_minimal-android-default"], arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libclang_rt.scudo_minimal-android.static-default", defaults: ["libclang_rt-prebuilt-default"], enabled: false, vendor_available: true, product_available: true, ramdisk_available: false, vendor_ramdisk_available: false, sanitize: { never: true, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.scudo_minimal-arm-android.static", defaults: ["libclang_rt.scudo_minimal-android.static-default"], arch: { arm: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.scudo_minimal-aarch64-android.static", defaults: ["libclang_rt.scudo_minimal-android.static-default"], host_supported: true, arch: { arm64: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.scudo_minimal-i686-android.static", defaults: ["libclang_rt.scudo_minimal-android.static-default"], arch: { x86: { enabled: true, }, }, } libclang_rt_prebuilt_library_static { name: "libclang_rt.scudo_minimal-x86_64-android.static", defaults: ["libclang_rt.scudo_minimal-android.static-default"], arch: { x86_64: { enabled: true, }, }, } /////////////////////////////////////////////////////////////////////////////// cc_defaults { name: "libunwind-android-default", defaults: [ "libclang_rt-prebuilt-default", "linux_bionic_supported", ], sdk_version: "minimum", recovery_available: true, vendor_available: true, product_available: true, native_bridge_supported: true, sanitize: { never: true, }, stl: "none", // The unwinder needs functions from libc (and libdl), but libc.so links // against libunwind*.a. Clear the system_shared_libs property so that Soong // doesn't complain about the cyclic dependency. system_shared_libs: [], } llvm_prebuilt_library_static { name: "libunwind", defaults: ["libunwind-android-default"], } llvm_prebuilt_library_static { name: "libunwind-exported", defaults: ["libunwind-android-default"], // The libunwind-exported.a library is only intended for use with libc.so, // which needs to export the unwinder API. visibility: [ "//bionic:__subpackages__", "//frameworks/libs/native_bridge_support/libc:__subpackages__", ], } // ----------------------------------------------------------------------------- // Export shared libraries for host tools (libLLVM, libclang, libc++). These // are exported only when the LLVM_BUILD_HOST_TOOLS environment variable is set. // ----------------------------------------------------------------------------- // Export LLVM_BUILD_HOST_TOOLS llvm_host_defaults { name: "llvm-build-host-tools-defaults", } // Export libLLVM shared library llvm_host_prebuilt_library_shared { name: "libLLVM_host", sanitize: { never: true, }, compile_multilib: "64", shared_libs: [ "libc++_host", "libxml2_host", ], } llvm_host_prebuilt_library_shared { name: "libxml2_host", compile_multilib: "64", sanitize: { never: true, }, } // Export libclang_cxx shared library llvm_host_prebuilt_library_shared { name: "libclang_cxx_host", sanitize: { never: true, }, compile_multilib: "64", shared_libs: ["libc++_host"], target: { darwin: { strip: { none: true, }, }, }, } // Export libc++.so for the host LLVM tools llvm_host_prebuilt_library_shared { name: "libc++_host", sanitize: { never: true, }, compile_multilib: "64", target: { darwin: { shared_libs: ["libc++abi_host"], }, }, } // Export libc++abi.so for the host LLVM tools llvm_host_prebuilt_library_shared { name: "libc++abi_host", sanitize: { never: true, }, compile_multilib: "64", } clang_builtin_headers { name: "clang_builtin_headers_resources", tool_files: ["soong/generate_clang_builtin_headers_resources.sh"], out: ["clang_builtin_headers_resources.inc"], } subdirs = [ "soong", ]