xref: /freebsd/share/mk/src.sys.env.mk (revision 70a8349311934f20fcb65e763b8ac80134446796)
1# $FreeBSD$
2
3# early setup only see also src.sys.mk
4
5# make sure this is defined in a consistent manner
6SRCTOP:= ${.PARSEDIR:tA:H:H}
7
8.if ${.CURDIR} == ${SRCTOP}
9RELDIR= .
10RELTOP= .
11.elif ${.CURDIR:M${SRCTOP}/*}
12RELDIR:= ${.CURDIR:S,${SRCTOP}/,,}
13.endif
14RELTOP?= 	${RELDIR:C,[^/]+,..,g}
15RELOBJTOP?=	${RELTOP}
16RELSRCTOP?=	${RELTOP}
17
18# site customizations that do not depend on anything!
19SRC_ENV_CONF?= /etc/src-env.conf
20.if !empty(SRC_ENV_CONF) && !target(_src_env_conf_included_)
21.-include "${SRC_ENV_CONF}"
22_src_env_conf_included_:	.NOTMAIN
23.endif
24
25# Top-level installs should not use meta mode as it may prevent installing
26# based on cookies.
27.if make(*install*) && ${.MAKE.LEVEL} == 0
28META_MODE=	normal
29MK_META_MODE=	no
30.export MK_META_MODE
31.endif
32
33# If we were found via .../share/mk we need to replace that
34# with ${.PARSEDIR:tA} so that we can be found by
35# sub-makes launched from objdir.
36.if ${.MAKEFLAGS:M.../share/mk} != ""
37.MAKEFLAGS:= ${.MAKEFLAGS:S,.../share/mk,${.PARSEDIR:tA},}
38.endif
39.if ${MAKESYSPATH:Uno:M*.../*} != ""
40MAKESYSPATH:= ${MAKESYSPATH:S,.../share/mk,${.PARSEDIR:tA},}
41.export MAKESYSPATH
42.elif empty(MAKESYSPATH)
43MAKESYSPATH:=	${.PARSEDIR:tA}
44.export MAKESYSPATH
45.endif
46
47.include <src.sys.obj.mk>
48