xref: /freebsd/usr.bin/clang/lldb/Makefile (revision b1f92fa22938fe29ab7e53692ffe0ed7a0ecc4d0)
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	lldbPluginInstructionARM \
50	lldbPluginInstructionARM64 \
51	lldbPluginInstructionMIPS \
52	lldbPluginInstructionMIPS64 \
53	lldbPluginInstrumentationRuntimeAddressSanitizer \
54	lldbPluginJITLoaderGDB \
55	lldbPluginSymbolFileDWARF \
56	lldbPluginSymbolFileSymtab \
57	lldbPluginDynamicLoaderStatic \
58	lldbPluginDynamicLoaderPosixDYLD \
59	lldbPluginMemoryHistoryASan \
60	lldbPluginObjectContainerBSDArchive \
61	lldbPluginObjectFileELF \
62	lldbPluginObjectFileJIT \
63	lldbPluginSymbolVendorELF \
64	lldbPluginPlatformFreeBSD \
65	lldbPluginPlatformGDB \
66	lldbPluginProcessElfCore \
67	lldbPluginProcessFreeBSD \
68	lldbPluginProcessGDBRemote \
69	lldbPluginProcessUtility \
70	lldbPluginProcessPOSIX \
71	lldbPluginProcessFreeBSD \
72	lldbPluginUnwindAssemblyInstEmulation \
73	lldbPluginUnwindAssemblyX86
74
75LDADD+=	-Wl,--start-group
76.for lib in ${LLDB_LIBS}
77DPADD+=	${.OBJDIR}/../../../lib/clang/lib${lib}/lib${lib}.a
78LDADD+=	${.OBJDIR}/../../../lib/clang/lib${lib}/lib${lib}.a
79.endfor
80LDADD+=	-Wl,--end-group
81
82# Clang and LLVM libraries
83LIBDEPS=\
84	clangfrontend \
85	clangdriver \
86	clangserialization \
87	clangcodegen \
88	clangparse \
89	clangsema \
90	clanganalysis \
91	clangedit \
92	clangast \
93	clanglex \
94	clangbasic \
95	\
96	llvmoption \
97	llvmobjcarcopts \
98	llvmlinker \
99	llvmmcjit \
100	llvmruntimedyld \
101	llvmexecutionengine \
102	llvmirreader \
103	llvmipo \
104	llvmvectorize \
105	llvmbitwriter \
106	llvmasmparser \
107	llvmaarch64disassembler \
108	llvmaarch64codegen \
109	llvmaarch64asmparser \
110	llvmaarch64desc \
111	llvmaarch64info \
112	llvmaarch64instprinter \
113	llvmaarch64utils \
114	llvmarmdisassembler \
115	llvmarmcodegen \
116	llvmarmasmparser \
117	llvmarmdesc \
118	llvmarminfo \
119	llvmarminstprinter \
120	llvmmipsdisassembler \
121	llvmmipscodegen \
122	llvmmipsasmparser \
123	llvmmipsdesc \
124	llvmmipsinfo \
125	llvmmipsinstprinter \
126	llvmpowerpcdisassembler \
127	llvmpowerpccodegen \
128	llvmpowerpcasmparser \
129	llvmpowerpcdesc \
130	llvmpowerpcinfo \
131	llvmpowerpcinstprinter \
132	llvmsparcdisassembler \
133	llvmsparccodegen \
134	llvmsparcasmparser \
135	llvmsparcdesc \
136	llvmsparcinfo \
137	llvmsparcinstprinter \
138	llvmx86disassembler \
139	llvmx86asmparser \
140	llvmx86codegen \
141	llvmselectiondag \
142	llvmasmprinter \
143	llvmcodegen \
144	llvmtarget \
145	llvmscalaropts \
146	llvmprofiledata \
147	llvminstcombine \
148	llvmtransformutils \
149	llvmipa \
150	llvmanalysis \
151	llvminstrumentation \
152	llvmx86desc \
153	llvmobject \
154	llvmmcparser \
155	llvmbitreader \
156	llvmmcdisassembler \
157	llvmx86info \
158	llvmx86instprinter \
159	llvmmc \
160	llvmx86utils \
161	llvmcore \
162	llvmsupport
163
164.include "../clang.prog.mk"
165
166LDADD+=	-lpthread
167