CVSROOT:        /cvs
Module name:    src
Changes by:     [email protected]    2025/11/27 02:08:49

Modified files:
        usr.bin/make   : Makefile generate.c make.1 var.c var_int.h 

Log message:
tweak make "magic variables" handling

The idea is that it's shorter to special-case ${@D} and the likes
(two characters variables ending in D or F) instead of having a weird
idx encoding.

Cons:
- this yields an extra "ext" parameter to classify_var
Pros:
- the weird index encoding vanishes
- no need for special treatment if we add more similar variables.
- drastically reduces the size of the switch (and the modulo shrinks from
82 to 36)
- code will recognize constructs like ${?D} and ${?F}, which puts us in
line with FreeBSD and NetBSD bmake, and also with gnu make.

from espie

Reply via email to