xref: /freebsd-12.1/usr.bin/Makefile (revision a56295ec)
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 \
23dee69ea5SBaptiste Daroussin	colldef \
24cb7f1224SGary Palmer	colrm \
25cb7f1224SGary Palmer	column \
26cb7f1224SGary Palmer	comm \
27cb7f1224SGary Palmer	compress \
28bc72ba9cSJeff Roberson	cpuset \
29ea9e961cSTim J. Robbins	csplit \
30130f4520SKenneth D. Merry	ctlstat \
31cb7f1224SGary Palmer	cut \
32a17665bcSBaptiste Daroussin	diff \
33cb7f1224SGary Palmer	dirname \
34cb7f1224SGary Palmer	du \
35cbb66355SDavid E. O'Brien	elf2aout \
368237286eSDavid E. O'Brien	elfdump \
37489c66feSJoerg Wunsch	enigma \
38cb7f1224SGary Palmer	env \
39158d2fcdSBenno Rice	etdump \
40cb7f1224SGary Palmer	expand \
41cb7f1224SGary Palmer	false \
42cb7f1224SGary Palmer	fetch \
43cb7f1224SGary Palmer	find \
4407ea9a7cSXin LI	fmt \
45cb7f1224SGary Palmer	fold \
4687bc830fSDima Ruban	fstat \
474aeb1c05SPaul Saab	fsync \
48155c182aSPeter Wemm	gcore \
49cb7f1224SGary Palmer	gencat \
50f5b9907cSEric van Gyzen	getaddrinfo \
51298f4dc3SJake Burkholder	getconf \
52c912a3f7SMaxim Konovalov	getent \
53cb7f1224SGary Palmer	getopt \
54a23d1c70SDavid E. O'Brien	grep \
559a9ea25fSXin LI	gzip \
56cb7f1224SGary Palmer	head \
57cb7f1224SGary Palmer	hexdump \
58cb7f1224SGary Palmer	id \
59c048a83fSBaptiste Daroussin	ident \
60cb7f1224SGary Palmer	ipcrm \
61cb7f1224SGary Palmer	ipcs \
62cb7f1224SGary Palmer	join \
63cb7f1224SGary Palmer	jot \
64cb7f1224SGary Palmer	keylogin \
65cb7f1224SGary Palmer	keylogout \
66cb7f1224SGary Palmer	killall \
67cb7f1224SGary Palmer	ktrace \
68ed7a104fSJake Burkholder	ktrdump \
69cb7f1224SGary Palmer	lam \
70cb7f1224SGary Palmer	lastcomm \
71aaa41712SDoug Rabson	ldd \
729106cde5SBruce Evans	leave \
736f7d2d90SPaul Saab	less \
746f7d2d90SPaul Saab	lessecho \
756f7d2d90SPaul Saab	lesskey \
76cb7f1224SGary Palmer	limits \
7793cdc37dSAlexey Zelkin	locale \
78057ca2d4SBaptiste Daroussin	localedef \
79cb7f1224SGary Palmer	lock \
80cb7f1224SGary Palmer	lockf \
81cb7f1224SGary Palmer	logger \
82cb7f1224SGary Palmer	login \
83bd43dc42SDag-Erling Smørgrav	logins \
84cb7f1224SGary Palmer	logname \
85cb7f1224SGary Palmer	look \
86cb7f1224SGary Palmer	lorder \
87cb7f1224SGary Palmer	lsvfs \
8881ad8388SMartin Matuska	lzmainfo \
89cb7f1224SGary Palmer	m4 \
90cc4842a1SUlrich Spörlein	mandoc \
91cb7f1224SGary Palmer	mesg \
929106cde5SBruce Evans	minigzip \
93a2854cdfSRuslan Ermilov	ministat \
94cb7f1224SGary Palmer	mkdep \
95cb7f1224SGary Palmer	mkfifo \
9681a44173SMarcel Moolenaar	mkimg \
97dee69ea5SBaptiste Daroussin	mklocale \
98cb7f1224SGary Palmer	mktemp \
995cf3bf70SMax Khon	mkuzip \
100e4dc55c3SDoug Rabson	mt \
101cb7f1224SGary Palmer	ncal \
102cb7f1224SGary Palmer	netstat \
103776c387aSTim J. Robbins	newgrp \
104cb7f1224SGary Palmer	nfsstat \
105cb7f1224SGary Palmer	nice \
106f2155981SBrian Somers	nl \
107cb7f1224SGary Palmer	nohup \
108cb7f1224SGary Palmer	opieinfo \
109cb7f1224SGary Palmer	opiekey \
110cb7f1224SGary Palmer	opiepasswd \
111cb7f1224SGary Palmer	pagesize \
112cb7f1224SGary Palmer	passwd \
113cb7f1224SGary Palmer	paste \
1142dd076b8SGabor Kovesdan	patch \
115b9f63041STim J. Robbins	pathchk \
1169a3009b8SGeorge V. Neville-Neil	perror \
117*a56295ecSKonstantin Belousov	posixshmcontrol \
118cb7f1224SGary Palmer	pr \
119cb7f1224SGary Palmer	printenv \
120cb7f1224SGary Palmer	printf \
1217402f93eSKonstantin Belousov	proccontrol \
122b59f38b5SRobert Watson	procstat \
1239215669cSBaptiste Daroussin	protect \
1246ec54a57SEdward Tomasz Napierala	rctl \
125cb7f1224SGary Palmer	renice \
1263d222369SConrad Meyer	resizewin \
127cb7f1224SGary Palmer	rev \
1287c7cef72SEd Schouten	revoke \
129cb7f1224SGary Palmer	rpcinfo \
130cb7f1224SGary Palmer	rs \
131cb7f1224SGary Palmer	rup \
132ac0ced90SJeremie Le Hen	ruptime \
133cb7f1224SGary Palmer	rusers \
134cb7f1224SGary Palmer	rwall \
135ac0ced90SJeremie Le Hen	rwho \
136cb7f1224SGary Palmer	script \
13713b5b548SBaptiste Daroussin	sdiff \
138cb7f1224SGary Palmer	sed \
139208987a5SXin LI	seq \
140cb7f1224SGary Palmer	shar \
141cb7f1224SGary Palmer	showmount \
14228bfda34SDag-Erling Smørgrav	sockstat \
143363da138SBaptiste Daroussin	soelim \
14485d7de10SGabor Kovesdan	sort \
145cb7f1224SGary Palmer	split \
146d4d239aeSDoug Barton	stat \
1476486b015SJeremie Le Hen	stdbuf \
1485f8eed2fSEd Maste	strings \
149cb7f1224SGary Palmer	su \
1508df85cf6SDima Ruban	systat \
151743f138eSTim J. Robbins	tabs \
152cb7f1224SGary Palmer	tail \
153e813a37fSTim Kientzle	tar \
154cb7f1224SGary Palmer	tcopy \
155cb7f1224SGary Palmer	tee \
156cb7f1224SGary Palmer	time \
157c501e7deSBaptiste Daroussin	timeout \
158afb5951fSMark Murray	tip \
159cb7f1224SGary Palmer	top \
160cb7f1224SGary Palmer	touch \
161cb7f1224SGary Palmer	tput \
162cb7f1224SGary Palmer	tr \
163cb7f1224SGary Palmer	true \
164edeb84a1SSheldon Hearn	truncate \
165cb7f1224SGary Palmer	tset \
166cb7f1224SGary Palmer	tsort \
167cb7f1224SGary Palmer	tty \
168cb7f1224SGary Palmer	uname \
169cb7f1224SGary Palmer	unexpand \
170cb7f1224SGary Palmer	uniq \
1714c0191c5SRoman Divacky	unzip \
172cb7f1224SGary Palmer	units \
173cb7f1224SGary Palmer	unvis \
174cb7f1224SGary Palmer	uudecode \
175cb7f1224SGary Palmer	uuencode \
176cb7f1224SGary Palmer	vis \
1770600c890SBruce Evans	vmstat \
178cb7f1224SGary Palmer	w \
179cb7f1224SGary Palmer	wall \
180cb7f1224SGary Palmer	wc \
181cb7f1224SGary Palmer	what \
182e9a55423SJohan Karlsson	whereis \
183cb7f1224SGary Palmer	which \
184cb7f1224SGary Palmer	whois \
185cb7f1224SGary Palmer	write \
186cb7f1224SGary Palmer	xargs \
187cb7f1224SGary Palmer	xinstall \
18841019211SMarcel Moolenaar	xo \
18981ad8388SMartin Matuska	xz \
19081ad8388SMartin Matuska	xzdec \
191e2290905SBaptiste Daroussin	yes \
192e2290905SBaptiste Daroussin	zstd
1935c931089SJohn Birrell
194690f477dSSam Leffler# NB: keep these sorted by MK_* knobs
195690f477dSSam Leffler
1963a845236SWarner LoshSUBDIR.${MK_AT}+=	at
1973a845236SWarner LoshSUBDIR.${MK_ATM}+=	atm
1983a845236SWarner LoshSUBDIR.${MK_BLUETOOTH}+=	bluetooth
1993a845236SWarner LoshSUBDIR.${MK_BSD_CPIO}+=	cpio
2003a845236SWarner LoshSUBDIR.${MK_CALENDAR}+=	calendar
2013a845236SWarner LoshSUBDIR.${MK_CLANG}+=	clang
202f987297fSEd MasteSUBDIR.${MK_DIALOG}+=	dpv
2033a845236SWarner LoshSUBDIR.${MK_EE}+=	ee
2043a845236SWarner LoshSUBDIR.${MK_FILE}+=	file
2053a845236SWarner LoshSUBDIR.${MK_FINGER}+=	finger
2063a845236SWarner LoshSUBDIR.${MK_FTP}+=	ftp
2073a845236SWarner LoshSUBDIR.${MK_GAMES}+=	caesar
2083a845236SWarner LoshSUBDIR.${MK_GAMES}+=	factor
2093a845236SWarner LoshSUBDIR.${MK_GAMES}+=	fortune
2103a845236SWarner LoshSUBDIR.${MK_GAMES}+=	grdc
2113a845236SWarner LoshSUBDIR.${MK_GAMES}+=	morse
2123a845236SWarner LoshSUBDIR.${MK_GAMES}+=	number
2133a845236SWarner LoshSUBDIR.${MK_GAMES}+=	pom
2143a845236SWarner LoshSUBDIR.${MK_GAMES}+=	primes
2153a845236SWarner LoshSUBDIR.${MK_GAMES}+=	random
21658144364SBryan Drewery.if ${MK_GPL_DTC} != "yes"
217a0706eb4SDavid Chisnall.if ${COMPILER_FEATURES:Mc++11}
21858144364SBryan DrewerySUBDIR+=	dtc
21958144364SBryan Drewery.endif
220a0706eb4SDavid Chisnall.endif
2213a845236SWarner LoshSUBDIR.${MK_HESIOD}+=	hesinfo
2223a845236SWarner LoshSUBDIR.${MK_ICONV}+=	iconv
2233a845236SWarner LoshSUBDIR.${MK_ICONV}+=	mkcsmapper
2243a845236SWarner LoshSUBDIR.${MK_ICONV}+=	mkesdb
2253a845236SWarner LoshSUBDIR.${MK_ISCSI}+=	iscsictl
2263a845236SWarner LoshSUBDIR.${MK_KDUMP}+=	kdump
2273a845236SWarner LoshSUBDIR.${MK_KDUMP}+=	truss
2283a845236SWarner LoshSUBDIR.${MK_KERBEROS_SUPPORT}+=	compile_et
2293a845236SWarner LoshSUBDIR.${MK_LDNS_UTILS}+=	drill
2303a845236SWarner LoshSUBDIR.${MK_LDNS_UTILS}+=	host
2313a845236SWarner LoshSUBDIR.${MK_LOCATE}+=	locate
232690f477dSSam Leffler# XXX msgs?
2333a845236SWarner LoshSUBDIR.${MK_MAIL}+=	biff
2343a845236SWarner LoshSUBDIR.${MK_MAIL}+=	from
2353a845236SWarner LoshSUBDIR.${MK_MAIL}+=	mail
2363a845236SWarner LoshSUBDIR.${MK_MAIL}+=	msgs
2373a845236SWarner LoshSUBDIR.${MK_MAKE}+=	bmake
2383a845236SWarner LoshSUBDIR.${MK_MAN_UTILS}+=	man
2393a845236SWarner LoshSUBDIR.${MK_NETCAT}+=	nc
2403a845236SWarner LoshSUBDIR.${MK_NIS}+=	ypcat
2413a845236SWarner LoshSUBDIR.${MK_NIS}+=	ypmatch
2423a845236SWarner LoshSUBDIR.${MK_NIS}+=	ypwhich
2433a845236SWarner LoshSUBDIR.${MK_OPENSSH}+=	ssh-copy-id
2443a845236SWarner LoshSUBDIR.${MK_OPENSSL}+=	bc
2453a845236SWarner LoshSUBDIR.${MK_OPENSSL}+=	chkey
2463a845236SWarner LoshSUBDIR.${MK_OPENSSL}+=	dc
2473a845236SWarner LoshSUBDIR.${MK_OPENSSL}+=	newkey
2483a845236SWarner LoshSUBDIR.${MK_QUOTAS}+=	quota
2493a845236SWarner LoshSUBDIR.${MK_SENDMAIL}+=	vacation
2503a845236SWarner LoshSUBDIR.${MK_TALK}+=	talk
2513a845236SWarner LoshSUBDIR.${MK_TELNET}+=	telnet
2523a845236SWarner LoshSUBDIR.${MK_TESTS}+=	tests
2533a845236SWarner LoshSUBDIR.${MK_TEXTPROC}+=	ul
2543a845236SWarner LoshSUBDIR.${MK_TFTP}+=	tftp
2553a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	addr2line
2563a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	ar
2573a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	c89
2583a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	c99
2593a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	ctags
2603a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	cxxfilt
2619b844631SEd MasteSUBDIR.${MK_TOOLCHAIN}+=	objcopy
2623a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	file2c
263e8ab4348SAndrey A. Chernov# ARM64TODO gprof does not build
264e8ab4348SAndrey A. Chernov# RISCVTODO gprof does not build
265e8ab4348SAndrey A. Chernov.if ${MACHINE_ARCH} != "aarch64" && ${MACHINE_CPUARCH} != "riscv"
2663a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	gprof
267da713b9eSAndrew Turner.endif
2683a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	indent
2693a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	lex
2703a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	mkstr
2713a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	nm
2723a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	readelf
2733a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	rpcgen
2743a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	unifdef
2753a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	size
2763a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	xstr
2773a845236SWarner LoshSUBDIR.${MK_TOOLCHAIN}+=	yacc
2783a845236SWarner LoshSUBDIR.${MK_VI}+=	vi
2793a845236SWarner LoshSUBDIR.${MK_VT}+=	vtfontcvt
2803a845236SWarner LoshSUBDIR.${MK_USB}+=	usbhidaction
2813a845236SWarner LoshSUBDIR.${MK_USB}+=	usbhidctl
2823a845236SWarner LoshSUBDIR.${MK_UTMPX}+=	last
283d74808ddSEd Maste.if ${MK_CXX} != "no"
2843a845236SWarner LoshSUBDIR.${MK_UTMPX}+=	users
2851c052a8cSRuslan Bukin.endif
2863a845236SWarner LoshSUBDIR.${MK_UTMPX}+=	who
2873a845236SWarner LoshSUBDIR.${MK_SVN}+=	svn
2883a845236SWarner LoshSUBDIR.${MK_SVNLITE}+=	svn
289f39bffc6SKonstantin BelousovSUBDIR.${MK_OFED}+=	ofed
290937a2000SPeter Wemm
2919f665e12SBryan Drewery# These are normally only handled for build-tools.
2929f665e12SBryan Drewery.if make(clean*)
2939f665e12SBryan DrewerySUBDIR+=	mkcsmapper_static
2949f665e12SBryan DrewerySUBDIR+=	mkesdb_static
2959f665e12SBryan Drewery.endif
2969f665e12SBryan Drewery
2978cfc8258SWarner Losh.include <bsd.arch.inc.mk>
298d10a8d6cSRuslan Ermilov
29954ff5d73SDimitry AndricSUBDIR_PARALLEL=
30054ff5d73SDimitry Andric
3019b50d902SRodney W. Grimes.include <bsd.subdir.mk>
302