xref: /freebsd/usr.bin/clang/Makefile (revision efe014e6b177ba1b0d70f7df751f5066d4eafe9b)
1# $FreeBSD$
2
3.include <src.opts.mk>
4
5.if ${MK_CLANG} != "no"
6SUBDIR+=	clang
7.endif
8
9.if !defined(TOOLS_PREFIX)
10# LLVM binutils are needed to support features such as LTO, so we build them
11# by default if clang is enabled. If MK_LLVM_BINUTILS is set, we also use them
12# as the default binutils (ar,nm,addr2line, etc.).
13.if ${MK_CLANG} != "no" || ${MK_LLVM_BINUTILS} != "no"
14SUBDIR+=	llvm-ar
15SUBDIR+=	llvm-nm
16SUBDIR+=	llvm-objcopy
17SUBDIR+=	llvm-objdump
18SUBDIR+=	llvm-size
19SUBDIR+=	llvm-strings
20SUBDIR+=	llvm-symbolizer
21.endif
22
23.if ${MK_LLVM_BINUTILS} != "no" || ${MK_LLVM_CXXFILT} != "no"
24SUBDIR+=	llvm-cxxfilt
25.endif
26
27.if ${MK_CLANG_EXTRAS} != "no"
28SUBDIR+=	bugpoint
29SUBDIR+=	llc
30SUBDIR+=	lli
31SUBDIR+=	llvm-as
32SUBDIR+=	llvm-bcanalyzer
33SUBDIR+=	llvm-cxxdump
34SUBDIR+=	llvm-diff
35SUBDIR+=	llvm-dis
36SUBDIR+=	llvm-dwarfdump
37SUBDIR+=	llvm-dwp
38SUBDIR+=	llvm-extract
39SUBDIR+=	llvm-link
40SUBDIR+=	llvm-lto
41SUBDIR+=	llvm-lto2
42SUBDIR+=	llvm-mc
43SUBDIR+=	llvm-mca
44SUBDIR+=	llvm-modextract
45SUBDIR+=	llvm-pdbutil
46SUBDIR+=	llvm-rtdyld
47SUBDIR+=	llvm-xray
48SUBDIR+=	opt
49.endif
50
51.if ${MK_CLANG_EXTRAS} != "no" || ${MK_CLANG_FORMAT} != "no"
52SUBDIR+=	clang-format
53.endif
54
55.if ${MK_LLD} != "no"
56SUBDIR+=	lld
57.endif
58.if ${MK_LLDB} != "no"
59SUBDIR+=	lldb
60SUBDIR+=	lldb-server
61.endif
62.if ${MK_LLVM_COV} != "no"
63SUBDIR+=	llvm-cov
64SUBDIR+=	llvm-profdata
65.endif
66.endif # TOOLS_PREFIX
67
68SUBDIR_PARALLEL=
69
70.include <bsd.subdir.mk>
71