xref: /freebsd/lib/clang/Makefile (revision a9e8641da961bcf3d24afc85fd657f2083a872a2)
1# $FreeBSD$
2
3.include <bsd.own.mk>
4
5.if !make(install)
6.if !defined(EARLY_BUILD)
7.if defined(MK_CLANG_FULL) && ${MK_CLANG_FULL} != "no"
8_libclangstaticanalyzer= \
9	libclangstaticanalyzercheckers \
10	libclangstaticanalyzercore \
11	libclangstaticanalyzerfrontend
12_libclangarcmigrate= \
13	libclangarcmigrate
14.endif # MK_CLANG_FULL
15.if (defined(MK_CLANG_FULL) && ${MK_CLANG_FULL} != "no") || \
16    (defined(MK_LLDB) && ${MK_LLDB} != "no")
17_libclangrewriter= \
18	libclangrewritecore \
19	libclangrewritefrontend
20.endif # (MK_CLANG_FULL || MK_LLDB)
21.endif # !EARLY_BUILD
22
23SUBDIR=	libclanganalysis \
24	${_libclangarcmigrate} \
25	libclangast \
26	libclangbasic \
27	libclangcodegen \
28	libclangdriver \
29	libclangedit \
30	libclangfrontend \
31	libclangfrontendtool \
32	libclanglex \
33	libclangparse \
34	${_libclangrewriter} \
35	libclangsema \
36	libclangserialization \
37	${_libclangstaticanalyzer} \
38	\
39	libllvmanalysis \
40	libllvmasmparser \
41	libllvmasmprinter \
42	libllvmbitreader \
43	libllvmbitwriter \
44	libllvmcodegen \
45	libllvmcore \
46	libllvminstcombine \
47	libllvminstrumentation \
48	libllvmipa \
49	libllvmipo \
50	libllvmirreader \
51	libllvmlinker \
52	libllvmmc \
53	libllvmmcparser \
54	libllvmobjcarcopts \
55	libllvmobject \
56	libllvmoption \
57	libllvmscalaropts \
58	libllvmselectiondag \
59	libllvmsupport \
60	libllvmtablegen \
61	libllvmtarget \
62	libllvmtransformutils \
63	libllvmvectorize \
64	\
65	libllvmarmasmparser \
66	libllvmarmcodegen \
67	libllvmarmdesc \
68	libllvmarmdisassembler \
69	libllvmarminfo \
70	libllvmarminstprinter \
71	libllvmmipsasmparser \
72	libllvmmipscodegen \
73	libllvmmipsdesc \
74	libllvmmipsdisassembler \
75	libllvmmipsinfo \
76	libllvmmipsinstprinter \
77	libllvmpowerpcasmparser \
78	libllvmpowerpccodegen \
79	libllvmpowerpcdesc \
80	libllvmpowerpcinfo \
81	libllvmpowerpcinstprinter \
82	libllvmx86asmparser \
83	libllvmx86codegen \
84	libllvmx86desc \
85	libllvmx86disassembler \
86	libllvmx86info \
87	libllvmx86instprinter \
88	libllvmx86utils
89
90.if ${MK_CLANG_EXTRAS} != "no"
91SUBDIR+=libllvmdebuginfo
92.endif # MK_CLANG_EXTRAS
93.if ${MK_CLANG_EXTRAS} != "no" || ${MK_LLDB} != "no"
94SUBDIR+=libllvmexecutionengine \
95	libllvminterpreter \
96	libllvmjit \
97	libllvmmcdisassembler \
98	libllvmmcjit \
99	libllvmruntimedyld
100.endif # MK_CLANG_EXTRAS | LLDB
101
102.if !defined(EARLY_BUILD) && ${MK_LLDB} != "no"
103SUBDIR+=liblldb \
104	\
105	liblldbAPI \
106	liblldbBreakpoint \
107	liblldbCommands \
108	liblldbCore \
109	liblldbDataFormatters \
110	liblldbExpression \
111	liblldbHostCommon \
112	liblldbHostFreeBSD \
113	liblldbInterpreter \
114	liblldbSymbol \
115	liblldbTarget \
116	liblldbUtility \
117	\
118	liblldbPluginABISysV_x86_64 \
119	liblldbPluginCXXItaniumABI \
120	liblldbPluginDisassemblerLLVM \
121	liblldbPluginDynamicLoaderStatic \
122	liblldbPluginDynamicLoaderPosixDYLD \
123	liblldbPluginInstructionARM \
124	liblldbPluginObjectContainerBSDArchive \
125	liblldbPluginObjectFileELF \
126	liblldbPluginPlatformFreeBSD \
127	liblldbPluginPlatformGDB \
128	liblldbPluginProcessElfCore \
129	liblldbPluginProcessFreeBSD \
130	liblldbPluginProcessGDBRemote \
131	liblldbPluginProcessPOSIX \
132	liblldbPluginProcessUtility \
133	liblldbPluginSymbolFileDWARF \
134	liblldbPluginSymbolFileSymtab \
135	liblldbPluginSymbolVendorELF \
136	liblldbPluginUnwindAssemblyInstEmulation \
137	liblldbPluginUnwindAssemblyX86
138.endif # !EARLY_BUILD && MK_LLDB
139
140.endif # !make(install)
141
142SUBDIR+= include
143
144.include <bsd.subdir.mk>
145