blob: 8e57f66dbe2ed6064584bc0860b90bc776634f8a [file] [log] [blame]
Elliott Hughescc213f82012-08-14 15:32:42 -07001#
2# Copyright (C) 2012 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.
Benoit Goby5ac9eee2012-08-31 19:52:15 -070015#
16
Elliott Hughescc213f82012-08-14 15:32:42 -070017LOCAL_PATH := $(call my-dir)
18
Dimitry Ivanov972e3d02016-08-12 14:25:50 -070019# TODO(dimitry): replace with define once https://android-review.googlesource.com/247466 is reverted
20# https://github.com/google/kati/issues/83 is currently blocking it.
21
Dimitry Ivanov9700bab2016-08-10 18:54:06 -070022# Move prebuilt test elf-files to $(TARGET_OUT_NATIVE_TESTS)
23include $(CLEAR_VARS)
24LOCAL_MULTILIB := both
25LOCAL_MODULE := libtest_invalid-rw_load_segment.so
26LOCAL_MODULE_PATH_32 := $($(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_DATA_NATIVE_TESTS)/prebuilt-elf-files
27LOCAL_MODULE_PATH_64 := $(TARGET_OUT_DATA_NATIVE_TESTS)/prebuilt-elf-files
Dimitry Ivanov972e3d02016-08-12 14:25:50 -070028LOCAL_MODULE_CLASS := EXECUTABLES
29
30LOCAL_SRC_FILES_arm := prebuilt-elf-files/arm/$(LOCAL_MODULE)
31LOCAL_SRC_FILES_arm64 := prebuilt-elf-files/arm64/$(LOCAL_MODULE)
32LOCAL_SRC_FILES_x86 := prebuilt-elf-files/x86/$(LOCAL_MODULE)
33LOCAL_SRC_FILES_x86_64 := prebuilt-elf-files/x86_64/$(LOCAL_MODULE)
34include $(BUILD_PREBUILT)
35
36include $(CLEAR_VARS)
37LOCAL_MULTILIB := both
38LOCAL_MODULE := libtest_invalid-unaligned_shdr_offset.so
39LOCAL_MODULE_PATH_32 := $($(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_DATA_NATIVE_TESTS)/prebuilt-elf-files
40LOCAL_MODULE_PATH_64 := $(TARGET_OUT_DATA_NATIVE_TESTS)/prebuilt-elf-files
41LOCAL_MODULE_CLASS := EXECUTABLES
Dimitry Ivanov9700bab2016-08-10 18:54:06 -070042
43LOCAL_SRC_FILES_arm := prebuilt-elf-files/arm/$(LOCAL_MODULE)
44LOCAL_SRC_FILES_arm64 := prebuilt-elf-files/arm64/$(LOCAL_MODULE)
45LOCAL_SRC_FILES_x86 := prebuilt-elf-files/x86/$(LOCAL_MODULE)
46LOCAL_SRC_FILES_x86_64 := prebuilt-elf-files/x86_64/$(LOCAL_MODULE)
47include $(BUILD_PREBUILT)
48
Dimitry Ivanovcb86c312016-08-12 15:28:42 -070049include $(CLEAR_VARS)
50LOCAL_MULTILIB := both
51LOCAL_MODULE := libtest_invalid-zero_shentsize.so
52LOCAL_MODULE_PATH_32 := $($(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_DATA_NATIVE_TESTS)/prebuilt-elf-files
53LOCAL_MODULE_PATH_64 := $(TARGET_OUT_DATA_NATIVE_TESTS)/prebuilt-elf-files
54LOCAL_MODULE_CLASS := EXECUTABLES
55
56LOCAL_SRC_FILES_arm := prebuilt-elf-files/arm/$(LOCAL_MODULE)
57LOCAL_SRC_FILES_arm64 := prebuilt-elf-files/arm64/$(LOCAL_MODULE)
58LOCAL_SRC_FILES_x86 := prebuilt-elf-files/x86/$(LOCAL_MODULE)
59LOCAL_SRC_FILES_x86_64 := prebuilt-elf-files/x86_64/$(LOCAL_MODULE)
60include $(BUILD_PREBUILT)
61
Christopher Ferrisf04935c2013-12-20 18:43:21 -080062ifeq ($(HOST_OS)-$(HOST_ARCH),$(filter $(HOST_OS)-$(HOST_ARCH),linux-x86 linux-x86_64))
63build_host := true
64else
65build_host := false
66endif
67
Christopher Ferrise9f7a9c2014-06-10 19:46:07 -070068ifeq ($(HOST_OS)-$(HOST_ARCH),$(filter $(HOST_OS)-$(HOST_ARCH),linux-x86 linux-x86_64))
Dmitriy Ivanov156c3af2014-04-22 15:22:25 -070069
Dan Albertf04a8bc2014-10-03 13:46:42 -070070# -----------------------------------------------------------------------------
71# Compile time tests.
72# -----------------------------------------------------------------------------
73
74# Some of these are intentionally using = instead of := since we need access to
75# some variables not initialtized until we're in the build system.
76
77include $(CLEAR_VARS)
78LOCAL_ADDITIONAL_DEPENDENCIES := \
79 $(LOCAL_PATH)/Android.mk \
80 $(LOCAL_PATH)/file-check-cxx \
81 | $(HOST_OUT_EXECUTABLES)/FileCheck$(HOST_EXECUTABLE_SUFFIX) \
82
83LOCAL_CXX = $(LOCAL_PATH)/file-check-cxx \
84 $(HOST_OUT_EXECUTABLES)/FileCheck \
Ying Wang361d4b42015-07-20 18:51:30 -070085 $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_CXX) \
Dan Albertf04a8bc2014-10-03 13:46:42 -070086 GCC \
87
88LOCAL_CLANG := false
89LOCAL_MODULE := bionic-compile-time-tests-g++
Elliott Hughes62284dd2015-01-22 15:36:24 -080090LOCAL_CPPFLAGS := -Wall
Colin Cross840be7c2015-09-25 14:42:07 -070091# Disable color diagnostics so the warnings output matches the source
92LOCAL_CPPFLAGS += -fdiagnostics-color=never
Yabin Cui24e88712015-03-04 15:31:55 -080093LOCAL_SRC_FILES := fortify_compilation_test.cpp
Dan Albertf04a8bc2014-10-03 13:46:42 -070094include $(BUILD_STATIC_LIBRARY)
95
96include $(CLEAR_VARS)
97LOCAL_ADDITIONAL_DEPENDENCIES := \
98 $(LOCAL_PATH)/Android.mk \
99 $(LOCAL_PATH)/file-check-cxx \
100 | $(HOST_OUT_EXECUTABLES)/FileCheck$(HOST_EXECUTABLE_SUFFIX) \
101
102LOCAL_CXX := $(LOCAL_PATH)/file-check-cxx \
103 $(HOST_OUT_EXECUTABLES)/FileCheck \
104 $(LLVM_PREBUILTS_PATH)/clang++ \
105 CLANG \
106
107LOCAL_CLANG := true
108LOCAL_MODULE := bionic-compile-time-tests-clang++
Elliott Hughes62284dd2015-01-22 15:36:24 -0800109LOCAL_CPPFLAGS := -Wall
Colin Cross840be7c2015-09-25 14:42:07 -0700110# Disable color diagnostics so the warnings output matches the source
111LOCAL_CPPFLAGS += -fno-color-diagnostics
Dan Albert2fbb1b62014-10-08 11:21:32 -0700112# FileCheck will error if there aren't any CLANG: lines in the file, but there
113# don't appear to be any cases where clang _does_ emit warnings for sn?printf :(
Dan Albertf04a8bc2014-10-03 13:46:42 -0700114LOCAL_SRC_FILES :=
115include $(BUILD_STATIC_LIBRARY)
116
Elliott Hughes0c567f12014-04-22 19:21:32 -0700117endif # linux-x86
Pavel Chupinf22fb682013-09-06 18:43:27 +0400118
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -0700119include $(call first-makefiles-under,$(LOCAL_PATH))