xref: /freebsd/usr.bin/clang/lldb/Makefile (revision 0a97e597)
1# $FreeBSD$
2
3.include <bsd.own.mk>
4
5PROG_CXX=lldb
6
7LLDB_SRCS=${.CURDIR}/../../../contrib/llvm/tools/lldb
8
9CFLAGS+=	-I${LLDB_SRCS}/include
10CXXFLAGS+=	-std=c++11
11
12SRCDIR=	tools/lldb/tools/driver
13SRCS=	Driver.cpp \
14	Platform.cpp
15
16# Man page directory
17.PATH: ${LLDB_SRCS}/docs
18
19LIBADD=	edit panel ncursesw execinfo z
20
21LLDB_LIBS=\
22	lldb \
23	\
24	lldbAPI \
25	lldbBreakpoint \
26	lldbCommands \
27	lldbCore \
28	lldbDataFormatters \
29	lldbExpression \
30	lldbHostFreeBSD \
31	lldbHostCommon \
32	lldbHostPOSIX \
33	lldbInitialization \
34	lldbInterpreter \
35	lldbSymbol \
36	lldbTarget \
37	lldbUtility \
38	\
39	lldbPluginABISysV_arm \
40	lldbPluginABISysV_arm64 \
41	lldbPluginABISysV_i386 \
42	lldbPluginABISysV_mips \
43	lldbPluginABISysV_mips64 \
44	lldbPluginABISysV_ppc \
45	lldbPluginABISysV_ppc64 \
46	lldbPluginABISysV_x86_64 \
47	lldbPluginCXXItaniumABI \
48	lldbPluginDisassemblerLLVM \
49	lldbPluginExpressionParserClang \
50	lldbPluginExpressionParserGo \
51	lldbPluginInstructionARM \
52	lldbPluginInstructionARM64 \
53	lldbPluginInstructionMIPS \
54	lldbPluginInstructionMIPS64 \
55	lldbPluginInstrumentationRuntimeAddressSanitizer \
56	lldbPluginJITLoaderGDB \
57	lldbPluginLanguageCPlusPlus \
58	lldbPluginLanguageObjC \
59	lldbPluginSymbolFileDWARF \
60	lldbPluginSymbolFileSymtab \
61	lldbPluginDynamicLoaderStatic \
62	lldbPluginDynamicLoaderPosixDYLD \
63	lldbPluginMemoryHistoryASan \
64	lldbPluginObjectContainerBSDArchive \
65	lldbPluginObjectFileELF \
66	lldbPluginObjectFileJIT \
67	lldbPluginScriptInterpreterNone \
68	lldbPluginSymbolVendorELF \
69	lldbPluginPlatformFreeBSD \
70	lldbPluginPlatformGDB \
71	lldbPluginProcessElfCore \
72	lldbPluginProcessFreeBSD \
73	lldbPluginProcessGDBRemote \
74	lldbPluginProcessUtility \
75	lldbPluginProcessPOSIX \
76	lldbPluginProcessFreeBSD \
77	lldbPluginUnwindAssemblyInstEmulation \
78	lldbPluginUnwindAssemblyX86
79
80LDADD+=	-Wl,--start-group
81.for lib in ${LLDB_LIBS}
82DPADD+=	${.OBJDIR}/../../../lib/clang/lib${lib}/lib${lib}.a
83LDADD+=	${.OBJDIR}/../../../lib/clang/lib${lib}/lib${lib}.a
84.endfor
85LDADD+=	-Wl,--end-group
86
87# Clang and LLVM libraries
88LIBDEPS=\
89	clangfrontend \
90	clangdriver \
91	clangserialization \
92	clangcodegen \
93	clangparse \
94	clangsema \
95	clanganalysis \
96	clangedit \
97	clangast \
98	clanglex \
99	clangbasic \
100	\
101	llvmoption \
102	llvmobjcarcopts \
103	llvmlinker \
104	llvmmcjit \
105	llvmruntimedyld \
106	llvmexecutionengine \
107	llvmirreader \
108	llvmipo \
109	llvmvectorize \
110	llvmbitwriter \
111	llvmasmparser \
112	llvmaarch64disassembler \
113	llvmaarch64codegen \
114	llvmaarch64asmparser \
115	llvmaarch64desc \
116	llvmaarch64info \
117	llvmaarch64asmprinter \
118	llvmaarch64utils \
119	llvmarmdisassembler \
120	llvmarmcodegen \
121	llvmarmasmparser \
122	llvmarmdesc \
123	llvmarminfo \
124	llvmarmasmprinter \
125	llvmmipsdisassembler \
126	llvmmipscodegen \
127	llvmmipsasmparser \
128	llvmmipsdesc \
129	llvmmipsinfo \
130	llvmmipsasmprinter \
131	llvmpowerpcdisassembler \
132	llvmpowerpccodegen \
133	llvmpowerpcasmparser \
134	llvmpowerpcdesc \
135	llvmpowerpcinfo \
136	llvmpowerpcasmprinter \
137	llvmsparcdisassembler \
138	llvmsparccodegen \
139	llvmsparcasmparser \
140	llvmsparcdesc \
141	llvmsparcinfo \
142	llvmsparcasmprinter \
143	llvmx86disassembler \
144	llvmx86asmparser \
145	llvmx86codegen \
146	llvmselectiondag \
147	llvmasmprinter \
148	llvmcodegen \
149	llvmtarget \
150	llvmscalaropts \
151	llvmprofiledata \
152	llvminstcombine \
153	llvmtransformutils \
154	llvmanalysis \
155	llvminstrumentation \
156	llvmx86desc \
157	llvmobject \
158	llvmmcparser \
159	llvmbitreader \
160	llvmmcdisassembler \
161	llvmx86info \
162	llvmx86asmprinter \
163	llvmmc \
164	llvmx86utils \
165	llvmcore \
166	llvmsupport
167
168LIBADD+=	pthread
169
170.include "../clang.prog.mk"
171