libbcc-device-build.mk revision 2140268fadd2782d9a3d8885ca72cf8c0e52c46e
1#
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.
15#
16
17LOCAL_CFLAGS := \
18  -Wall \
19  -Wno-unused-parameter \
20  -Werror \
21  -DTARGET_BUILD \
22  $(LOCAL_CFLAGS)
23
24ifeq ($(TARGET_BUILD_VARIANT),eng)
25LOCAL_CFLAGS += -DANDROID_ENGINEERING_BUILD
26else
27LOCAL_CFLAGS += -D__DISABLE_ASSERTS
28endif
29
30#=====================================================================
31# Architecture Selection
32#=====================================================================
33# Note: We should only use -DFORCE_ARCH_CODEGEN on target build.
34# For the host build, we will include as many architecture as possible,
35# so that we can test the execution engine easily.
36
37ifeq ($(TARGET_ARCH),aarch64)
38$(info TODOAArch64: $(LOCAL_PATH)/Android.mk Add AArch64 define to LOCAL_CFLAGS)
39else
40
41ifeq ($(TARGET_ARCH),arm)
42  LOCAL_CFLAGS += -DFORCE_ARM_CODEGEN
43  ifeq ($(ARCH_ARM_HAVE_VFP),true)
44    LOCAL_CFLAGS += -DARCH_ARM_HAVE_VFP
45    ifeq ($(ARCH_ARM_HAVE_VFP_D32),true)
46      LOCAL_CFLAGS += -DARCH_ARM_HAVE_VFP_D32
47    endif
48  endif
49  ifeq ($(ARCH_ARM_HAVE_NEON),true)
50    LOCAL_CFLAGS += -DARCH_ARM_HAVE_NEON
51  endif
52else
53  ifeq ($(TARGET_ARCH),mips)
54    LOCAL_CFLAGS += -DFORCE_MIPS_CODEGEN
55  else
56    ifeq ($(TARGET_ARCH),$(filter $(TARGET_ARCH),x86 x86_64))
57      LOCAL_CFLAGS += -DFORCE_X86_CODEGEN
58    else
59      $(error Unsupported architecture $(TARGET_ARCH))
60    endif
61  endif
62endif
63
64LOCAL_C_INCLUDES := \
65  bionic \
66  external/stlport/stlport \
67  $(LIBBCC_ROOT_PATH)/include \
68  $(LLVM_ROOT_PATH)/include \
69  $(LLVM_ROOT_PATH)/device/include \
70  $(LOCAL_C_INCLUDES)
71
72endif # !aarch64
73