Makefile revision 248209
11573Srgrimes# $FreeBSD: head/sys/Makefile 248209 2013-03-12 14:21:52Z bryanv $
21573Srgrimes
31573Srgrimes.include <bsd.own.mk>
41573Srgrimes
51573Srgrimes# The boot loader
61573Srgrimes.if ${MK_BOOT} != "no"
71573SrgrimesSUBDIR=	boot
81573Srgrimes.endif
91573Srgrimes
101573Srgrimes# Directories to include in cscope name file and TAGS.
111573SrgrimesCSCOPEDIRS=	boot bsm cam cddl compat conf contrib crypto ddb dev fs gdb \
121573Srgrimes		geom gnu isa kern libkern modules net net80211 netatalk \
131573Srgrimes		netgraph netinet netinet6 netipsec netipx netnatm \
141573Srgrimes		netsmb nfs nfsclient nfsserver nlm ofed opencrypto \
151573Srgrimes		pci rpc security sys ufs vm xdr xen ${CSCOPE_ARCHDIR}
16148834Sstefanf.if !defined(CSCOPE_ARCHDIR)
171573Srgrimes.if defined(ALL_ARCH)
181573SrgrimesCSCOPE_ARCHDIR = amd64 arm i386 ia64 mips pc98 powerpc sparc64 x86
191573Srgrimes.else
201573SrgrimesCSCOPE_ARCHDIR = ${MACHINE} 
211573Srgrimes.if ${MACHINE} != ${MACHINE_CPUARCH}
221573SrgrimesCSCOPE_ARCHDIR += ${MACHINE_CPUARCH}
231573Srgrimes.endif
241573Srgrimes.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
251573SrgrimesCSCOPE_ARCHDIR += x86
261573Srgrimes.endif
271573Srgrimes.endif
281573Srgrimes.endif
291573Srgrimes
301573Srgrimes# Loadable kernel modules
3184260Sobrien
32237448Spfg.if defined(MODULES_WITH_WORLD)
331573SrgrimesSUBDIR+=modules
341573Srgrimes.endif
351573Srgrimes
361573SrgrimesHTAGSFLAGS+= -at `awk -F= '/^RELEASE *=/{release=$2}; END {print "FreeBSD", release, "kernel"}' < conf/newvers.sh`
371573Srgrimes
3884260Sobrien# You need the devel/cscope port for this.
3984260Sobriencscope: cscope.out
401573Srgrimescscope.out: ${.CURDIR}/cscope.files
411573Srgrimes	cd ${.CURDIR}; cscope -k -buq -p4 -v
421573Srgrimes
431573Srgrimes${.CURDIR}/cscope.files: .PHONY
441573Srgrimes	cd ${.CURDIR}; \
451573Srgrimes		find ${CSCOPEDIRS} -name "*.[chSsly]" -a -type f > ${.TARGET}
461573Srgrimes
471573Srgrimescscope-clean:
481573Srgrimes	rm -f cscope.files cscope.out cscope.in.out cscope.po.out
4984260Sobrien
5084260Sobrien# You need the devel/global and one of editor/emacs* ports for that.
511573SrgrimesTAGS ${.CURDIR}/TAGS: ${.CURDIR}/cscope.files
5284260Sobrien	rm -f ${.CURDIR}/TAGS
5326926Smsmith	cd ${.CURDIR}; xargs etags -a < ${.CURDIR}/cscope.files
541573Srgrimes
551573Srgrimes# You need the textproc/glimpse ports for this.
5684260Sobrienglimpse:
5784260Sobrien.if !exists(${.CURDIR}/.glimpse_exclude)
5884260Sobrien	echo .svn > ${.CURDIR}/.glimpse_exclude
5984260Sobrien	echo /compile/ >> ${.CURDIR}/.glimpse_exclude
601573Srgrimes.endif
611573Srgrimes	cd ${.CURDIR}; glimpseindex -H . -B -f -o .
6284260Sobrien
6384260Sobrienglimpse-clean:
6484260Sobrien	cd ${.CURDIR}; rm -f .glimpse_*
6584260Sobrien
6684260Sobrien.include <bsd.subdir.mk>
6784260Sobrien