xref: /freebsd/usr.bin/Makefile (revision fd1efedc79e2d29a68478fd400a42d59f1b56c7b)
1839f16abSGarrett Wollman#	From: @(#)Makefile	8.3 (Berkeley) 1/7/94
2c3aac50fSPeter Wemm# $FreeBSD$
39b50d902SRodney W. Grimes
4c501e7deSBaptiste Daroussin.include <src.opts.mk>
5e1fe3dbaSRuslan Ermilov
6728fb54dSEd MasteSUBDIR=	alias \
75cd19a3cSGarrett Wollman	apply \
8cba9c8bdSTim J. Robbins	asa \
99a1523bcSDavid E. O'Brien	awk \
10cb7f1224SGary Palmer	banner \
11cb7f1224SGary Palmer	basename \
126eea92a4SDavid E. O'Brien	brandelf \
13cdf63a70SMartin Matuska	bsdcat \
14ba10db99SColin Percival	bsdiff \
15d6a9fd06SDavid E. O'Brien	bzip2 \
16bc366011SDavid E. O'Brien	bzip2recover \
17cb7f1224SGary Palmer	cap_mkdb \
18cb7f1224SGary Palmer	chat \
19cb7f1224SGary Palmer	chpass \
20cb7f1224SGary Palmer	cksum \
21cb7f1224SGary Palmer	cmp \
22cb7f1224SGary Palmer	col \
23cb7f1224SGary Palmer	colrm \
24cb7f1224SGary Palmer	column \
25cb7f1224SGary Palmer	comm \
26cb7f1224SGary Palmer	compress \
27bc72ba9cSJeff Roberson	cpuset \
28ea9e961cSTim J. Robbins	csplit \
29130f4520SKenneth D. Merry	ctlstat \
30cb7f1224SGary Palmer	cut \
31a17665bcSBaptiste Daroussin	diff \
32cb7f1224SGary Palmer	dirname \
33cb7f1224SGary Palmer	du \
3479bfb05bSEd Maste	elfctl \
358237286eSDavid E. O'Brien	elfdump \
36489c66feSJoerg Wunsch	enigma \
37cb7f1224SGary Palmer	env \
38158d2fcdSBenno Rice	etdump \
39cb7f1224SGary Palmer	expand \
40cb7f1224SGary Palmer	false \
41cb7f1224SGary Palmer	fetch \
42cb7f1224SGary Palmer	find \
4307ea9a7cSXin LI	fmt \
44cb7f1224SGary Palmer	fold \
4587bc830fSDima Ruban	fstat \
464aeb1c05SPaul Saab	fsync \
47155c182aSPeter Wemm	gcore \
48cb7f1224SGary Palmer	gencat \
49f5b9907cSEric van Gyzen	getaddrinfo \
50298f4dc3SJake Burkholder	getconf \
51c912a3f7SMaxim Konovalov	getent \
52cb7f1224SGary Palmer	getopt \
53a23d1c70SDavid E. O'Brien	grep \
549a9ea25fSXin LI	gzip \
55cb7f1224SGary Palmer	head \
56cb7f1224SGary Palmer	hexdump \
57cb7f1224SGary Palmer	id \
58c048a83fSBaptiste Daroussin	ident \
59cb7f1224SGary Palmer	ipcrm \
60cb7f1224SGary Palmer	ipcs \
61cb7f1224SGary Palmer	join \
62cb7f1224SGary Palmer	jot \
63cb7f1224SGary Palmer	keylogin \
64cb7f1224SGary Palmer	keylogout \
65cb7f1224SGary Palmer	killall \
66cb7f1224SGary Palmer	ktrace \
67ed7a104fSJake Burkholder	ktrdump \
68cb7f1224SGary Palmer	lam \
69cb7f1224SGary Palmer	lastcomm \
70aaa41712SDoug Rabson	ldd \
719106cde5SBruce Evans	leave \
726f7d2d90SPaul Saab	less \
736f7d2d90SPaul Saab	lessecho \
746f7d2d90SPaul Saab	lesskey \
75cb7f1224SGary Palmer	limits \
7693cdc37dSAlexey Zelkin	locale \
77057ca2d4SBaptiste Daroussin	localedef \
78cb7f1224SGary Palmer	lock \
79cb7f1224SGary Palmer	lockf \
80cb7f1224SGary Palmer	logger \
81cb7f1224SGary Palmer	login \
82bd43dc42SDag-Erling Smørgrav	logins \
83cb7f1224SGary Palmer	logname \
84cb7f1224SGary Palmer	look \
85cb7f1224SGary Palmer	lorder \
86cb7f1224SGary Palmer	lsvfs \
8781ad8388SMartin Matuska	lzmainfo \
88cb7f1224SGary Palmer	m4 \
89cc4842a1SUlrich Spörlein	mandoc \
90cb7f1224SGary Palmer	mesg \
919106cde5SBruce Evans	minigzip \
92a2854cdfSRuslan Ermilov	ministat \
93cb7f1224SGary Palmer	mkdep \
94cb7f1224SGary Palmer	mkfifo \
9581a44173SMarcel Moolenaar	mkimg \
96cb7f1224SGary Palmer	mktemp \
975cf3bf70SMax Khon	mkuzip \
98e4dc55c3SDoug Rabson	mt \
99cb7f1224SGary Palmer	ncal \
100cb7f1224SGary Palmer	netstat \
101776c387aSTim J. Robbins	newgrp \
102cb7f1224SGary Palmer	nfsstat \
103cb7f1224SGary Palmer	nice \
104f2155981SBrian Somers	nl \
105cb7f1224SGary Palmer	nohup \
106cb7f1224SGary Palmer	opieinfo \
107cb7f1224SGary Palmer	opiekey \
108cb7f1224SGary Palmer	opiepasswd \
109cb7f1224SGary Palmer	pagesize \
110cb7f1224SGary Palmer	passwd \
111cb7f1224SGary Palmer	paste \
1122dd076b8SGabor Kovesdan	patch \
113b9f63041STim J. Robbins	pathchk \
1149a3009b8SGeorge V. Neville-Neil	perror \
1155f4592e4SKonstantin Belousov	posixshmcontrol \
116cb7f1224SGary Palmer	pr \
117cb7f1224SGary Palmer	printenv \
118cb7f1224SGary Palmer	printf \
1197402f93eSKonstantin Belousov	proccontrol \
120b59f38b5SRobert Watson	procstat \
1219215669cSBaptiste Daroussin	protect \
1226ec54a57SEdward Tomasz Napierala	rctl \
123cb7f1224SGary Palmer	renice \
1243d222369SConrad Meyer	resizewin \
125cb7f1224SGary Palmer	rev \
1267c7cef72SEd Schouten	revoke \
127cb7f1224SGary Palmer	rpcinfo \
128cb7f1224SGary Palmer	rs \
129cb7f1224SGary Palmer	rup \
130ac0ced90SJeremie Le Hen	ruptime \
131cb7f1224SGary Palmer	rusers \
132cb7f1224SGary Palmer	rwall \
133ac0ced90SJeremie Le Hen	rwho \
134cb7f1224SGary Palmer	script \
13513b5b548SBaptiste Daroussin	sdiff \
136cb7f1224SGary Palmer	sed \
137208987a5SXin LI	seq \
138cb7f1224SGary Palmer	shar \
139cb7f1224SGary Palmer	showmount \
14028bfda34SDag-Erling Smørgrav	sockstat \
141363da138SBaptiste Daroussin	soelim \
14285d7de10SGabor Kovesdan	sort \
143cb7f1224SGary Palmer	split \
144d4d239aeSDoug Barton	stat \
1456486b015SJeremie Le Hen	stdbuf \
1465f8eed2fSEd Maste	strings \
147cb7f1224SGary Palmer	su \
1488df85cf6SDima Ruban	systat \
149743f138eSTim J. Robbins	tabs \
150cb7f1224SGary Palmer	tail \
151e813a37fSTim Kientzle	tar \
152cb7f1224SGary Palmer	tcopy \
153cb7f1224SGary Palmer	tee \
154cb7f1224SGary Palmer	time \
155c501e7deSBaptiste Daroussin	timeout \
156afb5951fSMark Murray	tip \
157cb7f1224SGary Palmer	top \
158cb7f1224SGary Palmer	touch \
159cb7f1224SGary Palmer	tput \
160cb7f1224SGary Palmer	tr \
161cb7f1224SGary Palmer	true \
162edeb84a1SSheldon Hearn	truncate \
163cb7f1224SGary Palmer	tset \
164cb7f1224SGary Palmer	tsort \
165cb7f1224SGary Palmer	tty \
166cb7f1224SGary Palmer	uname \
167cb7f1224SGary Palmer	unexpand \
168cb7f1224SGary Palmer	uniq \
1694c0191c5SRoman Divacky	unzip \
170cb7f1224SGary Palmer	units \
171cb7f1224SGary Palmer	unvis \
172cb7f1224SGary Palmer	uudecode \
173cb7f1224SGary Palmer	uuencode \
174cb7f1224SGary Palmer	vis \
1750600c890SBruce Evans	vmstat \
176cb7f1224SGary Palmer	w \
177cb7f1224SGary Palmer	wall \
178cb7f1224SGary Palmer	wc \
179cb7f1224SGary Palmer	what \
180e9a55423SJohan Karlsson	whereis \
181cb7f1224SGary Palmer	which \
182cb7f1224SGary Palmer	whois \
183cb7f1224SGary Palmer	write \
184cb7f1224SGary Palmer	xargs \
185cb7f1224SGary Palmer	xinstall \
18641019211SMarcel Moolenaar	xo \
18781ad8388SMartin Matuska	xz \
18881ad8388SMartin Matuska	xzdec \
189e2290905SBaptiste Daroussin	yes \
190e2290905SBaptiste Daroussin	zstd
1915c931089SJohn Birrell
192690f477dSSam Leffler# NB: keep these sorted by MK_* knobs
193690f477dSSam Leffler
1943a845236SWarner LoshSUBDIR.${MK_AT}+=	at
1953a845236SWarner LoshSUBDIR.${MK_ATM}+=	atm
1963a845236SWarner LoshSUBDIR.${MK_BLUETOOTH}+=	bluetooth
1973a845236SWarner LoshSUBDIR.${MK_BSD_CPIO}+=	cpio
198*fd1efedcSConrad MeyerSUBDIR.${MK_CALENDAR}+=	calendar
1993a845236SWarner LoshSUBDIR.${MK_CLANG}+=	clang
200f987297fSEd MasteSUBDIR.${MK_DIALOG}+=	dpv
2013a845236SWarner LoshSUBDIR.${MK_EE}+=	ee
2023a845236SWarner LoshSUBDIR.${MK_FILE}+=	file
2033a845236SWarner LoshSUBDIR.${MK_FINGER}+=	finger
2043a845236SWarner LoshSUBDIR.${MK_FTP}+=	ftp
2053a845236SWarner LoshSUBDIR.${MK_GAMES}+=	caesar
2063a845236SWarner LoshSUBDIR.${MK_GAMES}+=	factor
2073a845236SWarner LoshSUBDIR.${MK_GAMES}+=	fortune
2083a845236SWarner LoshSUBDIR.${MK_GAMES}+=	grdc
2093a845236SWarner LoshSUBDIR.${MK_GAMES}+=	morse
2103a845236SWarner LoshSUBDIR.${MK_GAMES}+=	number
2113a845236SWarner LoshSUBDIR.${MK_GAMES}+=	pom
2123a845236SWarner LoshSUBDIR.${MK_GAMES}+=	primes
2133a845236SWarner LoshSUBDIR.${MK_GAMES}+=	random
214a0706eb4SDavid Chisnall.if ${COMPILER_FEATURES:Mc++11}
21558144364SBryan DrewerySUBDIR+=	dtc
21658144364SBryan Drewery.endif
2173a845236SWarner LoshSUBDIR.${MK_HESIOD}+=	hesinfo
2183a845236SWarner LoshSUBDIR.${MK_ICONV}+=	iconv
2193a845236SWarner LoshSUBDIR.${MK_ICONV}+=	mkcsmapper
2203a845236SWarner LoshSUBDIR.${MK_ICONV}+=	mkesdb
2213a845236SWarner LoshSUBDIR.${MK_ISCSI}+=	iscsictl
2223a845236SWarner LoshSUBDIR.${MK_KDUMP}+=	kdump
2233a845236SWarner LoshSUBDIR.${MK_KDUMP}+=	truss
2243a845236SWarner LoshSUBDIR.${MK_KERBEROS_SUPPORT}+=	compile_et
2253a845236SWarner LoshSUBDIR.${MK_LDNS_UTILS}+=	drill
2263a845236SWarner LoshSUBDIR.${MK_LDNS_UTILS}+=	host
227a4330302SBrooks DavisSUBDIR.${MK_LIB32}+=	ldd32
2283a845236SWarner LoshSUBDIR.${MK_LOCATE}+=	locate
229690f477dSSam Leffler# XXX msgs?
2303a845236SWarner LoshSUBDIR.${MK_MAIL}+=	biff
2313a845236SWarner LoshSUBDIR.${MK_MAIL}+=	from
2323a845236SWarner LoshSUBDIR.${MK_MAIL}+=	mail
2333a845236SWarner LoshSUBDIR.${MK_MAIL}+=	msgs
2343a845236SWarner LoshSUBDIR.${MK_MAKE}+=	bmake
2353a845236SWarner LoshSUBDIR.${MK_MAN_UTILS}+=	man
2363a845236SWarner LoshSUBDIR.${MK_NETCAT}+=	nc
2373a845236SWarner LoshSUBDIR.${MK_NIS}+=	ypcat
2383a845236SWarner LoshSUBDIR.${MK_NIS}+=	ypmatch
2393a845236SWarner LoshSUBDIR.${MK_NIS}+=	ypwhich
2403a845236SWarner LoshSUBDIR.${MK_OPENSSH}+=	ssh-copy-id
2413a845236SWarner LoshSUBDIR.${MK_OPENSSL}+=	bc
2423a845236SWarner LoshSUBDIR.${MK_OPENSSL}+=	chkey
2433a845236SWarner LoshSUBDIR.${MK_OPENSSL}+=	dc
2443a845236SWarner LoshSUBDIR.${MK_OPENSSL}+=	newkey
2453a845236SWarner LoshSUBDIR.${MK_QUOTAS}+=	quota
2463a845236SWarner LoshSUBDIR.${MK_SENDMAIL}+=	vacation
2473a845236SWarner LoshSUBDIR.${MK_TALK}+=	talk
2483a845236SWarner LoshSUBDIR.${MK_TELNET}+=	telnet
2493a845236SWarner LoshSUBDIR.${MK_TESTS}+=	tests
2503a845236SWarner LoshSUBDIR.${MK_TEXTPROC}+=	ul
2513a845236SWarner LoshSUBDIR.${MK_TFTP}+=	tftp
2523a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	addr2line
2533a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	ar
2543a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	c89
2553a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	c99
2563a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	ctags
2573a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	cxxfilt
2589b844631SEd MasteSUBDIR.${MK_TOOLCHAIN}+=	objcopy
2593a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	file2c
260e8ab4348SAndrey A. Chernov# ARM64TODO gprof does not build
261e8ab4348SAndrey A. Chernov# RISCVTODO gprof does not build
262467d9484SKristof Provost.if ${MACHINE_ARCH} != "aarch64"
2633a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	gprof
264da713b9eSAndrew Turner.endif
2653a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	indent
2663a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	lex
2673a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	mkstr
2683a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	nm
2693a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	readelf
2703a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	rpcgen
2713a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	unifdef
2723a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	size
2733a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	xstr
2743a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	yacc
2753a845236SWarner LoshSUBDIR.${MK_VI}+=	vi
2763a845236SWarner LoshSUBDIR.${MK_VT}+=	vtfontcvt
2773a845236SWarner LoshSUBDIR.${MK_USB}+=	usbhidaction
2783a845236SWarner LoshSUBDIR.${MK_USB}+=	usbhidctl
2793a845236SWarner LoshSUBDIR.${MK_UTMPX}+=	last
280d74808ddSEd Maste.if ${MK_CXX} != "no"
2813a845236SWarner LoshSUBDIR.${MK_UTMPX}+=	users
2821c052a8cSRuslan Bukin.endif
2833a845236SWarner LoshSUBDIR.${MK_UTMPX}+=	who
2843a845236SWarner LoshSUBDIR.${MK_SVN}+=	svn
2853a845236SWarner LoshSUBDIR.${MK_SVNLITE}+=	svn
286f39bffc6SKonstantin BelousovSUBDIR.${MK_OFED}+=	ofed
287937a2000SPeter Wemm
2889f665e12SBryan Drewery# These are normally only handled for build-tools.
2899f665e12SBryan Drewery.if make(clean*)
2909f665e12SBryan DrewerySUBDIR+=	mkcsmapper_static
2919f665e12SBryan DrewerySUBDIR+=	mkesdb_static
2929f665e12SBryan Drewery.endif
2939f665e12SBryan Drewery
2948cfc8258SWarner Losh.include <bsd.arch.inc.mk>
295d10a8d6cSRuslan Ermilov
29654ff5d73SDimitry AndricSUBDIR_PARALLEL=
29754ff5d73SDimitry Andric
2989b50d902SRodney W. Grimes.include <bsd.subdir.mk>
299