xref: /freebsd/sys/Makefile (revision 2be1a816b9ff69588e55be0a84cbe2a31efc0f2f)
1# $FreeBSD$
2
3.include <bsd.own.mk>
4
5# The boot loader
6.if ${MK_BOOT} != "no"
7SUBDIR=	boot
8.endif
9
10# Directories to include in cscope name file and TAGS.
11CSCOPEDIRS=	boot bsm cam compat conf contrib crypto ddb dev fs gdb geom gnu \
12		i4b isa kern libkern modules net net80211 netatalk netatm \
13		netgraph netinet netinet6 netipsec netipx netnatm netncp \
14		netsmb nfs nfs4client nfsclient nfsserver opencrypto pccard \
15		pci rpc security sys ufs vm ${ARCHDIR}
16
17ARCHDIR	?=	${MACHINE}
18
19# Loadable kernel modules
20
21.if defined(MODULES_WITH_WORLD)
22SUBDIR+=modules
23.endif
24
25HTAGSFLAGS+= -at `awk -F= '/^RELEASE *=/{release=$2}; END {print "FreeBSD", release, "kernel"}' < conf/newvers.sh`
26
27# You need the devel/cscope port for this.
28cscope:	${.CURDIR}/cscopenamefile
29	cd ${.CURDIR}; cscope -k -p4 -i cscopenamefile
30
31${.CURDIR}/cscopenamefile:
32	cd ${.CURDIR}; find ${CSCOPEDIRS} -name "*.[csh]" > ${.TARGET}
33
34# You need the devel/global and one of editor/emacs* ports for that.
35TAGS ${.CURDIR}/TAGS:	${.CURDIR}/cscopenamefile
36	rm -f ${.CURDIR}/TAGS
37	cd ${.CURDIR}; xargs etags -a < ${.CURDIR}/cscopenamefile
38
39.include <bsd.subdir.mk>
40