Relax the check added in 338096

Checking for any include below ${SRCTOP}/sys is too strict and breaks
e.g. mkimg which includes sys/sys/disk. ABI issues will only be caused
by including headers in sys/sys since they might not match the host.

Approved By:	jhb (mentor)
Suggested By:	imp
This commit is contained in:
Alex Richardson 2018-08-21 16:52:14 +00:00
parent 44e1285c7b
commit cd4d034fd6

View File

@ -8,12 +8,14 @@ LDFLAGS+= -L${WORLDTMP}/legacy/usr/lib
# we do not want to capture dependencies referring to the above # we do not want to capture dependencies referring to the above
UPDATE_DEPENDFILE= no UPDATE_DEPENDFILE= no
.if !make(obj)
# When building host tools we should never pull in headers from the source sys # When building host tools we should never pull in headers from the source sys
# directory to avoid any ABI issues that might cause the built binary to crash. # directory to avoid any ABI issues that might cause the built binary to crash.
# The only exceptions to this are sys/cddl/compat for dtrace bootstrap tools and # The only exceptions to this are sys/cddl/compat for dtrace bootstrap tools and
# sys/crypto for libmd bootstrap. # sys/crypto for libmd bootstrap.
.if !empty(CFLAGS:M*${SRCTOP}/sys*:N*${SRCTOP}/sys/cddl/compat*:N*${SRCTOP}/sys/crypto*) # We have to skip this check during make obj since bsd.crunchgen.mk will run
# make obj on every directory during the build-tools phase.
.if !make(obj)
.if !empty(CFLAGS:M*${SRCTOP}/sys)
.error Do not include $${SRCTOP}/sys when building bootstrap tools. \ .error Do not include $${SRCTOP}/sys when building bootstrap tools. \
Copy the header to $${WORLDTMP}/legacy in tools/build/Makefile instead. \ Copy the header to $${WORLDTMP}/legacy in tools/build/Makefile instead. \
Error was caused by Makefile in ${.CURDIR} Error was caused by Makefile in ${.CURDIR}