WITH_META_MODE: Enable bmake's missing meta rebuild feature
This commit is contained in:
parent
bd2464674d
commit
3681768c3f
5
Makefile
5
Makefile
@ -162,8 +162,13 @@ _MAKEOBJDIRPREFIX!= /usr/bin/env -i PATH=${PATH} MK_AUTO_OBJ=no ${MAKE} \
|
|||||||
# We cannot blindly use a make which may not be the one we want
|
# We cannot blindly use a make which may not be the one we want
|
||||||
# so be exlicit - until all choice is removed.
|
# so be exlicit - until all choice is removed.
|
||||||
WANT_MAKE= bmake
|
WANT_MAKE= bmake
|
||||||
|
.if !empty(.MAKE.MODE:Mmeta)
|
||||||
|
# 20160604 - support missing-meta,missing-filemon and performance improvements
|
||||||
|
WANT_MAKE_VERSION= 20160604
|
||||||
|
.else
|
||||||
# 20160220 - support .dinclude for FAST_DEPEND.
|
# 20160220 - support .dinclude for FAST_DEPEND.
|
||||||
WANT_MAKE_VERSION= 20160220
|
WANT_MAKE_VERSION= 20160220
|
||||||
|
.endif
|
||||||
MYMAKE= ${MAKEOBJDIRPREFIX}${.CURDIR}/make.${MACHINE}/${WANT_MAKE}
|
MYMAKE= ${MAKEOBJDIRPREFIX}${.CURDIR}/make.${MACHINE}/${WANT_MAKE}
|
||||||
.if defined(.PARSEDIR)
|
.if defined(.PARSEDIR)
|
||||||
HAVE_MAKE= bmake
|
HAVE_MAKE= bmake
|
||||||
|
@ -278,3 +278,8 @@ CFLAGS+= ${CROSS_TARGET_FLAGS}
|
|||||||
ACFLAGS+= ${CROSS_TARGET_FLAGS}
|
ACFLAGS+= ${CROSS_TARGET_FLAGS}
|
||||||
LDFLAGS+= -Wl,-m -Wl,elf_${MACHINE_ARCH}_fbsd
|
LDFLAGS+= -Wl,-m -Wl,elf_${MACHINE_ARCH}_fbsd
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
|
META_MODE+= missing-meta=yes
|
||||||
|
.if empty(META_MODE:Mnofilemon)
|
||||||
|
META_MODE+= missing-filemon=yes
|
||||||
|
.endif
|
||||||
|
@ -47,6 +47,9 @@ __ENV_ONLY_OPTIONS:= \
|
|||||||
.elif ${MK_META_MODE} == "yes" && defined(.MAKEFLAGS) && ${.MAKEFLAGS:M-B} == ""
|
.elif ${MK_META_MODE} == "yes" && defined(.MAKEFLAGS) && ${.MAKEFLAGS:M-B} == ""
|
||||||
# verbose will show .MAKE.META.PREFIX for each target.
|
# verbose will show .MAKE.META.PREFIX for each target.
|
||||||
META_MODE+= meta verbose
|
META_MODE+= meta verbose
|
||||||
|
.if !defined(NO_META_MISSING)
|
||||||
|
META_MODE+= missing-meta=yes
|
||||||
|
.endif
|
||||||
# silent will hide command output if a .meta file is created.
|
# silent will hide command output if a .meta file is created.
|
||||||
.if !defined(NO_SILENT)
|
.if !defined(NO_SILENT)
|
||||||
META_MODE+= silent=yes
|
META_MODE+= silent=yes
|
||||||
@ -57,6 +60,10 @@ META_MODE+= silent=yes
|
|||||||
.endif
|
.endif
|
||||||
META_MODE+= nofilemon
|
META_MODE+= nofilemon
|
||||||
.endif
|
.endif
|
||||||
|
# Require filemon data with bmake
|
||||||
|
.if empty(META_MODE:Mnofilemon)
|
||||||
|
META_MODE+= missing-filemon=yes
|
||||||
|
.endif
|
||||||
.endif
|
.endif
|
||||||
META_MODE?= normal
|
META_MODE?= normal
|
||||||
.export META_MODE
|
.export META_MODE
|
||||||
|
@ -19,9 +19,10 @@ The command to execute changes.
|
|||||||
.It
|
.It
|
||||||
The current working directory changes.
|
The current working directory changes.
|
||||||
.It
|
.It
|
||||||
The target's meta file is missing, if it had
|
The target's meta file is missing.
|
||||||
.Sy .META
|
.It
|
||||||
as a dependency.
|
The target's meta file is missing filemon data when filemon is loaded
|
||||||
|
and a previous run did not have it loaded.
|
||||||
.It
|
.It
|
||||||
[requires
|
[requires
|
||||||
.Xr filemon 4 ]
|
.Xr filemon 4 ]
|
||||||
|
Loading…
Reference in New Issue
Block a user