Colin Cross | b7325c3 | 2014-02-04 16:26:26 -0800 | [diff] [blame] | 1 | LOCAL_MODULE_TARGET_ARCH := $(LLVM_SUPPORTED_ARCH) |
| 2 | |
Stephen Hines | 36b5688 | 2014-04-23 16:57:46 -0700 | [diff] [blame] | 3 | LOCAL_CLANG := true |
| 4 | |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 5 | LOCAL_CFLAGS := \ |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 6 | -D_GNU_SOURCE \ |
Shih-wei Liao | a523d50 | 2012-07-17 15:05:00 -0700 | [diff] [blame] | 7 | -D__STDC_LIMIT_MACROS \ |
| 8 | -D__STDC_CONSTANT_MACROS \ |
| 9 | -D__STDC_FORMAT_MACROS \ |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 10 | -O2 \ |
| 11 | -fomit-frame-pointer \ |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 12 | -Wall \ |
| 13 | -W \ |
| 14 | -Wno-unused-parameter \ |
| 15 | -Wwrite-strings \ |
Stephen Hines | 36b5688 | 2014-04-23 16:57:46 -0700 | [diff] [blame] | 16 | -Dsprintf=sprintf \ |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 17 | $(LOCAL_CFLAGS) |
| 18 | |
Jing Yu | 7fa502c | 2010-12-07 16:21:00 -0800 | [diff] [blame] | 19 | # The three inline options together reduce libbcc.so almost 1MB. |
| 20 | # We move them from global build/core/combo/TARGET_linux-arm.mk |
| 21 | # to here. |
| 22 | LOCAL_CFLAGS := -DANDROID_TARGET_BUILD \ |
Jing Yu | 7fa502c | 2010-12-07 16:21:00 -0800 | [diff] [blame] | 23 | -finline-functions \ |
Jing Yu | 7fa502c | 2010-12-07 16:21:00 -0800 | [diff] [blame] | 24 | $(LOCAL_CFLAGS) |
Ying Wang | 5183d48 | 2010-08-20 10:59:12 -0700 | [diff] [blame] | 25 | |
Daniel Malea | 369c4a4 | 2012-02-19 16:04:51 -0500 | [diff] [blame] | 26 | ifeq ($(TARGET_BUILD_VARIANT),eng) |
| 27 | LOCAL_CFLAGS := -DANDROID_ENGINEERING_BUILD \ |
| 28 | $(LOCAL_CFLAGS) |
| 29 | endif |
| 30 | |
Shih-wei Liao | 44ce444 | 2010-05-04 03:19:48 -0700 | [diff] [blame] | 31 | ifeq ($(LLVM_ENABLE_ASSERTION),true) |
| 32 | LOCAL_CFLAGS := \ |
Stephen Hines | fd6aea2 | 2012-05-03 14:47:20 -0700 | [diff] [blame] | 33 | $(LOCAL_CFLAGS) \ |
Shih-wei Liao | 44ce444 | 2010-05-04 03:19:48 -0700 | [diff] [blame] | 34 | -D_DEBUG \ |
Stephen Hines | fd6aea2 | 2012-05-03 14:47:20 -0700 | [diff] [blame] | 35 | -UNDEBUG |
Shih-wei Liao | 44ce444 | 2010-05-04 03:19:48 -0700 | [diff] [blame] | 36 | endif |
| 37 | |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 38 | ifneq ($(REQUIRES_EH),1) |
| 39 | LOCAL_CFLAGS += -fno-exceptions |
| 40 | else |
Shih-wei Liao | c156bc6 | 2010-06-07 22:05:52 -0700 | [diff] [blame] | 41 | # No action. The device target should not have exception enabled since bionic |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 42 | # doesn't support it |
| 43 | REQUIRES_EH := 0 |
| 44 | endif |
| 45 | |
| 46 | ifneq ($(REQUIRES_RTTI),1) |
Patrick Scott | c364886 | 2010-05-07 08:38:22 -0400 | [diff] [blame] | 47 | LOCAL_CPPFLAGS += -fno-rtti |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 48 | else |
| 49 | REQUIRES_RTTI := 0 |
| 50 | endif |
| 51 | |
Shih-wei Liao | 7abe37e | 2010-04-28 01:47:00 -0700 | [diff] [blame] | 52 | LOCAL_CPPFLAGS := \ |
| 53 | $(LOCAL_CPPFLAGS) \ |
jush | 4671b17 | 2011-02-28 17:18:20 +0800 | [diff] [blame] | 54 | -Woverloaded-virtual \ |
Stephen Hines | 36b5688 | 2014-04-23 16:57:46 -0700 | [diff] [blame] | 55 | -Wno-sign-promo \ |
| 56 | -std=c++11 |
Shih-wei Liao | c156bc6 | 2010-06-07 22:05:52 -0700 | [diff] [blame] | 57 | |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 58 | # Make sure bionic is first so we can include system headers. |
| 59 | LOCAL_C_INCLUDES := \ |
Jeff Brown | 8aca411 | 2011-07-11 22:12:00 -0700 | [diff] [blame] | 60 | bionic \ |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 61 | $(LLVM_ROOT_PATH) \ |
| 62 | $(LLVM_ROOT_PATH)/include \ |
| 63 | $(LLVM_ROOT_PATH)/device/include \ |
| 64 | $(LOCAL_C_INCLUDES) |
| 65 | |
| 66 | ########################################################### |
| 67 | ## Commands for running tblgen to compile a td file |
| 68 | ########################################################### |
| 69 | define transform-device-td-to-out |
| 70 | @mkdir -p $(dir $@) |
Logan Chien | 5683786 | 2011-12-16 17:38:39 +0800 | [diff] [blame] | 71 | @echo "Device TableGen (gen-$(1)): $(TBLGEN_LOCAL_MODULE) <= $<" |
Stephen Hines | 7b17ef6 | 2014-06-03 18:31:47 -0700 | [diff] [blame] | 72 | $(hide) $(LLVM_TBLGEN) \ |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 73 | -I $(dir $<) \ |
| 74 | -I $(LLVM_ROOT_PATH)/include \ |
| 75 | -I $(LLVM_ROOT_PATH)/device/include \ |
| 76 | -I $(LLVM_ROOT_PATH)/lib/Target \ |
| 77 | -gen-$(strip $(1)) \ |
Ying Wang | ca65f4e | 2011-05-24 11:20:36 -0700 | [diff] [blame] | 78 | -o $@ $< |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 79 | endef |