• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
18LOCAL_PATH:= $(call my-dir)
19
20san_rtl_files := \
21    sanitizer_allocator.cc \
22    sanitizer_common.cc \
23    sanitizer_deadlock_detector1.cc \
24    sanitizer_deadlock_detector2.cc \
25    sanitizer_flags.cc \
26    sanitizer_flag_parser.cc \
27    sanitizer_libc.cc \
28    sanitizer_libignore.cc \
29    sanitizer_linux.cc \
30    sanitizer_mac.cc \
31    sanitizer_persistent_allocator.cc \
32    sanitizer_platform_limits_linux.cc \
33    sanitizer_platform_limits_posix.cc \
34    sanitizer_posix.cc \
35    sanitizer_printf.cc \
36    sanitizer_procmaps_common.cc \
37    sanitizer_procmaps_freebsd.cc \
38    sanitizer_procmaps_linux.cc \
39    sanitizer_procmaps_mac.cc \
40    sanitizer_stackdepot.cc \
41    sanitizer_stacktrace.cc \
42    sanitizer_stacktrace_printer.cc \
43    sanitizer_suppressions.cc \
44    sanitizer_symbolizer.cc \
45    sanitizer_symbolizer_libbacktrace.cc \
46    sanitizer_symbolizer_win.cc \
47    sanitizer_tls_get_addr.cc \
48    sanitizer_thread_registry.cc \
49    sanitizer_win.cc \
50
51san_cdep_files := \
52    sanitizer_common_libcdep.cc \
53    sanitizer_coverage_libcdep.cc \
54    sanitizer_coverage_mapping_libcdep.cc \
55    sanitizer_linux_libcdep.cc \
56    sanitizer_posix_libcdep.cc \
57    sanitizer_stacktrace_libcdep.cc \
58    sanitizer_stoptheworld_linux_libcdep.cc \
59    sanitizer_symbolizer_libcdep.cc \
60    sanitizer_symbolizer_posix_libcdep.cc \
61    sanitizer_unwind_linux_libcdep.cc \
62
63san_rtl_cppflags := \
64    -fvisibility=hidden \
65    -fno-exceptions \
66    -std=c++11 \
67    -Wall \
68    -Werror \
69    -Wno-unused-parameter \
70
71san_rtl_c_includes := \
72    external/compiler-rt/lib \
73
74################################################################################
75# Host modules
76
77ifneq ($(HOST_OS),darwin)
78
79include $(CLEAR_VARS)
80LOCAL_MODULE := libsan
81LOCAL_CPP_EXTENSION := .cc
82LOCAL_C_INCLUDES := $(san_rtl_c_includes)
83LOCAL_CPPFLAGS := $(san_rtl_cppflags)
84LOCAL_SRC_FILES := $(san_rtl_files) $(san_cdep_files)
85LOCAL_CXX_STL := none
86LOCAL_SANITIZE := never
87LOCAL_MULTILIB := both
88include $(BUILD_HOST_STATIC_LIBRARY)
89
90endif
91
92ifndef SANITIZE_HOST
93include $(LOCAL_PATH)/tests/Android.mk
94endif
95