1# 2# Copyright (C) 2011 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 18#===================================================================== 19# Root Path for Other Projects 20#===================================================================== 21 22LLVM_ROOT_PATH := external/llvm 23LIBBCC_ROOT_PATH := frameworks/compile/libbcc 24RSLOADER_ROOT_PATH := frameworks/compile/linkloader 25 26 27#===================================================================== 28# Configurations 29#===================================================================== 30 31libbcc_USE_OLD_JIT := 0 32libbcc_USE_MCJIT := 1 33 34libbcc_USE_CACHE := 1 35 36libbcc_DEBUG_OLD_JIT_DISASSEMBLER := 0 37libbcc_DEBUG_MCJIT_DISASSEMBLER := 0 38 39libbcc_USE_LOGGER := 1 40libbcc_USE_FUNC_LOGGER := 0 41libbcc_DEBUG_BCC_REFLECT := 0 42libbcc_DEBUG_MCJIT_REFLECT := 0 43 44 45#===================================================================== 46# Automatic Configurations 47#===================================================================== 48 49ifeq ($(libbcc_USE_OLD_JIT),0) 50libbcc_DEBUG_OLD_JIT_DISASSEMBLER := 0 51endif 52 53ifeq ($(libbcc_USE_MCJIT),0) 54libbcc_DEBUG_MCJIT_DISASSEMBLER := 0 55endif 56 57ifeq ($(libbcc_DEBUG_OLD_JIT_DISASSEMBLER)$(libbcc_DEBUG_MCJIT_DISASSEMBLER),00) 58libbcc_USE_DISASSEMBLER := 0 59else 60libbcc_USE_DISASSEMBLER := 1 61endif 62 63 64#===================================================================== 65# Common Variables 66#===================================================================== 67 68libbcc_CFLAGS := -Wall -Wno-unused-parameter -Werror 69ifneq ($(TARGET_BUILD_VARIANT),eng) 70libbcc_CFLAGS += -D__DISABLE_ASSERTS 71endif 72 73ifeq ($(TARGET_ARCH),arm) 74 libbcc_CFLAGS += -DFORCE_ARM_CODEGEN=1 75 ifeq (true,$(ARCH_ARM_HAVE_VFP)) 76 libbcc_CFLAGS += -DARCH_ARM_HAVE_VFP 77 ifeq (true,$(ARCH_ARM_HAVE_VFP_D32)) 78 libbcc_CFLAGS += -DARCH_ARM_HAVE_VFP_D32 79 endif 80 endif 81 ifeq (true,$(ARCH_ARM_HAVE_NEON)) 82 libbcc_CFLAGS += -DARCH_ARM_HAVE_NEON 83 endif 84else 85 ifeq ($(TARGET_ARCH),x86) 86 libbcc_CFLAGS += -DFORCE_X86_CODEGEN=1 87 else 88 $(error Unsupported TARGET_ARCH $(TARGET_ARCH)) 89 endif 90endif 91 92# Include File Search Path 93libbcc_C_INCLUDES := \ 94 $(RSLOADER_ROOT_PATH)/android \ 95 $(LIBBCC_ROOT_PATH)/lib \ 96 $(LIBBCC_ROOT_PATH)/helper \ 97 $(LIBBCC_ROOT_PATH)/include \ 98 $(LIBBCC_ROOT_PATH) 99