FreeBSD_HEAD - Build #3411 - Fixed

jenkins-admin at FreeBSD.org jenkins-admin at FreeBSD.org
Sat Oct 17 20:30:40 UTC 2015


FreeBSD_HEAD - Build #3411 - Fixed:

Build information: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD/3411/
Full change log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD/3411/changes
Full build log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD/3411/console

Change summaries:

289462 by bdrewery:
Fix wrong PATH being set for world 'includes' stage after r289438.

The 'includes' target is currently a pseudo target in bsd.subdir.mk that
does 'cd ${.CURDIR} && ${MAKE} buildincludes && ${MAKE} installincludes',
versus all over targets that just recurse.

In Makefile.inc1 the older duplicated bsd.subdir.mk logic for calling
'includes' was being executed in each subdir directly, meaning 'cd lib && make
includes' became 'cd lib && make buildincludes && make installincludes'.  Now
that the bsd.subdir.mk logic is used it is calling 'make buildincludes && make
installincludes' from the top-level which pulls in the PATH=<default path>
from /Makefile.

The sub-make logic for 'includes' in bsd.subdir.mk was attempted to be removed
in r289282 but turned out to be wrong.  I have a working version now but
it is not yet ready for commit.  So for now in Makefile.inc1 split out
'includes' to 'buildincludes' and 'installincludes' which will avoid the
problem.

MFC after:	2 weeks
X-MFC-With:	r289438
Sponsored by:	EMC / Isilon Storage Division

289461 by melifaro:
Remove several compat functions from pre-fib era.

289460 by bdrewery:
Rework the 'make -n -n' feature such that '-n' recurses and '-N' does not.

Bmake has a documented feature of '-N' to skip executing commands which is
specifically intended for debugging top-level builds and not recursing into
sub-directories.  This matches the older 'make -n' behavior we added which made
'-n -n' the recursing target and '-n' a non-recursing target.

Removing the '-n -n' feature allows the build to work as documented in
the bmake manpage with '-n' and '-N'.  The older '-n -n' feature was also
not documented anywhere that I could see.

Note that the ${_+_} var is still needed as currently bmake incorrectly
executes '+' commands when '-N' is specified.

The '-n' and '-n -n' features were broken for several reasons prior to this.
r251748 made '_+_' never expand with '-n -n' which resulted in many
sub-directories not being visited until fixed 2 years later in r288391, and
many targets were given .MAKE over the past few years which resulted in
non-sub-make commands, such as rm and ln and mtree, to be executed.

This should also allow removing some indirection hacks in bsd.subdir.mk and
other cases of .USE that have a .MAKE by using '+'.

Sponsored by:	EMC / Isilon Storage Division
Discussed on:	arch@ (mostly silence)

289459 by trasz:
Remove write-only variable.

Submitted by:	Dominic Marks
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation

289458 by bdrewery:
Conditionalize the META_MODE tool handling on MK_META_MODE.

It was not being used outside of META_MODE but this should make it more clear
that it is only for META_MODE.

Sponsored by:	EMC / Isilon Storage Division



More information about the freebsd-current mailing list