Assert that a build is done before an install.

This should also catch cases where the wrong MAKEOBJDIRPREFIX is used for
install.

MFC after:	2 weeks
Sponsored by:	Dell EMC
This commit is contained in:
Bryan Drewery 2018-06-16 00:35:19 +00:00
parent 0afe96c7bf
commit 4e3db1e0af

View File

@ -89,6 +89,9 @@ MK_GCC_BOOTSTRAP= no
.if make(installworld) || make(install) || make(distributeworld) || \
make(stageworld)
.-include "${OBJTOP}/compiler-metadata.mk"
.if !defined(_LOADED_COMPILER_METADATA)
.error A build is required first. You may have the wrong MAKEOBJDIRPREFIX set.
.endif
.endif
# Pull in COMPILER_TYPE and COMPILER_FREEBSD_VERSION early. Pull it from the
@ -195,6 +198,7 @@ compiler-metadata.mk: .PHONY .META
@: > ${.TARGET}
@echo ".info Using cached compiler metadata from build at $$(hostname) on $$(date)" \
> ${.TARGET}
@echo "_LOADED_COMPILER_METADATA=t" >> ${.TARGET}
.for v in ${_COMPILER_METADATA_VARS}
@echo "${v}=${${v}}" >> ${.TARGET}
.endfor