mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-13 10:02:38 +00:00
PROG_OVERRIDE_VARS should override default values if specified
The behavior prior to this change would not override default values if set in `bsd.own.mk`, or (in the more general case) globally before `bsd.progs.mk` was included. This affected `bsd.test.mk` as well, since it consumes `bsd.progs.mk`. Some examples of this failing behavior are as follows: * `BINMODE` defaults to 0555 per `bsd.own.mk`. If someone wanted to set the `BINMODE` to `NOBINMODE` (0444) for `prog`, for example, like `BINMODE.prog= ${NOBINMODE}`, `bsd.progs.mk` would not honor the per-PROG setting. * An application, `prog`, does not build at `WARNS?= 6`. Before this change, setting to a lower `WARNS` value, e.g., `WARNS.prog= 3`, would have been impossible, requiring that `prog` be built from another directory, the global `WARNS` be lowered, or a per-PROG value needing to be set across the board. None of the above workarounds is desirable. This change unbreaks variables defined in `PROG_OVERRIDE_VARS` which have defaults set before `bsd.progs.mk` is included, by setting them to their defined values if set on a per-PROG basis. Reviewed by: asomers Approved by: emaste (mentor) MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D19755
This commit is contained in:
parent
7893235ff0
commit
b89cf12cc6
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=345723
@ -34,6 +34,11 @@ $v += ${${v}.${PROG}}
|
||||
$v += ${${v}_${PROG}}
|
||||
.endif
|
||||
.else
|
||||
.if defined(${v}.${PROG})
|
||||
$v = ${${v}.${PROG}}
|
||||
.elif defined(${v}_${PROG})
|
||||
$v = ${${v}_${PROG}}
|
||||
.endif
|
||||
$v ?=
|
||||
.endif
|
||||
.endfor
|
||||
|
Loading…
Reference in New Issue
Block a user