Previous revision didn't fix all cases. For example,
testing for variables that are always defined (e.g., "make -V CC") would still print a false warning. Fix this by only passing a submake the MAKEOBJDIRPREFIX=* argument if it was present. As a result, we loose the check for -DMAKEOBJDIRPREFIX, or an esoteric "MAKEOBJDIRPREFIX = foo" (with embedded spaces), but these are unorthodox enough to not care about them. The make(1) bug mentioned in the previous revision was just fixed in make/main.c,v 1.109.
This commit is contained in:
parent
025bfb24c4
commit
e9bddef1f0
5
Makefile
5
Makefile
@ -86,8 +86,9 @@ TGTS+= ${BITGTS}
|
|||||||
|
|
||||||
PATH= /sbin:/bin:/usr/sbin:/usr/bin
|
PATH= /sbin:/bin:/usr/sbin:/usr/bin
|
||||||
MAKEOBJDIRPREFIX?= /usr/obj
|
MAKEOBJDIRPREFIX?= /usr/obj
|
||||||
_MAKEOBJDIRPREFIX!= /usr/bin/env -i PATH=${PATH} ${MAKE} ${.MAKEFLAGS} \
|
_MAKEOBJDIRPREFIX!= /usr/bin/env -i PATH=${PATH} ${MAKE} \
|
||||||
-f /dev/null -V MAKEOBJDIRPREFIX dummy
|
${.MAKEFLAGS:MMAKEOBJDIRPREFIX=*} \
|
||||||
|
-f /dev/null -V MAKEOBJDIRPREFIX dummy
|
||||||
.if !empty(_MAKEOBJDIRPREFIX)
|
.if !empty(_MAKEOBJDIRPREFIX)
|
||||||
.error MAKEOBJDIRPREFIX can only be set in environment, not as a global\
|
.error MAKEOBJDIRPREFIX can only be set in environment, not as a global\
|
||||||
(in /etc/make.conf) or command-line variable.
|
(in /etc/make.conf) or command-line variable.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user