xref: /freebsd/usr.bin/Makefile (revision 728fb54dde073ac97909efd869e4655124a2f401)
1839f16abSGarrett Wollman#	From: @(#)Makefile	8.3 (Berkeley) 1/7/94
2c3aac50fSPeter Wemm# $FreeBSD$
39b50d902SRodney W. Grimes
4c501e7deSBaptiste Daroussin.include <src.opts.mk>
5e1fe3dbaSRuslan Ermilov
60a50d08dSJordan K. Hubbard# XXX MISSING:		deroff diction graph learn plot
7861999b4SBruce Evans#			spell spline struct xsend
8023f0373SGordon Tetlow# XXX Use GNU versions: diff ld patch
973407b34SGarrett Wollman# Moved to secure: bdes
1073407b34SGarrett Wollman#
11cfad5290SMarcel Moolenaar
12*728fb54dSEd MasteSUBDIR=	alias \
135cd19a3cSGarrett Wollman	apply \
14cba9c8bdSTim J. Robbins	asa \
159a1523bcSDavid E. O'Brien	awk \
16cb7f1224SGary Palmer	banner \
17cb7f1224SGary Palmer	basename \
186eea92a4SDavid E. O'Brien	brandelf \
19ba10db99SColin Percival	bsdiff \
20d6a9fd06SDavid E. O'Brien	bzip2 \
21bc366011SDavid E. O'Brien	bzip2recover \
22cb7f1224SGary Palmer	cap_mkdb \
23cb7f1224SGary Palmer	chat \
24cb7f1224SGary Palmer	chpass \
25cb7f1224SGary Palmer	cksum \
26cb7f1224SGary Palmer	cmp \
27cb7f1224SGary Palmer	col \
28cb7f1224SGary Palmer	colldef \
29cb7f1224SGary Palmer	colrm \
30cb7f1224SGary Palmer	column \
31cb7f1224SGary Palmer	comm \
32cb7f1224SGary Palmer	compress \
33bc72ba9cSJeff Roberson	cpuset \
34ea9e961cSTim J. Robbins	csplit \
35130f4520SKenneth D. Merry	ctlstat \
36cb7f1224SGary Palmer	cut \
37cb7f1224SGary Palmer	dirname \
387fc89952SDevin Teske	dpv \
39cb7f1224SGary Palmer	du \
40cbb66355SDavid E. O'Brien	elf2aout \
418237286eSDavid E. O'Brien	elfdump \
42489c66feSJoerg Wunsch	enigma \
43cb7f1224SGary Palmer	env \
44cb7f1224SGary Palmer	expand \
45cb7f1224SGary Palmer	false \
46cb7f1224SGary Palmer	fetch \
47cb7f1224SGary Palmer	find \
4807ea9a7cSXin LI	fmt \
49cb7f1224SGary Palmer	fold \
5087bc830fSDima Ruban	fstat \
514aeb1c05SPaul Saab	fsync \
52155c182aSPeter Wemm	gcore \
53cb7f1224SGary Palmer	gencat \
54298f4dc3SJake Burkholder	getconf \
55c912a3f7SMaxim Konovalov	getent \
56cb7f1224SGary Palmer	getopt \
57a23d1c70SDavid E. O'Brien	grep \
589a9ea25fSXin LI	gzip \
59cb7f1224SGary Palmer	head \
60cb7f1224SGary Palmer	hexdump \
61cb7f1224SGary Palmer	id \
62c048a83fSBaptiste Daroussin	ident \
63cb7f1224SGary Palmer	ipcrm \
64cb7f1224SGary Palmer	ipcs \
65cb7f1224SGary Palmer	join \
66cb7f1224SGary Palmer	jot \
67cb7f1224SGary Palmer	keylogin \
68cb7f1224SGary Palmer	keylogout \
69cb7f1224SGary Palmer	killall \
70cb7f1224SGary Palmer	ktrace \
71ed7a104fSJake Burkholder	ktrdump \
72cb7f1224SGary Palmer	lam \
73cb7f1224SGary Palmer	lastcomm \
74aaa41712SDoug Rabson	ldd \
759106cde5SBruce Evans	leave \
766f7d2d90SPaul Saab	less \
776f7d2d90SPaul Saab	lessecho \
786f7d2d90SPaul Saab	lesskey \
79cb7f1224SGary Palmer	limits \
8093cdc37dSAlexey Zelkin	locale \
81cb7f1224SGary Palmer	lock \
82cb7f1224SGary Palmer	lockf \
83cb7f1224SGary Palmer	logger \
84cb7f1224SGary Palmer	login \
85bd43dc42SDag-Erling Smørgrav	logins \
86cb7f1224SGary Palmer	logname \
87cb7f1224SGary Palmer	look \
88cb7f1224SGary Palmer	lorder \
89cb7f1224SGary Palmer	lsvfs \
9081ad8388SMartin Matuska	lzmainfo \
91cb7f1224SGary Palmer	m4 \
92cc4842a1SUlrich Spörlein	mandoc \
93cb7f1224SGary Palmer	mesg \
949106cde5SBruce Evans	minigzip \
95a2854cdfSRuslan Ermilov	ministat \
96cb7f1224SGary Palmer	mkdep \
97cb7f1224SGary Palmer	mkfifo \
9881a44173SMarcel Moolenaar	mkimg \
99cb7f1224SGary Palmer	mklocale \
100cb7f1224SGary Palmer	mktemp \
101f9b897baSJosh Paetzel	mkulzma \
1025cf3bf70SMax Khon	mkuzip \
103e4dc55c3SDoug Rabson	mt \
104cb7f1224SGary Palmer	ncal \
105cb7f1224SGary Palmer	netstat \
106776c387aSTim J. Robbins	newgrp \
107cb7f1224SGary Palmer	nfsstat \
108cb7f1224SGary Palmer	nice \
109f2155981SBrian Somers	nl \
1106520495aSAdrian Chadd	numactl \
111cb7f1224SGary Palmer	nohup \
112cb7f1224SGary Palmer	opieinfo \
113cb7f1224SGary Palmer	opiekey \
114cb7f1224SGary Palmer	opiepasswd \
115cb7f1224SGary Palmer	pagesize \
116cb7f1224SGary Palmer	passwd \
117cb7f1224SGary Palmer	paste \
1182dd076b8SGabor Kovesdan	patch \
119b9f63041STim J. Robbins	pathchk \
1209a3009b8SGeorge V. Neville-Neil	perror \
121cb7f1224SGary Palmer	pr \
122cb7f1224SGary Palmer	printenv \
123cb7f1224SGary Palmer	printf \
124b59f38b5SRobert Watson	procstat \
1259215669cSBaptiste Daroussin	protect \
1266ec54a57SEdward Tomasz Napierala	rctl \
127cb7f1224SGary Palmer	renice \
128cb7f1224SGary Palmer	rev \
1297c7cef72SEd Schouten	revoke \
130cb7f1224SGary Palmer	rpcinfo \
131cb7f1224SGary Palmer	rs \
132cb7f1224SGary Palmer	rup \
133cb7f1224SGary Palmer	rusers \
134cb7f1224SGary Palmer	rwall \
135cb7f1224SGary Palmer	script \
136cb7f1224SGary Palmer	sed \
13747200bbdSGavin Atkinson	send-pr \
138208987a5SXin LI	seq \
139cb7f1224SGary Palmer	shar \
140cb7f1224SGary Palmer	showmount \
14128bfda34SDag-Erling Smørgrav	sockstat \
142363da138SBaptiste Daroussin	soelim \
14385d7de10SGabor Kovesdan	sort \
144cb7f1224SGary Palmer	split \
145d4d239aeSDoug Barton	stat \
1466486b015SJeremie Le Hen	stdbuf \
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 \
1899138b6e0SEd Maste	yes
1905c931089SJohn Birrell
191690f477dSSam Leffler# NB: keep these sorted by MK_* knobs
192690f477dSSam Leffler
193690f477dSSam Leffler.if ${MK_AT} != "no"
1948cfc8258SWarner LoshSUBDIR+=	at
195690f477dSSam Leffler.endif
196690f477dSSam Leffler
197e1fe3dbaSRuslan Ermilov.if ${MK_ATM} != "no"
1988cfc8258SWarner LoshSUBDIR+=	atm
199d10a8d6cSRuslan Ermilov.endif
200d10a8d6cSRuslan Ermilov
201e1fe3dbaSRuslan Ermilov.if ${MK_BLUETOOTH} != "no"
2028cfc8258SWarner LoshSUBDIR+=	bluetooth
20323d1e148SMaksim Yevmenkin.endif
20423d1e148SMaksim Yevmenkin
2056973701aSDoug Barton.if ${MK_BSD_CPIO} != "no"
2068cfc8258SWarner LoshSUBDIR+=	cpio
2076973701aSDoug Barton.endif
2086973701aSDoug Barton
209e1fe3dbaSRuslan Ermilov.if ${MK_CALENDAR} != "no"
2108cfc8258SWarner LoshSUBDIR+=	calendar
211642268f4SPoul-Henning Kamp.endif
212642268f4SPoul-Henning Kamp
2136513cfc8SRoman Divacky.if ${MK_CLANG} != "no"
214*728fb54dSEd MasteSUBDIR+=	clang
2156513cfc8SRoman Divacky.endif
2166513cfc8SRoman Divacky
21779a86dafSEnji Cooper.if ${MK_EE} != "no"
21879a86dafSEnji CooperSUBDIR+=	ee
21979a86dafSEnji Cooper.endif
22079a86dafSEnji Cooper
22131942939SEd Maste.if ${MK_ELFTOOLCHAIN_TOOLS} != "no"
222*728fb54dSEd MasteSUBDIR+=	addr2line
223*728fb54dSEd MasteSUBDIR+=	cxxfilt
224*728fb54dSEd MasteSUBDIR+=	elfcopy
225*728fb54dSEd MasteSUBDIR+=	nm
226*728fb54dSEd MasteSUBDIR+=	readelf
227*728fb54dSEd MasteSUBDIR+=	size
228*728fb54dSEd MasteSUBDIR+=	strings
22931942939SEd Maste.endif
23031942939SEd Maste
231c7b6816fSEnji Cooper.if ${MK_FILE} != "no"
232c7b6816fSEnji CooperSUBDIR+=	file
233c7b6816fSEnji Cooper.endif
234c7b6816fSEnji Cooper
23511981695SEnji Cooper.if ${MK_FINGER} != "no"
23611981695SEnji CooperSUBDIR+=	finger
23711981695SEnji Cooper.endif
23811981695SEnji Cooper
23911981695SEnji Cooper.if ${MK_FTP} != "no"
24011981695SEnji CooperSUBDIR+=	ftp
24111981695SEnji Cooper.endif
24211981695SEnji Cooper
2438e6ee5a9SWarner Losh.if ${MK_GPL_DTC} != "yes"
2448e6ee5a9SWarner LoshSUBDIR+=	dtc
2458e6ee5a9SWarner Losh.endif
2468e6ee5a9SWarner Losh
247bd51eebfSDavid E. O'Brien.if ${MK_GROFF} != "no"
248bd51eebfSDavid E. O'BrienSUBDIR+=	vgrind
249bd51eebfSDavid E. O'Brien.endif
250bd51eebfSDavid E. O'Brien
251690f477dSSam Leffler.if ${MK_HESIOD} != "no"
2528cfc8258SWarner LoshSUBDIR+=	hesinfo
253690f477dSSam Leffler.endif
254690f477dSSam Leffler
255ad30f8e7SGabor Kovesdan.if ${MK_ICONV} != "no"
256*728fb54dSEd MasteSUBDIR+=	iconv
257*728fb54dSEd MasteSUBDIR+=	mkcsmapper
258*728fb54dSEd MasteSUBDIR+=	mkesdb
259ad30f8e7SGabor Kovesdan.endif
260ad30f8e7SGabor Kovesdan
261b29d6977SEnji Cooper.if ${MK_ISCSI} != "no"
262b29d6977SEnji CooperSUBDIR+=	iscsictl
263b29d6977SEnji Cooper.endif
264b29d6977SEnji Cooper
265e5deeefeSDavid E. O'Brien.if ${MK_KDUMP} != "no"
266e5deeefeSDavid E. O'BrienSUBDIR+=        kdump
267da713b9eSAndrew Turner.if ${MACHINE_ARCH} != "aarch64" # ARM64TODO truss does not build
268e5deeefeSDavid E. O'BrienSUBDIR+=        truss
269e5deeefeSDavid E. O'Brien.endif
270da713b9eSAndrew Turner.endif
271e5deeefeSDavid E. O'Brien
272bd51eebfSDavid E. O'Brien.if ${MK_KERBEROS_SUPPORT} != "no"
273bd51eebfSDavid E. O'BrienSUBDIR+=	compile_et
27478dbe843SMarius Strobl.endif
27578dbe843SMarius Strobl
2769aad2c48SDag-Erling Smørgrav.if ${MK_LDNS_UTILS} != "no"
277fdde88bcSDag-Erling SmørgravSUBDIR+=	drill
2789aad2c48SDag-Erling SmørgravSUBDIR+=	host
2799aad2c48SDag-Erling Smørgrav.endif
2809aad2c48SDag-Erling Smørgrav
281690f477dSSam Leffler.if ${MK_LOCATE} != "no"
2828cfc8258SWarner LoshSUBDIR+=	locate
283690f477dSSam Leffler.endif
284690f477dSSam Leffler
285690f477dSSam Leffler# XXX msgs?
286690f477dSSam Leffler.if ${MK_MAIL} != "no"
2878cfc8258SWarner LoshSUBDIR+=	biff
2888cfc8258SWarner LoshSUBDIR+=	from
2898cfc8258SWarner LoshSUBDIR+=	mail
2908cfc8258SWarner LoshSUBDIR+=	msgs
291690f477dSSam Leffler.endif
292690f477dSSam Leffler
293690f477dSSam Leffler.if ${MK_MAKE} != "no"
294d4d90f10SMarcel MoolenaarSUBDIR+=	bmake
295d4d90f10SMarcel Moolenaar.endif
296f7ab1209SPoul-Henning Kamp
29707e547feSJung-uk Kim.if ${MK_MAN_UTILS} != "no"
298bd51eebfSDavid E. O'BrienSUBDIR+=	catman
2998faa40d1SBaptiste Daroussin.if ${MK_MANDOCDB} == "no"
300*728fb54dSEd MasteSUBDIR+=	makewhatis
3018faa40d1SBaptiste Daroussin.endif
302*728fb54dSEd MasteSUBDIR+=	man
30307e547feSJung-uk Kim.endif
30407e547feSJung-uk Kim
305e1fe3dbaSRuslan Ermilov.if ${MK_NETCAT} != "no"
3068cfc8258SWarner LoshSUBDIR+=	nc
3074457bf03SXin LI.endif
3084457bf03SXin LI
309e1fe3dbaSRuslan Ermilov.if ${MK_NIS} != "no"
3108cfc8258SWarner LoshSUBDIR+=	ypcat
3118cfc8258SWarner LoshSUBDIR+=	ypmatch
3128cfc8258SWarner LoshSUBDIR+=	ypwhich
3136c58990dSBjoern A. Zeeb.endif
3146c58990dSBjoern A. Zeeb
315b4634967SEitan Adler.if ${MK_OPENSSH} != "no"
316b4634967SEitan AdlerSUBDIR+=	ssh-copy-id
317b4634967SEitan Adler.endif
318b4634967SEitan Adler
319bd51eebfSDavid E. O'Brien.if ${MK_OPENSSL} != "no"
320bd51eebfSDavid E. O'BrienSUBDIR+=	bc
321bd51eebfSDavid E. O'BrienSUBDIR+=	chkey
322bd51eebfSDavid E. O'BrienSUBDIR+=	dc
323bd51eebfSDavid E. O'BrienSUBDIR+=	newkey
324bd51eebfSDavid E. O'Brien.endif
325bd51eebfSDavid E. O'Brien
326690f477dSSam Leffler.if ${MK_QUOTAS} != "no"
3278cfc8258SWarner LoshSUBDIR+=	quota
328690f477dSSam Leffler.endif
329690f477dSSam Leffler
330e1fe3dbaSRuslan Ermilov.if ${MK_RCMDS} != "no"
3318cfc8258SWarner LoshSUBDIR+=	rlogin
3328cfc8258SWarner LoshSUBDIR+=	rsh
3338cfc8258SWarner LoshSUBDIR+=	ruptime
3348cfc8258SWarner LoshSUBDIR+=	rwho
335c71158d4STom Rhodes.endif
336c71158d4STom Rhodes
337e1fe3dbaSRuslan Ermilov.if ${MK_SENDMAIL} != "no"
3388cfc8258SWarner LoshSUBDIR+=	vacation
339d10a8d6cSRuslan Ermilov.endif
340d10a8d6cSRuslan Ermilov
3413f802165SEnji Cooper.if ${MK_TALK} != "no"
3423f802165SEnji CooperSUBDIR+=	talk
3433f802165SEnji Cooper.endif
3443f802165SEnji Cooper
345690f477dSSam Leffler.if ${MK_TELNET} != "no"
3468cfc8258SWarner LoshSUBDIR+=	telnet
347690f477dSSam Leffler.endif
348690f477dSSam Leffler
349e01d128aSJulio Merino.if ${MK_TESTS} != "no"
350*728fb54dSEd MasteSUBDIR+=	tests
351e01d128aSJulio Merino.endif
352e01d128aSJulio Merino
353690f477dSSam Leffler.if ${MK_TEXTPROC} != "no"
3548cfc8258SWarner LoshSUBDIR+=	checknr
3558cfc8258SWarner LoshSUBDIR+=	colcrt
3568cfc8258SWarner LoshSUBDIR+=	ul
357690f477dSSam Leffler.endif
358690f477dSSam Leffler
35911981695SEnji Cooper.if ${MK_TFTP} != "no"
36011981695SEnji CooperSUBDIR+=	tftp
36111981695SEnji Cooper.endif
36211981695SEnji Cooper
363e1fe3dbaSRuslan Ermilov.if ${MK_TOOLCHAIN} != "no"
3648cfc8258SWarner LoshSUBDIR+=	ar
3658cfc8258SWarner LoshSUBDIR+=	c89
3668cfc8258SWarner LoshSUBDIR+=	c99
3678cfc8258SWarner LoshSUBDIR+=	ctags
3688cfc8258SWarner LoshSUBDIR+=	file2c
369da713b9eSAndrew Turner.if ${MACHINE_ARCH} != "aarch64" # ARM64TODO gprof does not build
3708cfc8258SWarner LoshSUBDIR+=	gprof
371da713b9eSAndrew Turner.endif
3728cfc8258SWarner LoshSUBDIR+=	indent
3738cfc8258SWarner LoshSUBDIR+=	lex
3748cfc8258SWarner LoshSUBDIR+=	mkstr
3758cfc8258SWarner LoshSUBDIR+=	rpcgen
3768cfc8258SWarner LoshSUBDIR+=	unifdef
377da713b9eSAndrew Turner.if ${MACHINE_ARCH} != "aarch64" # ARM64TODO xlint does not build
3788cfc8258SWarner LoshSUBDIR+=	xlint
379da713b9eSAndrew Turner.endif
3808cfc8258SWarner LoshSUBDIR+=	xstr
3818cfc8258SWarner LoshSUBDIR+=	yacc
382d10a8d6cSRuslan Ermilov.endif
383d10a8d6cSRuslan Ermilov
384c501e7deSBaptiste Daroussin.if ${MK_VI} != "no"
385c501e7deSBaptiste DaroussinSUBDIR+=	vi
386c501e7deSBaptiste Daroussin.endif
387c501e7deSBaptiste Daroussin
388824a9093SEd Maste.if ${MK_VT} != "no"
389b410b62cSEd MasteSUBDIR+=	vtfontcvt
390b410b62cSEd Maste.endif
391b410b62cSEd Maste
392e1fe3dbaSRuslan Ermilov.if ${MK_USB} != "no"
3938cfc8258SWarner LoshSUBDIR+=	usbhidaction
3948cfc8258SWarner LoshSUBDIR+=	usbhidctl
395d10a8d6cSRuslan Ermilov.endif
396d10a8d6cSRuslan Ermilov
3979f0c9022SEd Schouten.if ${MK_UTMPX} != "no"
3989f0c9022SEd SchoutenSUBDIR+=	last
3999f0c9022SEd SchoutenSUBDIR+=	users
4009f0c9022SEd SchoutenSUBDIR+=	who
4019f0c9022SEd Schouten.endif
4029f0c9022SEd Schouten
403937a2000SPeter Wemm.if ${MK_SVN} == "yes" || ${MK_SVNLITE} == "yes"
404937a2000SPeter WemmSUBDIR+=	svn
405937a2000SPeter Wemm.endif
406937a2000SPeter Wemm
4078cfc8258SWarner Losh.include <bsd.arch.inc.mk>
408d10a8d6cSRuslan Ermilov
4098cfc8258SWarner LoshSUBDIR:=	${SUBDIR:O}
41069618fcfSPyun YongHyeon
41154ff5d73SDimitry AndricSUBDIR_PARALLEL=
41254ff5d73SDimitry Andric
4139b50d902SRodney W. Grimes.include <bsd.subdir.mk>
414