blob: 2467f3e6365b3e402a8d248592ba7484266fb279 [file] [log] [blame]
Colin Crossced03082016-12-15 20:44:30 +00001#
2# Copyright (C) 2014 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
17include $(CLEAR_VARS)
18
19LOCAL_MODULE := $(module)
20LOCAL_MODULE_TAGS := $(module_tag)
21LOCAL_MULTILIB := $($(module)_multilib)
22ifeq ($(LOCAL_MULTILIB),both)
23ifneq ($(build_target),$(filter $(build_target),SHARED_LIBRARY STATIC_LIBRARY))
24 LOCAL_MODULE_STEM_32 := $(LOCAL_MODULE)32
25 LOCAL_MODULE_STEM_64 := $(LOCAL_MODULE)64
26endif
27endif
28
29ifeq ($(build_type),target)
30 include $(LLVM_DEVICE_BUILD_MK)
31else
32 include $(LLVM_HOST_BUILD_MK)
33endif
34
35LOCAL_ADDITIONAL_DEPENDENCIES += \
36 $(LOCAL_PATH)/Android.mk \
37 $(LOCAL_PATH)/Android.build.mk \
38
39LOCAL_CFLAGS += \
40 $(libbacktrace_common_cflags) \
41 $($(module)_cflags) \
42 $($(module)_cflags_$(build_type)) \
43
44LOCAL_CLANG_CFLAGS += \
45 $(libbacktrace_common_clang_cflags) \
46
47LOCAL_CONLYFLAGS += \
48 $(libbacktrace_common_conlyflags) \
49 $($(module)_conlyflags) \
50 $($(module)_conlyflags_$(build_type)) \
51
52LOCAL_CPPFLAGS += \
53 $(libbacktrace_common_cppflags) \
54 $($(module)_cppflags) \
55 $($(module)_cppflags_$(build_type)) \
56
57LOCAL_C_INCLUDES += \
58 $(libbacktrace_common_c_includes) \
59 $($(module)_c_includes) \
60 $($(module)_c_includes_$(build_type)) \
61
62LOCAL_SRC_FILES := \
63 $($(module)_src_files) \
64 $($(module)_src_files_$(build_type)) \
65
66LOCAL_STATIC_LIBRARIES += \
67 $($(module)_static_libraries) \
68 $($(module)_static_libraries_$(build_type)) \
69
70LOCAL_SHARED_LIBRARIES += \
71 $($(module)_shared_libraries) \
72 $($(module)_shared_libraries_$(build_type)) \
73
74LOCAL_LDLIBS += \
75 $($(module)_ldlibs) \
76 $($(module)_ldlibs_$(build_type)) \
77
78LOCAL_STRIP_MODULE := $($(module)_strip_module)
79
80ifeq ($(build_type),target)
81 include $(BUILD_$(build_target))
82endif
83
84ifeq ($(build_type),host)
85 # Only build if host builds are supported.
86 ifeq ($(build_host),true)
87 # -fno-omit-frame-pointer should be set for host build. Because currently
88 # libunwind can't recognize .debug_frame using dwarf version 4, and it relies
89 # on stack frame pointer to do unwinding on x86.
90 # $(LLVM_HOST_BUILD_MK) overwrites -fno-omit-frame-pointer. so the below line
91 # must be after the include.
92 LOCAL_CFLAGS += -Wno-extern-c-compat -fno-omit-frame-pointer
93 include $(BUILD_HOST_$(build_target))
94 endif
95endif