1 # 2 # Copyright (C) 2015 The Android Open Source Project 3 # 4 # Licensed under the Apache License, Version 2.0 (the "License"); 5 # you may not use this file except in compliance with the License. 6 # You may obtain a copy of the License at 7 # 8 # http://www.apache.org/licenses/LICENSE-2.0 9 # 10 # Unless required by applicable law or agreed to in writing, software 11 # distributed under the License is distributed on an "AS IS" BASIS, 12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 # See the License for the specific language governing permissions and 14 # limitations under the License. 15 # 16 17 LOCAL_PATH := $(call my-dir) 18 19 # Use these prebuilts unless we are actually building from a newly rebased 20 # LLVM. This variable is set by external/clang/build.py. 21 ifneq (true,$(FORCE_BUILD_SANITIZER_SHARED_OBJECTS)) 22 23 libclang_dir := $(LLVM_PREBUILTS_VERSION)/lib64/clang/$(LLVM_RELEASE_VERSION) 24 25 include $(CLEAR_VARS) 26 LOCAL_MODULE := libclang_rt.asan-arm-android 27 LOCAL_SRC_FILES := $(libclang_dir)/lib/linux/$(LOCAL_MODULE).so 28 LOCAL_MODULE_CLASS := SHARED_LIBRARIES 29 LOCAL_MODULE_SUFFIX := .so 30 LOCAL_MODULE_TARGET_ARCH := arm 31 LOCAL_MODULE_PATH := $(TARGET_OUT)/lib 32 LOCAL_SANITIZE := never 33 LOCAL_SYSTEM_SHARED_LIBRARIES := 34 LOCAL_CXX_STL := none 35 include $(BUILD_PREBUILT) 36 37 include $(CLEAR_VARS) 38 LOCAL_MODULE := libclang_rt.asan-aarch64-android 39 LOCAL_SRC_FILES := $(libclang_dir)/lib/linux/$(LOCAL_MODULE).so 40 LOCAL_MODULE_CLASS := SHARED_LIBRARIES 41 LOCAL_MODULE_SUFFIX := .so 42 LOCAL_MODULE_TARGET_ARCH := arm64 43 LOCAL_MODULE_PATH := $(TARGET_OUT)/lib64 44 LOCAL_SANITIZE := never 45 LOCAL_SYSTEM_SHARED_LIBRARIES := 46 LOCAL_CXX_STL := none 47 include $(BUILD_PREBUILT) 48 49 include $(CLEAR_VARS) 50 LOCAL_MODULE := libclang_rt.asan-i686-android 51 LOCAL_SRC_FILES := $(libclang_dir)/lib/linux/$(LOCAL_MODULE).so 52 LOCAL_MODULE_CLASS := SHARED_LIBRARIES 53 LOCAL_MODULE_SUFFIX := .so 54 LOCAL_MODULE_TARGET_ARCH := x86 55 LOCAL_MODULE_PATH := $(TARGET_OUT)/lib 56 LOCAL_SANITIZE := never 57 LOCAL_SYSTEM_SHARED_LIBRARIES := 58 LOCAL_CXX_STL := none 59 include $(BUILD_PREBUILT) 60 61 include $(CLEAR_VARS) 62 LOCAL_MODULE := libclang_rt.ubsan_standalone-arm-android 63 LOCAL_SRC_FILES := $(libclang_dir)/lib/linux/$(LOCAL_MODULE).so 64 LOCAL_MODULE_CLASS := SHARED_LIBRARIES 65 LOCAL_MODULE_SUFFIX := .so 66 LOCAL_MODULE_TARGET_ARCH := arm 67 LOCAL_MODULE_PATH := $(TARGET_OUT)/lib 68 LOCAL_SANITIZE := never 69 LOCAL_SYSTEM_SHARED_LIBRARIES := 70 LOCAL_CXX_STL := none 71 include $(BUILD_PREBUILT) 72 73 include $(CLEAR_VARS) 74 LOCAL_MODULE := libclang_rt.ubsan_standalone-aarch64-android 75 LOCAL_SRC_FILES := $(libclang_dir)/lib/linux/$(LOCAL_MODULE).so 76 LOCAL_MODULE_CLASS := SHARED_LIBRARIES 77 LOCAL_MODULE_SUFFIX := .so 78 LOCAL_MODULE_TARGET_ARCH := arm64 79 LOCAL_MODULE_PATH := $(TARGET_OUT)/lib64 80 LOCAL_SANITIZE := never 81 LOCAL_SYSTEM_SHARED_LIBRARIES := 82 LOCAL_CXX_STL := none 83 include $(BUILD_PREBUILT) 84 85 include $(CLEAR_VARS) 86 LOCAL_MODULE := libclang_rt.ubsan_standalone-i686-android 87 LOCAL_SRC_FILES := $(libclang_dir)/lib/linux/$(LOCAL_MODULE).so 88 LOCAL_MODULE_CLASS := SHARED_LIBRARIES 89 LOCAL_MODULE_SUFFIX := .so 90 LOCAL_MODULE_TARGET_ARCH := x86 91 LOCAL_MODULE_PATH := $(TARGET_OUT)/lib 92 LOCAL_SANITIZE := never 93 LOCAL_SYSTEM_SHARED_LIBRARIES := 94 LOCAL_CXX_STL := none 95 include $(BUILD_PREBUILT) 96 97 #include $(CLEAR_VARS) 98 #LOCAL_MODULE := libclang_rt.ubsan_standalone-x86_64-android 99 #LOCAL_SRC_FILES := $(libclang_dir)/lib/linux/$(LOCAL_MODULE).so 100 #LOCAL_MODULE_CLASS := SHARED_LIBRARIES 101 #LOCAL_MODULE_SUFFIX := .so 102 #LOCAL_MODULE_TARGET_ARCH := x86_64 103 #LOCAL_MODULE_PATH_64 := $(TARGET_OUT)/lib64 104 #LOCAL_SANITIZE := never 105 #LOCAL_SYSTEM_SHARED_LIBRARIES := 106 #LOCAL_CXX_STL := none 107 #include $(BUILD_PREBUILT) 108 109 include $(CLEAR_VARS) 110 LOCAL_MODULE := libclang_rt.ubsan_standalone-mips-android 111 LOCAL_SRC_FILES := $(libclang_dir)/lib/linux/$(LOCAL_MODULE).so 112 LOCAL_MODULE_CLASS := SHARED_LIBRARIES 113 LOCAL_MODULE_SUFFIX := .so 114 LOCAL_MODULE_TARGET_ARCH := mips 115 LOCAL_MODULE_PATH := $(TARGET_OUT)/lib 116 LOCAL_SANITIZE := never 117 LOCAL_SYSTEM_SHARED_LIBRARIES := 118 LOCAL_CXX_STL := none 119 include $(BUILD_PREBUILT) 120 121 include $(CLEAR_VARS) 122 LOCAL_MODULE := libclang_rt.ubsan_standalone-mips64-android 123 LOCAL_SRC_FILES := $(libclang_dir)/lib/linux/$(LOCAL_MODULE).so 124 LOCAL_MODULE_CLASS := SHARED_LIBRARIES 125 LOCAL_MODULE_SUFFIX := .so 126 LOCAL_MODULE_TARGET_ARCH := mips64 127 LOCAL_MODULE_PATH := $(TARGET_OUT)/lib64 128 LOCAL_SANITIZE := never 129 LOCAL_SYSTEM_SHARED_LIBRARIES := 130 LOCAL_CXX_STL := none 131 include $(BUILD_PREBUILT) 132 133 # Also build/install the newest asan_test for each arch 134 # We rename it to asan-test for now to avoid duplicate definitions. 135 136 include $(CLEAR_VARS) 137 LOCAL_MODULE := asan-test 138 LOCAL_SRC_FILES := $(LLVM_PREBUILTS_VERSION)/test/arm/bin/asan_test 139 LOCAL_MODULE_CLASS := EXECUTABLES 140 LOCAL_MODULE_SUFFIX := 141 LOCAL_MODULE_PATH := $($(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_DATA_NATIVE_TESTS)/$(LOCAL_MODULE) 142 LOCAL_MODULE_TAGS := debug 143 LOCAL_MODULE_TARGET_ARCH := arm 144 LOCAL_SANITIZE := never 145 LOCAL_SYSTEM_SHARED_LIBRARIES := 146 LOCAL_CXX_STL := none 147 include $(BUILD_PREBUILT) 148 149 include $(CLEAR_VARS) 150 LOCAL_MODULE := asan-test 151 LOCAL_SRC_FILES := $(LLVM_PREBUILTS_VERSION)/test/aarch64/bin/asan_test 152 LOCAL_MODULE_CLASS := EXECUTABLES 153 LOCAL_MODULE_SUFFIX := 154 LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_NATIVE_TESTS)/$(LOCAL_MODULE) 155 LOCAL_MODULE_TAGS := debug 156 LOCAL_MODULE_TARGET_ARCH := arm64 157 LOCAL_SANITIZE := never 158 LOCAL_SYSTEM_SHARED_LIBRARIES := 159 LOCAL_CXX_STL := none 160 include $(BUILD_PREBUILT) 161 162 include $(CLEAR_VARS) 163 LOCAL_MODULE := asan-test 164 LOCAL_SRC_FILES := $(LLVM_PREBUILTS_VERSION)/test/i686/bin/asan_test 165 LOCAL_MODULE_CLASS := EXECUTABLES 166 LOCAL_MODULE_SUFFIX := 167 LOCAL_MODULE_PATH := $($(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_DATA_NATIVE_TESTS)/$(LOCAL_MODULE) 168 LOCAL_MODULE_TAGS := debug 169 LOCAL_MODULE_TARGET_ARCH := x86 170 LOCAL_SANITIZE := never 171 LOCAL_SYSTEM_SHARED_LIBRARIES := 172 LOCAL_CXX_STL := none 173 include $(BUILD_PREBUILT) 174 175 # There is no x86_64 prebuilt here yet. 176 177 include $(CLEAR_VARS) 178 LOCAL_MODULE := asan-test 179 LOCAL_SRC_FILES := $(LLVM_PREBUILTS_VERSION)/test/mips/bin/asan_test 180 LOCAL_MODULE_CLASS := EXECUTABLES 181 LOCAL_MODULE_SUFFIX := 182 LOCAL_MODULE_PATH := $($(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_DATA_NATIVE_TESTS)/$(LOCAL_MODULE) 183 LOCAL_MODULE_TAGS := debug 184 LOCAL_MODULE_TARGET_ARCH := mips 185 LOCAL_SANITIZE := never 186 LOCAL_SYSTEM_SHARED_LIBRARIES := 187 LOCAL_CXX_STL := none 188 include $(BUILD_PREBUILT) 189 190 include $(CLEAR_VARS) 191 LOCAL_MODULE := asan-test 192 LOCAL_SRC_FILES := $(LLVM_PREBUILTS_VERSION)/test/mips64/bin/asan_test 193 LOCAL_MODULE_CLASS := EXECUTABLES 194 LOCAL_MODULE_SUFFIX := 195 LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_NATIVE_TESTS)/$(LOCAL_MODULE) 196 LOCAL_MODULE_TAGS := debug 197 LOCAL_MODULE_TARGET_ARCH := mips64 198 LOCAL_SANITIZE := never 199 LOCAL_SYSTEM_SHARED_LIBRARIES := 200 LOCAL_CXX_STL := none 201 include $(BUILD_PREBUILT) 202 203 endif 204