• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1LOCAL_PATH := $(call my-dir)
2LLVM_ROOT_PATH := external/llvm
3CLANG_ROOT_PATH := external/clang
4llvm_static_libs_needed := \
5	libclangFrontend	\
6        libclangDriver \
7	libclangSerialization	\
8	libclangParse	\
9	libclangSema	\
10	libclangAnalysis	\
11	libclangCodeGen	\
12	libclangAST	\
13	libclangLex	\
14	libclangEdit	\
15	libclangBasic	\
16	libLLVMLinker   \
17	libLLVMipo	\
18	libLLVMBitWriter	\
19	libLLVMBitReader	\
20	libLLVMARMCodeGen	\
21	libLLVMARMInfo	\
22	libLLVMARMAsmParser \
23	libLLVMARMDesc \
24	libLLVMARMAsmPrinter	\
25	libLLVMX86CodeGen	\
26	libLLVMX86Info	\
27	libLLVMX86Desc \
28	libLLVMX86AsmParser \
29	libLLVMX86AsmPrinter	\
30	libLLVMX86Utils	\
31	libLLVMMipsCodeGen \
32	libLLVMMipsInfo \
33	libLLVMMipsDesc \
34	libLLVMMipsAsmParser \
35	libLLVMMipsAsmPrinter \
36	libLLVMAsmPrinter	\
37	libLLVMSelectionDAG	\
38	libLLVMCodeGen	\
39	libLLVMScalarOpts	\
40	libLLVMInstCombine	\
41	libLLVMInstrumentation	\
42	libLLVMTransformUtils	\
43	libLLVMipa	\
44	libLLVMAnalysis	\
45	libLLVMTarget	\
46	libLLVMMC	\
47	libLLVMMCParser	\
48	libLLVMCore	\
49	libLLVMArchive \
50	libLLVMAsmParser \
51	libLLVMSupport  \
52        libLLVMVectorize
53
54# ========================================================
55# Static library libndkpc for host
56# ========================================================
57include $(CLEAR_VARS)
58include $(CLEAR_TBLGEN_VARS)
59
60include $(CLANG_ROOT_PATH)/clang.mk
61
62LOCAL_MODULE := libndkpc
63LOCAL_MODULE_TAGS := optional
64
65LOCAL_CFLAGS += -Wno-sign-promo
66ifneq ($(TARGET_BUILD_VARIANT),eng)
67LOCAL_CFLAGS += -D__DISABLE_ASSERTS
68endif
69
70TBLGEN_TABLES :=    \
71	AttrList.inc	\
72	Attrs.inc	\
73	CommentNodes.inc \
74	DeclNodes.inc	\
75	DiagnosticCommonKinds.inc	\
76	DiagnosticFrontendKinds.inc	\
77	DiagnosticSemaKinds.inc	\
78	StmtNodes.inc
79
80LOCAL_SRC_FILES :=	\
81	Compiler.cpp	\
82	Backend.cpp
83
84LOCAL_LDLIBS := -ldl -lpthread
85
86include $(CLANG_HOST_BUILD_MK)
87include $(CLANG_TBLGEN_RULES_MK)
88include $(LLVM_GEN_INTRINSICS_MK)
89include $(BUILD_HOST_STATIC_LIBRARY)
90
91# ========================================================
92# Executable llvm-ndk-cc for host
93# ========================================================
94include $(CLEAR_VARS)
95include $(CLEAR_TBLGEN_VARS)
96
97LOCAL_IS_HOST_MODULE := true
98LOCAL_MODULE := llvm-ndk-cc
99LOCAL_MODULE_TAGS := optional
100
101LOCAL_MODULE_CLASS := EXECUTABLES
102
103LOCAL_CFLAGS += -Wno-sign-promo
104ifneq ($(TARGET_BUILD_VARIANT),eng)
105LOCAL_CFLAGS += -D__DISABLE_ASSERTS
106endif
107
108TBLGEN_TABLES :=    \
109	AttrList.inc    \
110	Attrs.inc    \
111	CommentNodes.inc \
112	DeclNodes.inc    \
113	DiagnosticCommonKinds.inc   \
114	DiagnosticDriverKinds.inc \
115	DiagnosticFrontendKinds.inc	\
116	DiagnosticSemaKinds.inc	\
117	StmtNodes.inc
118
119LOCAL_SRC_FILES :=	\
120	llvm-ndk-cc.cpp
121
122LOCAL_STATIC_LIBRARIES :=	\
123	libclangDriver libndkpc \
124	$(llvm_static_libs_needed)
125
126ifeq ($(HOST_OS),windows)
127  LOCAL_LDLIBS := -limagehlp -lpsapi
128else
129  LOCAL_LDLIBS := -ldl -lpthread
130endif
131
132include $(CLANG_HOST_BUILD_MK)
133include $(CLANG_TBLGEN_RULES_MK)
134include $(BUILD_HOST_EXECUTABLE)
135
136# ========================================================
137# Executable llvm-ndk-link for host
138# ========================================================
139include $(CLEAR_VARS)
140
141LOCAL_IS_HOST_MODULE := true
142LOCAL_MODULE := llvm-ndk-link
143LOCAL_MODULE_TAGS := optional
144LOCAL_MODULE_CLASS := EXECUTABLES
145
146LOCAL_SRC_FILES := llvm-ndk-link.cpp
147
148LOCAL_LDLIBS := -ldl -lpthread
149
150LOCAL_STATIC_LIBRARIES := \
151  $(llvm_static_libs_needed)
152
153include $(CLANG_ROOT_PATH)/clang.mk
154include $(CLANG_HOST_BUILD_MK)
155include $(LLVM_ROOT_PATH)/llvm.mk
156include $(LLVM_HOST_BUILD_MK)
157
158include $(BUILD_HOST_EXECUTABLE)
159