Tim Murray | 63bbc50 | 2014-04-01 17:20:44 -0700 | [diff] [blame] | 1 | # Windows can't use Clang to build yet |
| 2 | ifneq ($(HOST_OS),windows) |
Stephen Hines | 36b5688 | 2014-04-23 16:57:46 -0700 | [diff] [blame] | 3 | LOCAL_CLANG := true |
Stephen Hines | 36b5688 | 2014-04-23 16:57:46 -0700 | [diff] [blame] | 4 | include external/libcxx/libcxx.mk |
Stephen Hines | 8a95734 | 2014-09-29 22:54:01 -0700 | [diff] [blame] | 5 | endif |
Stephen Hines | 36b5688 | 2014-04-23 16:57:46 -0700 | [diff] [blame] | 6 | |
| 7 | LOCAL_CFLAGS += \ |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 8 | -D_GNU_SOURCE \ |
Shih-wei Liao | 4a05ed7 | 2012-07-17 15:46:02 -0700 | [diff] [blame] | 9 | -D__STDC_LIMIT_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 \ |
Tim Murray | 63bbc50 | 2014-04-01 17:20:44 -0700 | [diff] [blame] | 16 | -Dsprintf=sprintf \ |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 17 | $(LOCAL_CFLAGS) |
| 18 | |
Shih-wei Liao | 44ce444 | 2010-05-04 03:19:48 -0700 | [diff] [blame] | 19 | ifeq ($(LLVM_ENABLE_ASSERTION),true) |
| 20 | LOCAL_CFLAGS := \ |
Stephen Hines | fd6aea2 | 2012-05-03 14:47:20 -0700 | [diff] [blame] | 21 | $(LOCAL_CFLAGS) \ |
Shih-wei Liao | 44ce444 | 2010-05-04 03:19:48 -0700 | [diff] [blame] | 22 | -D_DEBUG \ |
Stephen Hines | fd6aea2 | 2012-05-03 14:47:20 -0700 | [diff] [blame] | 23 | -UNDEBUG |
Shih-wei Liao | 44ce444 | 2010-05-04 03:19:48 -0700 | [diff] [blame] | 24 | endif |
| 25 | |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 26 | ifneq ($(REQUIRES_EH),1) |
Shih-wei Liao | 7abe37e | 2010-04-28 01:47:00 -0700 | [diff] [blame] | 27 | LOCAL_CFLAGS += -fno-exceptions |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 28 | else |
| 29 | REQUIRES_EH := 0 |
| 30 | LOCAL_CFLAGS += -fexceptions |
| 31 | endif |
| 32 | |
| 33 | ifneq ($(REQUIRES_RTTI),1) |
Patrick Scott | c364886 | 2010-05-07 08:38:22 -0400 | [diff] [blame] | 34 | LOCAL_CPPFLAGS += -fno-rtti |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 35 | else |
| 36 | REQUIRES_RTTI := 0 |
| 37 | endif |
| 38 | |
Shih-wei Liao | 7abe37e | 2010-04-28 01:47:00 -0700 | [diff] [blame] | 39 | LOCAL_CPPFLAGS := \ |
| 40 | $(LOCAL_CPPFLAGS) \ |
jush | 4671b17 | 2011-02-28 17:18:20 +0800 | [diff] [blame] | 41 | -Woverloaded-virtual \ |
Stephen Hines | 36b5688 | 2014-04-23 16:57:46 -0700 | [diff] [blame] | 42 | -Wno-sign-promo \ |
| 43 | -std=c++11 |
Shih-wei Liao | c156bc6 | 2010-06-07 22:05:52 -0700 | [diff] [blame] | 44 | |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 45 | # Make sure bionic is first so we can include system headers. |
| 46 | LOCAL_C_INCLUDES := \ |
| 47 | $(LLVM_ROOT_PATH) \ |
| 48 | $(LLVM_ROOT_PATH)/include \ |
| 49 | $(LLVM_ROOT_PATH)/host/include \ |
| 50 | $(LOCAL_C_INCLUDES) |
| 51 | |
| 52 | LOCAL_IS_HOST_MODULE := true |
| 53 | |
Ian Rogers | 6ef4964 | 2014-06-05 15:25:22 -0700 | [diff] [blame] | 54 | LOCAL_32_BIT_ONLY := true |
| 55 | |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 56 | ########################################################### |
| 57 | ## Commands for running tblgen to compile a td file |
| 58 | ########################################################### |
| 59 | define transform-host-td-to-out |
| 60 | @mkdir -p $(dir $@) |
Logan Chien | 5683786 | 2011-12-16 17:38:39 +0800 | [diff] [blame] | 61 | @echo "Host TableGen: $(TBLGEN_LOCAL_MODULE) (gen-$(1)) <= $<" |
Stephen Hines | 7b17ef6 | 2014-06-03 18:31:47 -0700 | [diff] [blame] | 62 | $(hide) $(LLVM_TBLGEN) \ |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 63 | -I $(dir $<) \ |
| 64 | -I $(LLVM_ROOT_PATH)/include \ |
| 65 | -I $(LLVM_ROOT_PATH)/host/include \ |
| 66 | -I $(LLVM_ROOT_PATH)/lib/Target \ |
Zonr Chang | 037754c | 2010-10-08 20:12:54 +0800 | [diff] [blame] | 67 | $(if $(strip $(CLANG_ROOT_PATH)),-I $(CLANG_ROOT_PATH)/include,) \ |
| 68 | -gen-$(strip $(1)) \ |
Ying Wang | ca65f4e | 2011-05-24 11:20:36 -0700 | [diff] [blame] | 69 | -o $@ $< |
Shih-wei Liao | e445432 | 2010-04-07 12:21:42 -0700 | [diff] [blame] | 70 | endef |