| // | 
 | // libdl | 
 | // | 
 | package { | 
 |     default_applicable_licenses: ["bionic_libdl_license"], | 
 | } | 
 |  | 
 | license { | 
 |     name: "bionic_libdl_license", | 
 |     visibility: [":__subpackages__"], | 
 |     license_kinds: [ | 
 |         "SPDX-license-identifier-Apache-2.0", | 
 |     ], | 
 |     license_text: [ | 
 |         "NOTICE", | 
 |     ], | 
 | } | 
 |  | 
 | cc_library_static { | 
 |     name: "libdl_static", | 
 |     defaults: ["linux_bionic_supported"], | 
 |     ramdisk_available: true, | 
 |     vendor_ramdisk_available: true, | 
 |     recovery_available: true, | 
 |     native_bridge_supported: true, | 
 |  | 
 |     srcs: [ | 
 |         "libdl.cpp", | 
 |         "libdl_cfi.cpp", | 
 |     ], | 
 |  | 
 |     cflags: [ | 
 |         "-Wall", | 
 |         "-Wextra", | 
 |         "-Wunused", | 
 |         "-Werror", | 
 |     ], | 
 |  | 
 |     // For private/CFIShadow.h. | 
 |     include_dirs: ["bionic/libc"], | 
 |  | 
 |     stl: "none", | 
 |     system_shared_libs: [], | 
 |     header_libs: ["libc_headers"], | 
 |     export_header_lib_headers: ["libc_headers"], | 
 |  | 
 |     sanitize: { | 
 |         never: true, | 
 |     }, | 
 |     apex_available: [ | 
 |         "com.android.runtime", | 
 |     ], | 
 | } | 
 |  | 
 | cc_library { | 
 |     name: "libdl", | 
 |     ramdisk_available: true, | 
 |     vendor_ramdisk_available: true, | 
 |     recovery_available: true, | 
 |     native_bridge_supported: true, | 
 |     static_ndk_lib: true, | 
 |  | 
 |     defaults: [ | 
 |         "linux_bionic_supported", | 
 |         "bug_24465209_workaround", | 
 |     ], | 
 |  | 
 |     arch: { | 
 |         arm: { | 
 |             version_script: ":libdl.arm.map", | 
 |         }, | 
 |         arm64: { | 
 |             version_script: ":libdl.arm64.map", | 
 |         }, | 
 |         riscv64: { | 
 |             version_script: ":libdl.riscv64.map", | 
 |         }, | 
 |         x86: { | 
 |             version_script: ":libdl.x86.map", | 
 |         }, | 
 |         x86_64: { | 
 |             version_script: ":libdl.x86_64.map", | 
 |         }, | 
 |     }, | 
 |     shared: { | 
 |         whole_static_libs: ["libdl_static"], | 
 |     }, | 
 |     static: { | 
 |         srcs: ["libdl_static.cpp"], | 
 |     }, | 
 |     cflags: [ | 
 |         "-Wall", | 
 |         "-Wextra", | 
 |         "-Wunused", | 
 |         "-Werror", | 
 |     ], | 
 |     stl: "none", | 
 |  | 
 |     nocrt: true, | 
 |     system_shared_libs: [], | 
 |     header_libs: ["libc_headers"], | 
 |  | 
 |     // Opt out of native_coverage when opting out of system_shared_libs | 
 |     native_coverage: false, | 
 |  | 
 |     // This is placeholder library the actual implementation is (currently) | 
 |     // provided by the linker. | 
 |     shared_libs: ["ld-android"], | 
 |  | 
 |     sanitize: { | 
 |         never: true, | 
 |     }, | 
 |  | 
 |     stubs: { | 
 |         symbol_file: "libdl.map.txt", | 
 |         versions: [ | 
 |             "29", | 
 |             "current", | 
 |         ], | 
 |     }, | 
 |     llndk: { | 
 |         symbol_file: "libdl.map.txt", | 
 |     }, | 
 |  | 
 |     apex_available: [ | 
 |         "//apex_available:platform", | 
 |         "com.android.runtime", | 
 |     ], | 
 | } | 
 |  | 
 | cc_library { | 
 |     name: "libdl_android", | 
 |  | 
 |     defaults: ["linux_bionic_supported"], | 
 |     ramdisk_available: true, | 
 |     vendor_ramdisk_available: true, | 
 |     recovery_available: true, | 
 |     native_bridge_supported: true, | 
 |  | 
 |     srcs: ["libdl_android.cpp"], | 
 |     version_script: "libdl_android.map.txt", | 
 |  | 
 |     cflags: [ | 
 |         "-Wall", | 
 |         "-Wextra", | 
 |         "-Wunused", | 
 |         "-Werror", | 
 |     ], | 
 |  | 
 |     stl: "none", | 
 |  | 
 |     nocrt: true, | 
 |     system_shared_libs: [], | 
 |     header_libs: ["libc_headers"], | 
 |  | 
 |     // Opt out of native_coverage when opting out of system_shared_libs | 
 |     native_coverage: false, | 
 |  | 
 |     // This is placeholder library the actual implementation is (currently) | 
 |     // provided by the linker. | 
 |     shared_libs: ["ld-android"], | 
 |  | 
 |     sanitize: { | 
 |         never: true, | 
 |     }, | 
 |  | 
 |     stubs: { | 
 |         symbol_file: "libdl_android.map.txt", | 
 |         versions: ["current"], | 
 |     }, | 
 |  | 
 |     apex_available: [ | 
 |         "//apex_available:platform", | 
 |         "com.android.runtime", | 
 |     ], | 
 | } | 
 |  | 
 | ndk_library { | 
 |     name: "libdl", | 
 |     symbol_file: "libdl.map.txt", | 
 |     first_version: "9", | 
 | } | 
 |  | 
 | genrule { | 
 |     name: "libdl.arm.map", | 
 |     out: ["libdl.arm.map.txt"], | 
 |     srcs: ["libdl.map.txt"], | 
 |     tools: ["generate-version-script"], | 
 |     cmd: "$(location generate-version-script) arm $(in) $(out)", | 
 | } | 
 |  | 
 | genrule { | 
 |     name: "libdl.arm64.map", | 
 |     out: ["libdl.arm64.map.txt"], | 
 |     srcs: ["libdl.map.txt"], | 
 |     tools: ["generate-version-script"], | 
 |     cmd: "$(location generate-version-script) arm64 $(in) $(out)", | 
 | } | 
 |  | 
 | genrule { | 
 |     name: "libdl.riscv64.map", | 
 |     out: ["libdl.riscv64.map.txt"], | 
 |     srcs: ["libdl.map.txt"], | 
 |     tools: ["generate-version-script"], | 
 |     cmd: "$(location generate-version-script) riscv64 $(in) $(out)", | 
 | } | 
 |  | 
 | genrule { | 
 |     name: "libdl.x86.map", | 
 |     out: ["libdl.x86.map.txt"], | 
 |     srcs: ["libdl.map.txt"], | 
 |     tools: ["generate-version-script"], | 
 |     cmd: "$(location generate-version-script) x86 $(in) $(out)", | 
 | } | 
 |  | 
 | genrule { | 
 |     name: "libdl.x86_64.map", | 
 |     out: ["libdl.x86_64.map.txt"], | 
 |     srcs: ["libdl.map.txt"], | 
 |     tools: ["generate-version-script"], | 
 |     cmd: "$(location generate-version-script) x86_64 $(in) $(out)", | 
 | } |