1*8d67ca89SAndroid Build Coastguard Worker// ============================================================== 2*8d67ca89SAndroid Build Coastguard Worker// libc_malloc_hooks.so 3*8d67ca89SAndroid Build Coastguard Worker// ============================================================== 4*8d67ca89SAndroid Build Coastguard Workerpackage { 5*8d67ca89SAndroid Build Coastguard Worker default_team: "trendy_team_native_tools_libraries", 6*8d67ca89SAndroid Build Coastguard Worker // See: http://go/android-license-faq 7*8d67ca89SAndroid Build Coastguard Worker // A large-scale-change added 'default_applicable_licenses' to import 8*8d67ca89SAndroid Build Coastguard Worker // all of the 'license_kinds' from "bionic_libc_license" 9*8d67ca89SAndroid Build Coastguard Worker // to get the below license kinds: 10*8d67ca89SAndroid Build Coastguard Worker // SPDX-license-identifier-BSD 11*8d67ca89SAndroid Build Coastguard Worker default_applicable_licenses: ["bionic_libc_license"], 12*8d67ca89SAndroid Build Coastguard Worker} 13*8d67ca89SAndroid Build Coastguard Worker 14*8d67ca89SAndroid Build Coastguard Workercc_library { 15*8d67ca89SAndroid Build Coastguard Worker name: "libc_malloc_hooks", 16*8d67ca89SAndroid Build Coastguard Worker 17*8d67ca89SAndroid Build Coastguard Worker srcs: [ 18*8d67ca89SAndroid Build Coastguard Worker "malloc_hooks.cpp", 19*8d67ca89SAndroid Build Coastguard Worker ], 20*8d67ca89SAndroid Build Coastguard Worker 21*8d67ca89SAndroid Build Coastguard Worker static_libs: [ 22*8d67ca89SAndroid Build Coastguard Worker "libasync_safe", 23*8d67ca89SAndroid Build Coastguard Worker ], 24*8d67ca89SAndroid Build Coastguard Worker 25*8d67ca89SAndroid Build Coastguard Worker multilib: { 26*8d67ca89SAndroid Build Coastguard Worker lib32: { 27*8d67ca89SAndroid Build Coastguard Worker version_script: "exported32.map", 28*8d67ca89SAndroid Build Coastguard Worker }, 29*8d67ca89SAndroid Build Coastguard Worker lib64: { 30*8d67ca89SAndroid Build Coastguard Worker version_script: "exported64.map", 31*8d67ca89SAndroid Build Coastguard Worker }, 32*8d67ca89SAndroid Build Coastguard Worker }, 33*8d67ca89SAndroid Build Coastguard Worker include_dirs: ["bionic/libc"], 34*8d67ca89SAndroid Build Coastguard Worker 35*8d67ca89SAndroid Build Coastguard Worker sanitize: { 36*8d67ca89SAndroid Build Coastguard Worker never: true, 37*8d67ca89SAndroid Build Coastguard Worker }, 38*8d67ca89SAndroid Build Coastguard Worker native_coverage: false, 39*8d67ca89SAndroid Build Coastguard Worker 40*8d67ca89SAndroid Build Coastguard Worker cflags: [ 41*8d67ca89SAndroid Build Coastguard Worker "-Wall", 42*8d67ca89SAndroid Build Coastguard Worker "-Werror", 43*8d67ca89SAndroid Build Coastguard Worker "-fno-stack-protector", 44*8d67ca89SAndroid Build Coastguard Worker ], 45*8d67ca89SAndroid Build Coastguard Worker 46*8d67ca89SAndroid Build Coastguard Worker apex_available: [ 47*8d67ca89SAndroid Build Coastguard Worker "com.android.runtime", 48*8d67ca89SAndroid Build Coastguard Worker ], 49*8d67ca89SAndroid Build Coastguard Worker static: { 50*8d67ca89SAndroid Build Coastguard Worker apex_available: [ 51*8d67ca89SAndroid Build Coastguard Worker "//apex_available:platform", 52*8d67ca89SAndroid Build Coastguard Worker ], 53*8d67ca89SAndroid Build Coastguard Worker }, 54*8d67ca89SAndroid Build Coastguard Worker} 55*8d67ca89SAndroid Build Coastguard Worker 56*8d67ca89SAndroid Build Coastguard Worker// ============================================================== 57*8d67ca89SAndroid Build Coastguard Worker// Unit Tests 58*8d67ca89SAndroid Build Coastguard Worker// ============================================================== 59*8d67ca89SAndroid Build Coastguard Workercc_test { 60*8d67ca89SAndroid Build Coastguard Worker name: "malloc_hooks_system_tests", 61*8d67ca89SAndroid Build Coastguard Worker isolated: true, 62*8d67ca89SAndroid Build Coastguard Worker 63*8d67ca89SAndroid Build Coastguard Worker // The clang-analyzer-unix.Malloc and other warnings in these 64*8d67ca89SAndroid Build Coastguard Worker // unit tests are either false positive or in 65*8d67ca89SAndroid Build Coastguard Worker // negative tests that can be ignored. 66*8d67ca89SAndroid Build Coastguard Worker tidy: false, 67*8d67ca89SAndroid Build Coastguard Worker 68*8d67ca89SAndroid Build Coastguard Worker srcs: [ 69*8d67ca89SAndroid Build Coastguard Worker "tests/malloc_hooks_tests.cpp", 70*8d67ca89SAndroid Build Coastguard Worker ], 71*8d67ca89SAndroid Build Coastguard Worker 72*8d67ca89SAndroid Build Coastguard Worker whole_static_libs: ["libc_malloc_hooks"], 73*8d67ca89SAndroid Build Coastguard Worker 74*8d67ca89SAndroid Build Coastguard Worker shared_libs: ["libbase"], 75*8d67ca89SAndroid Build Coastguard Worker 76*8d67ca89SAndroid Build Coastguard Worker local_include_dirs: ["tests"], 77*8d67ca89SAndroid Build Coastguard Worker include_dirs: [ 78*8d67ca89SAndroid Build Coastguard Worker "bionic/libc", 79*8d67ca89SAndroid Build Coastguard Worker "bionic", 80*8d67ca89SAndroid Build Coastguard Worker ], 81*8d67ca89SAndroid Build Coastguard Worker header_libs: [ 82*8d67ca89SAndroid Build Coastguard Worker "bionic_libc_platform_headers", 83*8d67ca89SAndroid Build Coastguard Worker ], 84*8d67ca89SAndroid Build Coastguard Worker 85*8d67ca89SAndroid Build Coastguard Worker cflags: [ 86*8d67ca89SAndroid Build Coastguard Worker "-Wall", 87*8d67ca89SAndroid Build Coastguard Worker "-Werror", 88*8d67ca89SAndroid Build Coastguard Worker "-O1", // FIXME: http://b/169206016 - issues with aligned_alloc and -O2 89*8d67ca89SAndroid Build Coastguard Worker ], 90*8d67ca89SAndroid Build Coastguard Worker test_suites: ["general-tests"], 91*8d67ca89SAndroid Build Coastguard Worker} 92