Home | History | Annotate | Download | only in driver
      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   libclangRewriteCore \
     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   libLLVMSupport \
     94   libLLVMTarget \
     95   libLLVMProfileData \
     96   libLLVMObject
     97 
     98 LOCAL_LDLIBS += -lm
     99 ifdef USE_MINGW
    100 LOCAL_LDLIBS += -limagehlp
    101 else
    102 LOCAL_LDLIBS += -lpthread -ldl
    103 endif
    104 
    105 include $(CLANG_HOST_BUILD_MK)
    106 include $(CLANG_TBLGEN_RULES_MK)
    107 include $(BUILD_HOST_EXECUTABLE)
    108 
    109 ifeq (true,$(FORCE_BUILD_LLVM_COMPONENTS))
    110 # Make sure if clang (i.e. $(LOCAL_MODULE)) get installed,
    111 # clang++ will get installed as well.
    112 ALL_MODULES.$(LOCAL_MODULE).INSTALLED := \
    113     $(ALL_MODULES.$(LOCAL_MODULE).INSTALLED) $(CLANG_CXX)
    114 # the additional dependency is needed when you run mm/mmm.
    115 $(LOCAL_MODULE) : $(CLANG_CXX)
    116 CLANG_ARM_NEON_H := $(TARGET_OUT_HEADERS)/clang/arm_neon.h
    117 $(LOCAL_MODULE) : $(CLANG_ARM_NEON_H)
    118 
    119 # Symlink for clang++
    120 $(CLANG_CXX) : $(LOCAL_INSTALLED_MODULE)
    121 	@echo "Symlink $@ -> $<"
    122 	$(hide) ln -sf $(notdir $<) $@
    123 endif
    124