xref: /freebsd/share/mk/bsd.init.mk (revision 3a970562d7f8b2506f7bcbe378e3c02a408425d7)
1# $FreeBSD$
2
3# The include file <bsd.init.mk> includes <bsd.opts.mk>,
4# ../Makefile.inc and <bsd.own.mk>; this is used at the
5# top of all <bsd.*.mk> files that actually "build something".
6# bsd.opts.mk is included early so Makefile.inc can use the
7# MK_FOO variables.
8
9.if !target(__<bsd.init.mk>__)
10__<bsd.init.mk>__:
11.include <bsd.opts.mk>
12.-include "local.init.mk"
13.if exists(${.CURDIR}/../Makefile.inc)
14.include "${.CURDIR}/../Makefile.inc"
15.endif
16.include <bsd.own.mk>
17.MAIN: all
18beforebuild: .PHONY .NOTMAIN
19.if !defined(_SKIP_BUILD)
20all: beforebuild .WAIT
21.endif
22
23.if ${.MAKE.LEVEL:U1} == 0 && ${BUILD_AT_LEVEL0:Uyes:tl} == "no" && !make(clean*)
24# this tells lib.mk and prog.mk to not actually build anything
25_SKIP_BUILD = not building at level 0
26.endif
27.if ${.MAKE.LEVEL} > 0 && !empty(_SKIP_BUILD)
28.warning ${_SKIP_BUILD}
29.endif
30
31.if ${MK_META_MODE} == "yes"
32.if !exists(/dev/filemon) && \
33    ${UPDATE_DEPENDFILE:Uyes:tl} != "no" && !defined(NO_FILEMON) && \
34    !make(showconfig) && !make(print-dir) && ${.MAKEFLAGS:M-V} == ""
35.warning The filemon module (/dev/filemon) is not loaded.
36.warning META_MODE is less useful for incremental builds without filemon.
37.warning 'kldload filemon' or pass -DNO_FILEMON to suppress this warning.
38.endif
39.endif	# ${MK_META_MODE} == "yes"
40
41.endif	# !target(__<bsd.init.mk>__)
42