1ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang#
2ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# Copyright (C) 2012 The Android Open Source Project
3ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang#
4ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# Licensed under the Apache License, Version 2.0 (the "License");
5ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# you may not use this file except in compliance with the License.
6ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# You may obtain a copy of the License at
7ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang#
8ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang#      http://www.apache.org/licenses/LICENSE-2.0
9ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang#
10ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# Unless required by applicable law or agreed to in writing, software
11ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# distributed under the License is distributed on an "AS IS" BASIS,
12ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# See the License for the specific language governing permissions and
14ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# limitations under the License.
15ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang#
16ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang
17c2074caf075818abb6d3689ad924ca09f4a5ba1fTim MurrayLOCAL_CLANG := true
18c2074caf075818abb6d3689ad924ca09f4a5ba1fTim Murray
19ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr ChangLOCAL_CFLAGS := \
20ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang  -Wall \
21ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang  -Wno-unused-parameter \
22ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang  -Werror \
23ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang  -DTARGET_BUILD \
24e109434cfd2bc24d324506238483c1ecd587e228Stephen Hines  $(RS_VERSION_DEFINE) \
25ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang  $(LOCAL_CFLAGS)
26ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang
278d254fd40df498a21ca540cb355ee8c6a9250ac0Tim Murray
288d254fd40df498a21ca540cb355ee8c6a9250ac0Tim Murrayifneq ($(BOARD_OVERRIDE_RS_CPU_VARIANT_32),)
298d254fd40df498a21ca540cb355ee8c6a9250ac0Tim MurrayLOCAL_CFLAGS += -DFORCE_CPU_VARIANT_32=$(BOARD_OVERRIDE_RS_CPU_VARIANT_32)
308d254fd40df498a21ca540cb355ee8c6a9250ac0Tim Murrayendif
318d254fd40df498a21ca540cb355ee8c6a9250ac0Tim Murray
328d254fd40df498a21ca540cb355ee8c6a9250ac0Tim Murrayifneq ($(BOARD_OVERRIDE_RS_CPU_VARIANT_64),)
338d254fd40df498a21ca540cb355ee8c6a9250ac0Tim MurrayLOCAL_CFLAGS += -DFORCE_CPU_VARIANT_64=$(BOARD_OVERRIDE_RS_CPU_VARIANT_64)
348d254fd40df498a21ca540cb355ee8c6a9250ac0Tim Murrayendif
358d254fd40df498a21ca540cb355ee8c6a9250ac0Tim Murray
36ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Changifeq ($(TARGET_BUILD_VARIANT),eng)
37ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr ChangLOCAL_CFLAGS += -DANDROID_ENGINEERING_BUILD
386e9e89d1ed049ec931bb1000948c12698e6c5484Stephen Hineselse
396e9e89d1ed049ec931bb1000948c12698e6c5484Stephen HinesLOCAL_CFLAGS += -D__DISABLE_ASSERTS
40ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Changendif
41ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang
42ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang#=====================================================================
43ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# Architecture Selection
44ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang#=====================================================================
45ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# Note: We should only use -DFORCE_ARCH_CODEGEN on target build.
46ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# For the host build, we will include as many architecture as possible,
47ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang# so that we can test the execution engine easily.
48ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang
4971df05005d8cbc15b4c288ff643be243af0c7b88Colin CrossLOCAL_MODULE_TARGET_ARCH := $(LLVM_SUPPORTED_ARCH)
50ad7d4c3a3d412b406b1841ded077fdca91d49b84Ashok Bhat
5171df05005d8cbc15b4c288ff643be243af0c7b88Colin Crossifeq ($(TARGET_ARCH),arm64)
5271df05005d8cbc15b4c288ff643be243af0c7b88Colin Cross$(info TODOArm64: $(LOCAL_PATH)/Android.mk Add Arm64 define to LOCAL_CFLAGS)
5371df05005d8cbc15b4c288ff643be243af0c7b88Colin Crossendif
5471df05005d8cbc15b4c288ff643be243af0c7b88Colin Cross
5571df05005d8cbc15b4c288ff643be243af0c7b88Colin Crossifeq ($(TARGET_ARCH),mips64)
5671df05005d8cbc15b4c288ff643be243af0c7b88Colin Cross$(info TODOMips64: $(LOCAL_PATH)/Android.mk Add Mips64 define to LOCAL_CFLAGS)
5771df05005d8cbc15b4c288ff643be243af0c7b88Colin Crossendif
5871df05005d8cbc15b4c288ff643be243af0c7b88Colin Cross
590467bc47bf4dd48796ede4f4a4f8ca02dddc33d7Stephen Hinesinclude frameworks/compile/libbcc/libbcc-targets.mk
60ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang
61ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr ChangLOCAL_C_INCLUDES := \
624e9864870f4a2c15ca8e1c333d92487a87ef0655Stephen Hines  bionic \
63c2074caf075818abb6d3689ad924ca09f4a5ba1fTim Murray  external/libcxx/include \
64ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang  $(LIBBCC_ROOT_PATH)/include \
654e9864870f4a2c15ca8e1c333d92487a87ef0655Stephen Hines  $(LLVM_ROOT_PATH)/include \
664e9864870f4a2c15ca8e1c333d92487a87ef0655Stephen Hines  $(LLVM_ROOT_PATH)/device/include \
67ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Chang  $(LOCAL_C_INCLUDES)
68