]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Import bmake-20230622
authorSimon J. Gerraty <sjg@FreeBSD.org>
Tue, 27 Jun 2023 20:29:43 +0000 (13:29 -0700)
committerSimon J. Gerraty <sjg@FreeBSD.org>
Tue, 27 Jun 2023 20:29:43 +0000 (13:29 -0700)
commit3e39ce563b9ba25883e5aa37d9799eda9e57c1e0
treeb01c5a81afb41e56ff12c7b6995716a14d00767b
parent945078deae448e0a13c34b3393d836087719fb16
Import bmake-20230622

Relevant/interesting changes:

o optimize string matching for ':M' and ':N'
o warn about malformed patterns in ':M', ':N' and '.if make(...)'
o allow guards to be targets as well as variables
The guard targets may include variable references like
__${.PARSEDIR:tA}/${.PARSEFILE}__
o optimization for makefiles protected from multiple-inclusion
skip even opening the file after first include.
o var.c: do not allow delete of readOnly variable
o parse.c: .break takes no args
213 files changed:
ChangeLog
FILES
Makefile
VERSION
buf.c
buf.h
cond.c
dir.c
for.c
make.h
mk/ChangeLog
mk/dirdeps.mk
mk/host-target.mk
mk/install-mk
mk/meta.autodep.mk
mk/sys.dirdeps.mk
mk/sys.vars.mk
os.sh [changed mode: 0755->0644]
parse.c
str.c
str.h
unit-tests/Makefile
unit-tests/cmdline-undefined.exp
unit-tests/cmdline-undefined.mk
unit-tests/cond-cmp-numeric-eq.exp
unit-tests/cond-cmp-numeric-eq.mk
unit-tests/cond-cmp-unary.exp
unit-tests/cond-cmp-unary.mk
unit-tests/cond-eof.exp
unit-tests/cond-eof.mk
unit-tests/cond-func-defined.exp
unit-tests/cond-func-defined.mk
unit-tests/cond-func-empty.exp
unit-tests/cond-func-empty.mk
unit-tests/cond-func-make.exp
unit-tests/cond-func-make.mk
unit-tests/cond-func.exp
unit-tests/cond-func.mk
unit-tests/cond-op-and-lint.exp
unit-tests/cond-op-and-lint.mk
unit-tests/cond-op-and.exp
unit-tests/cond-op-and.mk
unit-tests/cond-op-not.exp
unit-tests/cond-op-not.mk
unit-tests/cond-op-or-lint.exp
unit-tests/cond-op-or-lint.mk
unit-tests/cond-op-or.exp
unit-tests/cond-op-or.mk
unit-tests/cond-op-parentheses.exp
unit-tests/cond-op-parentheses.mk
unit-tests/cond-op.exp
unit-tests/cond-op.mk
unit-tests/cond-token-number.exp
unit-tests/cond-token-number.mk
unit-tests/cond-token-plain.exp
unit-tests/cond-token-plain.mk
unit-tests/cond-token-string.exp
unit-tests/cond-token-string.mk
unit-tests/cond-token-var.exp
unit-tests/cond-token-var.mk
unit-tests/cond-undef-lint.exp
unit-tests/cond-undef-lint.mk
unit-tests/dep-colon-bug-cross-file.exp
unit-tests/dep-colon-bug-cross-file.mk
unit-tests/dep-wildcards.mk
unit-tests/dep.mk
unit-tests/deptgt-begin.exp
unit-tests/deptgt-begin.mk
unit-tests/deptgt-delete_on_error.mk
unit-tests/deptgt.exp
unit-tests/deptgt.mk
unit-tests/directive-elif.exp
unit-tests/directive-elif.mk
unit-tests/directive-else.exp
unit-tests/directive-else.mk
unit-tests/directive-endfor.exp
unit-tests/directive-endfor.mk
unit-tests/directive-endif.exp
unit-tests/directive-endif.mk
unit-tests/directive-error.exp
unit-tests/directive-error.mk
unit-tests/directive-for-break.exp
unit-tests/directive-for-break.mk
unit-tests/directive-for-empty.exp
unit-tests/directive-for-empty.mk
unit-tests/directive-for-errors.exp
unit-tests/directive-for-errors.mk
unit-tests/directive-for-escape.exp
unit-tests/directive-for-escape.mk
unit-tests/directive-for-generating-endif.exp
unit-tests/directive-for-generating-endif.mk
unit-tests/directive-for-if.exp
unit-tests/directive-for-if.mk
unit-tests/directive-for-lines.exp
unit-tests/directive-for-lines.mk
unit-tests/directive-for.exp
unit-tests/directive-for.mk
unit-tests/directive-if.exp
unit-tests/directive-if.mk
unit-tests/directive-ifmake.exp
unit-tests/directive-ifmake.mk
unit-tests/directive-ifndef.exp
unit-tests/directive-ifndef.mk
unit-tests/directive-include-fatal.exp
unit-tests/directive-include-fatal.mk
unit-tests/directive-include-guard.exp [new file with mode: 0644]
unit-tests/directive-include-guard.mk [new file with mode: 0644]
unit-tests/directive-include.exp
unit-tests/directive-include.mk
unit-tests/directive-info.exp
unit-tests/directive-info.mk
unit-tests/directive-misspellings.exp
unit-tests/directive-misspellings.mk
unit-tests/directive-undef.exp
unit-tests/directive-undef.mk
unit-tests/directive-unexport-env.exp
unit-tests/directive-unexport-env.mk
unit-tests/directive-unexport.exp
unit-tests/directive-unexport.mk
unit-tests/directive-warning.exp
unit-tests/directive-warning.mk
unit-tests/doterror.mk
unit-tests/error.exp
unit-tests/error.mk
unit-tests/export-env.mk
unit-tests/forsubst.exp [deleted file]
unit-tests/forsubst.mk [deleted file]
unit-tests/include-main.exp
unit-tests/include-main.mk
unit-tests/modmatch.exp [deleted file]
unit-tests/modmatch.mk [deleted file]
unit-tests/modmisc.exp
unit-tests/modmisc.mk
unit-tests/opt-debug-file.exp
unit-tests/opt-debug-file.mk
unit-tests/opt-debug-for.exp
unit-tests/opt-debug-hash.exp
unit-tests/opt-debug-hash.mk
unit-tests/opt-debug-lint.exp
unit-tests/opt-debug-lint.mk
unit-tests/opt-debug-parse.exp
unit-tests/opt-debug-parse.mk
unit-tests/opt-warnings-as-errors.exp
unit-tests/opt-warnings-as-errors.mk
unit-tests/parse.exp
unit-tests/parse.mk
unit-tests/recursive.exp
unit-tests/recursive.mk
unit-tests/var-eval-short.exp
unit-tests/var-eval-short.mk
unit-tests/var-op-append.mk
unit-tests/var-op-assign.exp
unit-tests/var-op-assign.mk
unit-tests/var-op-expand.exp
unit-tests/var-op-expand.mk
unit-tests/var-op-shell.exp
unit-tests/var-op-shell.mk
unit-tests/var-readonly.mk
unit-tests/var-recursive.exp
unit-tests/var-recursive.mk
unit-tests/var-scope-cmdline.exp
unit-tests/var-scope-cmdline.mk
unit-tests/vardebug.exp
unit-tests/vardebug.mk
unit-tests/varmod-assign-shell.exp
unit-tests/varmod-assign-shell.mk
unit-tests/varmod-edge.exp
unit-tests/varmod-edge.mk
unit-tests/varmod-gmtime.exp
unit-tests/varmod-gmtime.mk
unit-tests/varmod-ifelse.exp
unit-tests/varmod-ifelse.mk
unit-tests/varmod-indirect.exp
unit-tests/varmod-indirect.mk
unit-tests/varmod-localtime.exp
unit-tests/varmod-localtime.mk
unit-tests/varmod-loop-delete.exp
unit-tests/varmod-loop-delete.mk
unit-tests/varmod-loop-varname.exp
unit-tests/varmod-loop-varname.mk
unit-tests/varmod-match-escape.exp
unit-tests/varmod-match-escape.mk
unit-tests/varmod-match.exp
unit-tests/varmod-match.mk
unit-tests/varmod-order.exp
unit-tests/varmod-order.mk
unit-tests/varmod-range.exp
unit-tests/varmod-range.mk
unit-tests/varmod-subst.mk
unit-tests/varmod-sysv.exp
unit-tests/varmod-sysv.mk
unit-tests/varmod-to-abs.exp
unit-tests/varmod-to-abs.mk
unit-tests/varmod-to-separator.exp
unit-tests/varmod-to-separator.mk
unit-tests/varmod.exp
unit-tests/varmod.mk
unit-tests/varname-dollar.exp
unit-tests/varname-dollar.mk
unit-tests/varname-dot-makeflags.exp
unit-tests/varname-dot-makeflags.mk
unit-tests/varname-dot-parsedir.exp
unit-tests/varname-dot-parsedir.mk
unit-tests/varname-dot-parsefile.exp
unit-tests/varname-dot-parsefile.mk
unit-tests/varname-makeflags.mk
unit-tests/varname.exp
unit-tests/varname.mk
unit-tests/varparse-dynamic.exp
unit-tests/varparse-dynamic.mk
unit-tests/varparse-errors.exp
unit-tests/varparse-errors.mk
var.c