1 LOCAL_PATH:= $(call my-dir) 2 3 # For the host only 4 # ===================================================== 5 include $(CLEAR_VARS) 6 include $(CLEAR_TBLGEN_VARS) 7 8 LOCAL_MODULE := clang 9 10 LOCAL_MODULE_CLASS := EXECUTABLES 11 12 TBLGEN_TABLES := \ 13 DiagnosticCommonKinds.inc \ 14 DiagnosticDriverKinds.inc \ 15 DiagnosticFrontendKinds.inc \ 16 CC1Options.inc \ 17 CC1AsOptions.inc 18 19 clang_SRC_FILES := \ 20 cc1_main.cpp \ 21 cc1as_main.cpp \ 22 driver.cpp 23 24 LOCAL_SRC_FILES := $(clang_SRC_FILES) 25 26 LOCAL_STATIC_LIBRARIES := \ 27 libclangFrontendTool \ 28 libclangFrontend \ 29 libclangARCMigrate \ 30 libclangDriver \ 31 libclangSerialization \ 32 libclangCodeGen \ 33 libclangRewriteFrontend \ 34 libclangRewrite \ 35 libclangParse \ 36 libclangSema \ 37 libclangStaticAnalyzerFrontend \ 38 libclangStaticAnalyzerCheckers \ 39 libclangStaticAnalyzerCore \ 40 libclangAnalysis \ 41 libclangEdit \ 42 libclangAST \ 43 libclangLex \ 44 libclangBasic \ 45 libLLVMARMAsmParser \ 46 libLLVMARMCodeGen \ 47 libLLVMARMAsmPrinter \ 48 libLLVMARMDisassembler \ 49 libLLVMARMDesc \ 50 libLLVMARMInfo \ 51 libLLVMMipsAsmParser \ 52 libLLVMMipsCodeGen \ 53 libLLVMMipsDisassembler \ 54 libLLVMMipsAsmPrinter \ 55 libLLVMMipsDesc \ 56 libLLVMMipsInfo \ 57 libLLVMX86Info \ 58 libLLVMX86AsmParser \ 59 libLLVMX86CodeGen \ 60 libLLVMX86Disassembler \ 61 libLLVMX86Desc \ 62 libLLVMX86AsmPrinter \ 63 libLLVMX86Utils \ 64 libLLVMAArch64Info \ 65 libLLVMAArch64AsmParser \ 66 libLLVMAArch64CodeGen \ 67 libLLVMAArch64Disassembler \ 68 libLLVMAArch64Desc \ 69 libLLVMAArch64AsmPrinter \ 70 libLLVMAArch64Utils \ 71 libLLVMIRReader \ 72 libLLVMAsmParser \ 73 libLLVMAsmPrinter \ 74 libLLVMBitReader \ 75 libLLVMBitWriter \ 76 libLLVMSelectionDAG \ 77 libLLVMipo \ 78 libLLVMipa \ 79 libLLVMInstCombine \ 80 libLLVMInstrumentation \ 81 libLLVMCodeGen \ 82 libLLVMObject \ 83 libLLVMLinker \ 84 libLLVMMC \ 85 libLLVMMCParser \ 86 libLLVMScalarOpts \ 87 libLLVMTransformObjCARC \ 88 libLLVMTransformUtils \ 89 libLLVMVectorize \ 90 libLLVMAnalysis \ 91 libLLVMCore \ 92 libLLVMOption \ 93 libLLVMTarget \ 94 libLLVMProfileData \ 95 libLLVMObject \ 96 libLLVMMCDisassembler \ 97 libLLVMSupport 98 99 LOCAL_LDLIBS += -lm 100 ifdef USE_MINGW 101 LOCAL_LDLIBS += -limagehlp 102 else 103 LOCAL_LDLIBS += -lpthread -ldl 104 endif 105 106 # remove when we can use PIE binaries in all places again 107 LOCAL_NO_FPIE := true 108 109 # Create symlink clang++ pointing to clang. 110 # Use "=" (instead of ":=") to defer the evaluation. 111 LOCAL_POST_INSTALL_CMD = $(hide) ln -sf clang $(dir $(LOCAL_INSTALLED_MODULE))clang++ 112 113 include $(CLANG_HOST_BUILD_MK) 114 include $(CLANG_TBLGEN_RULES_MK) 115 include $(BUILD_HOST_EXECUTABLE) 116