//
// 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",
    ],
}

///////////////////////////////////////////////////////////////////////////////
libclang_rt_prebuilt_object {
    name: "clang_rt.crtbegin",
    host_supported: true,
    defaults: ["libclang_rt-prebuilt-default"],
}

libclang_rt_prebuilt_object {
    name: "clang_rt.crtend",
    host_supported: true,
    defaults: ["libclang_rt-prebuilt-default"],
}

///////////////////////////////////////////////////////////////////////////////
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"],
}

// Export llvm tools as a filegroup which is packaged and available for CI
// tests.
llvm_tools_filegroup {
    name: "llvm-tools",
    visibility: ["//development/scripts:__subpackages__"],
    // The tools and libs in the filegroup are in
    // ./soong/clangprebuilts.go:llvmToolsFiles
}

subdirs = [
    "soong",
]
