svn commit: r367460 - in vendor/NetBSD/bmake/dist: . filemon mk unit-tests
Simon J. Gerraty
sjg at FreeBSD.org
Sat Nov 7 19:39:22 UTC 2020
Author: sjg
Date: Sat Nov 7 19:39:21 2020
New Revision: 367460
URL: https://svnweb.freebsd.org/changeset/base/367460
Log:
Import bmake-20201101
Lots of new unit-tests increase code coverage.
Lots of refactoring, cleanup and simlpification to reduce
code size.
Fixes for Bug 223564 and 245807
Updates to dirdeps.mk and meta2deps.py
Added:
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-unary.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-unary.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/cond-undef-lint.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/cond-undef-lint.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/counter-append.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/counter-append.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/dep-colon-bug-cross-file.exp
vendor/NetBSD/bmake/dist/unit-tests/dep-colon-bug-cross-file.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/dep-double-colon-indep.exp
vendor/NetBSD/bmake/dist/unit-tests/dep-double-colon-indep.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/dep-percent.exp
vendor/NetBSD/bmake/dist/unit-tests/dep-percent.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/depsrc-end.exp
vendor/NetBSD/bmake/dist/unit-tests/depsrc-end.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/deptgt-end-jobs.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/deptgt-end-jobs.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-dinclude.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-dinclude.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-export-gmake.exp
vendor/NetBSD/bmake/dist/unit-tests/directive-export-gmake.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-hyphen-include.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-hyphen-include.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-include-fatal.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-include-fatal.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-include.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-include.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-sinclude.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/directive-sinclude.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/hanoi-include.exp
vendor/NetBSD/bmake/dist/unit-tests/hanoi-include.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/job-output-long-lines.exp
vendor/NetBSD/bmake/dist/unit-tests/job-output-long-lines.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-all.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-all.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-archive.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-archive.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-cond.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-cond.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-curdir.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-curdir.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-dir.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-dir.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-errors.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-errors.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-file.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-file.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-for.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-for.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-graph1.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-graph1.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-graph2.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-graph2.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-graph3.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-graph3.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-hash.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-hash.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-jobs.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-jobs.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-lint.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-lint.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-loud.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-loud.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-making.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-making.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-meta.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-meta.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-no-rm.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-no-rm.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-parse.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-parse.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-suff.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-suff.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-targets.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-targets.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-var.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-var.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-varraw.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-varraw.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-x-trace.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-x-trace.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/parse-var.exp
vendor/NetBSD/bmake/dist/unit-tests/parse-var.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/shell-csh.exp
vendor/NetBSD/bmake/dist/unit-tests/shell-csh.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/shell-custom.exp
vendor/NetBSD/bmake/dist/unit-tests/shell-custom.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/shell-ksh.exp
vendor/NetBSD/bmake/dist/unit-tests/shell-ksh.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/shell-sh.exp
vendor/NetBSD/bmake/dist/unit-tests/shell-sh.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/suff-add-later.exp
vendor/NetBSD/bmake/dist/unit-tests/suff-add-later.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/suff-clear-regular.exp
vendor/NetBSD/bmake/dist/unit-tests/suff-clear-regular.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/suff-clear-single.exp
vendor/NetBSD/bmake/dist/unit-tests/suff-clear-single.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/suff-lookup.exp
vendor/NetBSD/bmake/dist/unit-tests/suff-lookup.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/suff-main.exp
vendor/NetBSD/bmake/dist/unit-tests/suff-main.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/suff-rebuild.exp
vendor/NetBSD/bmake/dist/unit-tests/suff-rebuild.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/suff-transform-endless.exp
vendor/NetBSD/bmake/dist/unit-tests/suff-transform-endless.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/suff-transform-expand.exp
vendor/NetBSD/bmake/dist/unit-tests/suff-transform-expand.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/suff-transform-select.exp
vendor/NetBSD/bmake/dist/unit-tests/suff-transform-select.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/var-op-sunsh.exp
vendor/NetBSD/bmake/dist/unit-tests/var-op-sunsh.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/var-recursive.exp
vendor/NetBSD/bmake/dist/unit-tests/var-recursive.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/varname-make_print_var_on_error-jobs.exp
vendor/NetBSD/bmake/dist/unit-tests/varname-make_print_var_on_error-jobs.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/varname-makefile.exp (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/varname-makefile.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/varparse-mod.exp
vendor/NetBSD/bmake/dist/unit-tests/varparse-mod.mk (contents, props changed)
vendor/NetBSD/bmake/dist/unit-tests/varparse-undef-partial.exp
vendor/NetBSD/bmake/dist/unit-tests/varparse-undef-partial.mk (contents, props changed)
Deleted:
vendor/NetBSD/bmake/dist/strlist.c
vendor/NetBSD/bmake/dist/strlist.h
vendor/NetBSD/bmake/dist/unit-tests/cond2.exp
vendor/NetBSD/bmake/dist/unit-tests/cond2.mk
vendor/NetBSD/bmake/dist/unit-tests/hash.exp
vendor/NetBSD/bmake/dist/unit-tests/hash.mk
vendor/NetBSD/bmake/dist/unit-tests/misc.exp
vendor/NetBSD/bmake/dist/unit-tests/misc.mk
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-g1.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug-g1.mk
vendor/NetBSD/bmake/dist/unit-tests/suffixes.exp
vendor/NetBSD/bmake/dist/unit-tests/suffixes.mk
vendor/NetBSD/bmake/dist/unit-tests/sysv.exp
vendor/NetBSD/bmake/dist/unit-tests/sysv.mk
Modified:
vendor/NetBSD/bmake/dist/ChangeLog
vendor/NetBSD/bmake/dist/FILES
vendor/NetBSD/bmake/dist/Makefile
vendor/NetBSD/bmake/dist/VERSION
vendor/NetBSD/bmake/dist/arch.c
vendor/NetBSD/bmake/dist/bmake.1
vendor/NetBSD/bmake/dist/bmake.cat1
vendor/NetBSD/bmake/dist/boot-strap
vendor/NetBSD/bmake/dist/buf.c
vendor/NetBSD/bmake/dist/buf.h
vendor/NetBSD/bmake/dist/compat.c
vendor/NetBSD/bmake/dist/cond.c
vendor/NetBSD/bmake/dist/configure
vendor/NetBSD/bmake/dist/configure.in
vendor/NetBSD/bmake/dist/dir.c
vendor/NetBSD/bmake/dist/dir.h
vendor/NetBSD/bmake/dist/enum.c
vendor/NetBSD/bmake/dist/enum.h
vendor/NetBSD/bmake/dist/filemon/filemon.h
vendor/NetBSD/bmake/dist/filemon/filemon_ktrace.c
vendor/NetBSD/bmake/dist/for.c
vendor/NetBSD/bmake/dist/hash.c
vendor/NetBSD/bmake/dist/hash.h
vendor/NetBSD/bmake/dist/job.c
vendor/NetBSD/bmake/dist/job.h
vendor/NetBSD/bmake/dist/lst.c
vendor/NetBSD/bmake/dist/lst.h
vendor/NetBSD/bmake/dist/main.c
vendor/NetBSD/bmake/dist/make-bootstrap.sh.in
vendor/NetBSD/bmake/dist/make-conf.h
vendor/NetBSD/bmake/dist/make.1
vendor/NetBSD/bmake/dist/make.c
vendor/NetBSD/bmake/dist/make.h
vendor/NetBSD/bmake/dist/make_malloc.c
vendor/NetBSD/bmake/dist/make_malloc.h
vendor/NetBSD/bmake/dist/meta.c
vendor/NetBSD/bmake/dist/meta.h
vendor/NetBSD/bmake/dist/metachar.c
vendor/NetBSD/bmake/dist/metachar.h
vendor/NetBSD/bmake/dist/mk/ChangeLog
vendor/NetBSD/bmake/dist/mk/dirdeps-cache-update.mk
vendor/NetBSD/bmake/dist/mk/dirdeps.mk
vendor/NetBSD/bmake/dist/mk/install-mk
vendor/NetBSD/bmake/dist/mk/meta2deps.py
vendor/NetBSD/bmake/dist/mk/meta2deps.sh
vendor/NetBSD/bmake/dist/mk/sys.vars.mk
vendor/NetBSD/bmake/dist/nonints.h
vendor/NetBSD/bmake/dist/parse.c
vendor/NetBSD/bmake/dist/str.c
vendor/NetBSD/bmake/dist/suff.c
vendor/NetBSD/bmake/dist/targ.c
vendor/NetBSD/bmake/dist/trace.c
vendor/NetBSD/bmake/dist/trace.h
vendor/NetBSD/bmake/dist/unit-tests/Makefile
vendor/NetBSD/bmake/dist/unit-tests/archive.exp
vendor/NetBSD/bmake/dist/unit-tests/archive.mk
vendor/NetBSD/bmake/dist/unit-tests/comment.exp
vendor/NetBSD/bmake/dist/unit-tests/comment.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-numeric-eq.exp
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-numeric-eq.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-numeric-ge.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-numeric-gt.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-numeric-le.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-numeric-lt.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-numeric-ne.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-numeric.exp
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-numeric.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-string.exp
vendor/NetBSD/bmake/dist/unit-tests/cond-cmp-string.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-func-commands.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-func-defined.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-func-empty.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-func-exists.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-func-make.exp
vendor/NetBSD/bmake/dist/unit-tests/cond-func-make.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-func-target.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-func.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-op-and.exp
vendor/NetBSD/bmake/dist/unit-tests/cond-op-and.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-op-not.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-op-or.exp
vendor/NetBSD/bmake/dist/unit-tests/cond-op-or.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-op.exp
vendor/NetBSD/bmake/dist/unit-tests/cond-op.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-short.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-token-number.exp
vendor/NetBSD/bmake/dist/unit-tests/cond-token-number.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-token-plain.exp
vendor/NetBSD/bmake/dist/unit-tests/cond-token-plain.mk
vendor/NetBSD/bmake/dist/unit-tests/cond-token-var.mk
vendor/NetBSD/bmake/dist/unit-tests/cond1.exp
vendor/NetBSD/bmake/dist/unit-tests/cond1.mk
vendor/NetBSD/bmake/dist/unit-tests/counter.exp
vendor/NetBSD/bmake/dist/unit-tests/counter.mk
vendor/NetBSD/bmake/dist/unit-tests/dep-colon.exp
vendor/NetBSD/bmake/dist/unit-tests/dep-colon.mk
vendor/NetBSD/bmake/dist/unit-tests/dep-double-colon.mk
vendor/NetBSD/bmake/dist/unit-tests/dep-var.exp
vendor/NetBSD/bmake/dist/unit-tests/dep-var.mk
vendor/NetBSD/bmake/dist/unit-tests/dep-wildcards.exp
vendor/NetBSD/bmake/dist/unit-tests/dep-wildcards.mk
vendor/NetBSD/bmake/dist/unit-tests/depsrc-exec.exp
vendor/NetBSD/bmake/dist/unit-tests/depsrc-exec.mk
vendor/NetBSD/bmake/dist/unit-tests/depsrc-made.exp
vendor/NetBSD/bmake/dist/unit-tests/depsrc-made.mk
vendor/NetBSD/bmake/dist/unit-tests/depsrc-make.exp
vendor/NetBSD/bmake/dist/unit-tests/depsrc-make.mk
vendor/NetBSD/bmake/dist/unit-tests/depsrc-notmain.exp
vendor/NetBSD/bmake/dist/unit-tests/depsrc-notmain.mk
vendor/NetBSD/bmake/dist/unit-tests/depsrc-optional.exp
vendor/NetBSD/bmake/dist/unit-tests/depsrc-optional.mk
vendor/NetBSD/bmake/dist/unit-tests/depsrc-phony.exp
vendor/NetBSD/bmake/dist/unit-tests/depsrc-phony.mk
vendor/NetBSD/bmake/dist/unit-tests/depsrc-recursive.exp
vendor/NetBSD/bmake/dist/unit-tests/depsrc-recursive.mk
vendor/NetBSD/bmake/dist/unit-tests/depsrc-wait.exp
vendor/NetBSD/bmake/dist/unit-tests/depsrc-wait.mk
vendor/NetBSD/bmake/dist/unit-tests/deptgt-delete_on_error.exp
vendor/NetBSD/bmake/dist/unit-tests/deptgt-delete_on_error.mk
vendor/NetBSD/bmake/dist/unit-tests/deptgt-end.exp
vendor/NetBSD/bmake/dist/unit-tests/deptgt-end.mk
vendor/NetBSD/bmake/dist/unit-tests/deptgt-makeflags.exp
vendor/NetBSD/bmake/dist/unit-tests/deptgt-makeflags.mk
vendor/NetBSD/bmake/dist/unit-tests/deptgt-silent.exp
vendor/NetBSD/bmake/dist/unit-tests/deptgt-silent.mk
vendor/NetBSD/bmake/dist/unit-tests/deptgt-suffixes.exp
vendor/NetBSD/bmake/dist/unit-tests/deptgt.exp
vendor/NetBSD/bmake/dist/unit-tests/deptgt.mk
vendor/NetBSD/bmake/dist/unit-tests/dir.exp
vendor/NetBSD/bmake/dist/unit-tests/dir.mk
vendor/NetBSD/bmake/dist/unit-tests/directive-else.mk
vendor/NetBSD/bmake/dist/unit-tests/directive-export-literal.exp
vendor/NetBSD/bmake/dist/unit-tests/directive-export-literal.mk
vendor/NetBSD/bmake/dist/unit-tests/directive-export.mk
vendor/NetBSD/bmake/dist/unit-tests/directive-for.exp
vendor/NetBSD/bmake/dist/unit-tests/directive-for.mk
vendor/NetBSD/bmake/dist/unit-tests/directive-ifndef.exp
vendor/NetBSD/bmake/dist/unit-tests/directive-ifndef.mk
vendor/NetBSD/bmake/dist/unit-tests/directive-ifnmake.exp
vendor/NetBSD/bmake/dist/unit-tests/directive-ifnmake.mk
vendor/NetBSD/bmake/dist/unit-tests/directive-undef.mk
vendor/NetBSD/bmake/dist/unit-tests/directive-unexport.exp
vendor/NetBSD/bmake/dist/unit-tests/directive-unexport.mk
vendor/NetBSD/bmake/dist/unit-tests/directives.mk
vendor/NetBSD/bmake/dist/unit-tests/doterror.mk
vendor/NetBSD/bmake/dist/unit-tests/dotwait.mk
vendor/NetBSD/bmake/dist/unit-tests/envfirst.mk
vendor/NetBSD/bmake/dist/unit-tests/error.exp
vendor/NetBSD/bmake/dist/unit-tests/error.mk
vendor/NetBSD/bmake/dist/unit-tests/escape.mk
vendor/NetBSD/bmake/dist/unit-tests/export-all.mk
vendor/NetBSD/bmake/dist/unit-tests/export-env.mk
vendor/NetBSD/bmake/dist/unit-tests/export-variants.mk
vendor/NetBSD/bmake/dist/unit-tests/export.exp
vendor/NetBSD/bmake/dist/unit-tests/export.mk
vendor/NetBSD/bmake/dist/unit-tests/forloop.exp
vendor/NetBSD/bmake/dist/unit-tests/forloop.mk
vendor/NetBSD/bmake/dist/unit-tests/forsubst.mk
vendor/NetBSD/bmake/dist/unit-tests/include-main.exp
vendor/NetBSD/bmake/dist/unit-tests/include-main.mk
vendor/NetBSD/bmake/dist/unit-tests/include-sub.mk
vendor/NetBSD/bmake/dist/unit-tests/include-subsub.mk
vendor/NetBSD/bmake/dist/unit-tests/lint.exp
vendor/NetBSD/bmake/dist/unit-tests/lint.mk
vendor/NetBSD/bmake/dist/unit-tests/make-exported.exp
vendor/NetBSD/bmake/dist/unit-tests/make-exported.mk
vendor/NetBSD/bmake/dist/unit-tests/moderrs.exp
vendor/NetBSD/bmake/dist/unit-tests/moderrs.mk
vendor/NetBSD/bmake/dist/unit-tests/modmatch.mk
vendor/NetBSD/bmake/dist/unit-tests/modmisc.mk
vendor/NetBSD/bmake/dist/unit-tests/modts.mk
vendor/NetBSD/bmake/dist/unit-tests/modword.exp
vendor/NetBSD/bmake/dist/unit-tests/modword.mk
vendor/NetBSD/bmake/dist/unit-tests/opt-debug.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-debug.mk
vendor/NetBSD/bmake/dist/unit-tests/opt-ignore.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-ignore.mk
vendor/NetBSD/bmake/dist/unit-tests/opt-keep-going.exp
vendor/NetBSD/bmake/dist/unit-tests/opt-keep-going.mk
vendor/NetBSD/bmake/dist/unit-tests/phony-end.mk
vendor/NetBSD/bmake/dist/unit-tests/posix.mk
vendor/NetBSD/bmake/dist/unit-tests/posix1.mk
vendor/NetBSD/bmake/dist/unit-tests/qequals.mk
vendor/NetBSD/bmake/dist/unit-tests/recursive.mk
vendor/NetBSD/bmake/dist/unit-tests/sh-dots.exp
vendor/NetBSD/bmake/dist/unit-tests/sh-dots.mk
vendor/NetBSD/bmake/dist/unit-tests/sunshcmd.mk
vendor/NetBSD/bmake/dist/unit-tests/ternary.mk
vendor/NetBSD/bmake/dist/unit-tests/unexport-env.mk
vendor/NetBSD/bmake/dist/unit-tests/unexport.mk
vendor/NetBSD/bmake/dist/unit-tests/var-class-local.exp
vendor/NetBSD/bmake/dist/unit-tests/var-class-local.mk
vendor/NetBSD/bmake/dist/unit-tests/var-op-append.exp
vendor/NetBSD/bmake/dist/unit-tests/var-op-append.mk
vendor/NetBSD/bmake/dist/unit-tests/var-op-assign.mk
vendor/NetBSD/bmake/dist/unit-tests/varcmd.mk
vendor/NetBSD/bmake/dist/unit-tests/vardebug.exp
vendor/NetBSD/bmake/dist/unit-tests/vardebug.mk
vendor/NetBSD/bmake/dist/unit-tests/varmisc.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-assign.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-assign.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-defined.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-edge.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-exclam-shell.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-gmtime.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-gmtime.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-hash.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-ifelse.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-ifelse.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-l-name-to-value.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-localtime.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-localtime.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-loop.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-loop.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-match-escape.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-match-escape.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-match.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-match.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-order-reverse.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-order-shuffle.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-order.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-quote.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-range.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-range.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-subst-regex.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-subst.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-sysv.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-sysv.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-to-lower.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-to-separator.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod-to-separator.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-to-upper.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod-undefined.mk
vendor/NetBSD/bmake/dist/unit-tests/varmod.exp
vendor/NetBSD/bmake/dist/unit-tests/varmod.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-curdir.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-includes.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-libs.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-newline.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-parsedir.exp
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-parsedir.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-parsefile.exp
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-parsefile.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-path.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-shell.exp
vendor/NetBSD/bmake/dist/unit-tests/varname-dot-shell.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-empty.exp
vendor/NetBSD/bmake/dist/unit-tests/varname-empty.mk
vendor/NetBSD/bmake/dist/unit-tests/varname-make_print_var_on_error.exp
vendor/NetBSD/bmake/dist/unit-tests/varname-make_print_var_on_error.mk
vendor/NetBSD/bmake/dist/unit-tests/varname.mk
vendor/NetBSD/bmake/dist/unit-tests/varparse-dynamic.mk
vendor/NetBSD/bmake/dist/unit-tests/varshell.exp
vendor/NetBSD/bmake/dist/unit-tests/varshell.mk
vendor/NetBSD/bmake/dist/util.c
vendor/NetBSD/bmake/dist/var.c
Modified: vendor/NetBSD/bmake/dist/ChangeLog
==============================================================================
--- vendor/NetBSD/bmake/dist/ChangeLog Sat Nov 7 19:17:37 2020 (r367459)
+++ vendor/NetBSD/bmake/dist/ChangeLog Sat Nov 7 19:39:21 2020 (r367460)
@@ -1,3 +1,267 @@
+2020-11-01 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20201101
+ Merge with NetBSD make, pick up
+ o negate NoExecute to GNode_ShouldExecute
+ o job.c: rename JobMatchShell to FindShellByName
+ extract EscapeShellDblQuot from JobPrintCommand
+ extract ParseRunOptions from JobPrintCommand
+ o var.c: extract ApplyModifiersIndirect from ApplyModifiers
+ treat malformed :range, :ts and :[...] as errors
+ add tests for the variable modifiers :[words] and :range
+
+2020-10-31 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20201031
+ Merge with NetBSD make, pick up
+ o format #include directives consistently
+ o do not look up local variables like .TARGET anywhere else
+ o main.c: Main_SetObjdir is first called for curdir which may be
+ readonly
+ reduce the scope where recursive expressions are detected
+ remove redundant :tl from getBoolean
+ clean up mkTempFile
+ o meta.c: simplify memory allocation in meta_create and meta_oodate
+ o parse.c: extract loadedfile_mmap from loadfile
+ o trace.c: document possible undefined behavior with .CURDIR
+ o var.c: make parsing of the :gmtime and :localtime modifiers stricter
+ rename ismeta to is_shell_metachar
+ remove debug logging for the :Q variable modifier
+ rename VarIsDynamic to VarnameIsDynamic
+ use consistent parameter order in varname parsing functions
+ extract ParseVarnameLong from Var_Parse
+ extract ParseVarnameShort from Var_Parse
+ fix type of ParseModifierPart parameter delim
+ extract IsEscapedModifierPart from ParseModifierPart
+ clean up ModifyWords
+ add test for combining the :@ and :? variable modifiers
+
+2020-10-30 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20201030
+ Merge with NetBSD make, pick up
+ o change char * to void * in Var_Value
+ o make iterating over HashTable simpler
+ o rename VAR_CMD to VAR_CMDLINE
+ o cond.c: clean up is_separator
+ fix parse error in string literal in conditional
+ o main.c: do not use objdir that is not writable
+ in lint mode, exit with error status on errors
+ o parse.c: clean up StrContainsWord
+ fix out-of-bounds pointer in ParseTrackInput
+ o var.c: rename Str_SYSVMatch and its parameters
+ remove unsatisfiable conditions in Var_Set_with_flags
+ document where the variable name is expanded
+ fix documentation for VARP_SUB_ONE
+ rename VAR_EXPORTED_YES to VAR_EXPORTED_SOME
+ document VAR_READONLY
+ prevent appending to read-only variables
+ extract MayExport from Var_Export1
+ remove redundant evaluations in VarFind
+ replace VarFindFlags with a simple Boolean
+ rename FIND_CMD to FIND_CMDLINE, to match VAR_CMDLINE
+
+2020-10-28 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20201028
+ Merge with NetBSD make, pick up
+ o rename defIncPath to defSysIncPath
+ o initialize all CmdOpts fields
+ o lst.c: inline Vector_Get
+ o main.c: refactor main extract
+ InitMaxJobs,InitObjdir,InitVarMake,InitRandom,
+ ReadMakefiles,CleanUp,InitVpath,ReadBuiltinRules,
+ InitDefIncPath,CmdOpts_Init,UnlimitFiles
+ o parse.c: merge curFile into includes
+ rename predecessor to order_pred
+ sort ParseSpecial alphabetically
+ remove unused, undocumented .NOEXPORT
+ rename ParseSpecial enum values consistently
+ rename some fields of struct IFile
+
+2020-10-26 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20201026
+ Merge with NetBSD make, pick up
+ o group the command line options and arguments into a struct
+ o rename GNode.cmgn to youngestChild
+ o rename hash functions to identify the type name
+ o negate OP_NOP and rename it to GNode_IsTarget
+ o add GNode_Path to access the path of a GNode
+ o remove macros MIN and MAX
+ o remove unused Lst_Find and Lst_FindFrom
+ o arch.c: and make Arch_FindLib simpler
+ clean up code layout
+ make Arch_ParseArchive simpler
+ o cond.c: inline CondFindStrMatch into FuncMake
+ o dir.c: replace Dir_CopyDir with Dir_CopyDirSearchPath
+ omit trailing space in debug output for expanding file patterns
+ refactor DirMatchFiles
+ document that the SearchPath of Dir_FindFile may be NULL
+ remove UNCONST from Dir_Expand
+ inline DirFindName
+ o for.c: clean up code for handling .for loops
+ o hash.c: print hash in debug log with fixed width
+ clean up hash table functions
+ reduce amount of string hashing
+ o job.c: refactor JobDeleteTarget
+ use proper enum constants for aborting
+ convert result of JobStart from macros to enum
+ convert abort reason macros to enum
+ rework Job_CheckCommands to reduce indentation
+ rename Shell fields
+ add field names in declaration of DEFSHELL_CUSTOM
+ convert JobState and JobFlags to enum types
+ move handling of the "..." command to JobPrintCommands
+ o lst.c: clean up
+ refactor LstNodeNew
+ remove Lst_Open, Lst_Next, Lst_Close
+ remove code for circular lists from Lst_Next
+ o main.c: do not attempt to read .MAKE.DEPENFILE if set to
+ /dev/null or anything starting with "no"
+ convert macros for debug flags into enum
+ o make.c: inline Lst_Copy in Make_ExpandUse
+ o meta.c: inline Lst_Find in meta_oodate
+ make Lst_RemoveIf simpler in meta_oodate
+ o parse.c: convert error level for Parse_Error to an enum
+ o suff.c: properly terminate debug output with newline
+ add more details to DEBUG_SRC log
+ replace Dir_CopyDir with Dir_CopyDirSearchPath
+ don't modify GNode name while rebuilding the suffix graph
+ o var.c: reduce duplicate code in VarFind
+
+2020-10-22 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20201022
+ Merge with NetBSD make, pick up
+ o more refactoring and simplification to reduce code size
+ o var.c: extract CanonicalVarname from VarFind
+ o make.c: extract UpdateImplicitParentsVars from Make_Update
+ o main.c: extract PrintVar from doPrintVars
+ extract HandlePWD from main
+ o lst.c: inline simple Lst getters
+ remove unused Lst_ForEach
+ o job.c: move struct Shell from job.h to job.c
+ o more unit tests
+
+2020-10-19 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * configure.in: remove inappropriate use of AC_INCLUDES_DEFAULT
+
+2020-10-18 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20201018
+ Merge with NetBSD make, pick up
+ o remove USE_IOVEC
+ o rename some Hash_* apis to Hash*
+ o replace execError with execDie
+ o rename Lst_Init to Lst_New
+ o add tags to enum types
+ o rename Stack to Vector
+ o parse.c: more refactoring
+ o unit-tests: make some tests use line buffered stdout
+ o unit-tests/Makefile: in meta mode do not make all tests depend on
+ Makefile, it isn't necessary.
+
+2020-10-10 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * main.c: check for CTL_HW being defined.
+ * unit-tests/Makefile: ensure export tests output are POSIX compliant
+ disable opt-debug-jobs test until it works on ubuntu
+
+ * VERSION (_MAKE_VERSION): 20201010
+ Merge with NetBSD make, pick up
+ o dir.c: remove pathname limit for Dir_FindHereOrAbove
+ o hash.c: replace strcpy with memcpy in Hash_CreateEntry
+ o main.c: extract init_machine and init_machine_arch from main
+ allow to disable debug logging options
+ o parse.c: enable format string truncation warnings
+ extract parsing of sources from ParseDoDependency
+ split ParseDoSrc into smaller functions
+ hide implementation details from Parse_DoVar
+ clean up parsing of variable assignments
+ split Parse_DoVar into manageable pieces
+ don't modify the given line during Parse_DoVar
+ fix out-of-bounds memory access in Parse_DoVar
+ fix parsing of the :sh assignment modifier
+ o var.c: rework memory allocation for the name of variables
+ extract ApplyModifier_Literal into separate function
+ in lint mode, reject modifiers without delimiter
+ do not export variable names starting with '-'
+ o fix double-free bug in -DCLEANUP mode
+ o more cleanup to enable higher warnings level
+ o more unit tests
+
+2020-10-02 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20201002
+ Merge with NetBSD make, pick up
+ o dir.c: use hash table for looking up open directories by name
+ o main.c: clean up option handling
+ o parse.c: add missing const for Parse_AddIncludeDir
+ o var.c: ApplyModifier_To, update pp in each branch
+ o remove redundant function prototypes
+ o more unit tests
+
+2020-10-01 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20201001
+ Merge with NetBSD make, pick up
+ o compat.c: comment about "..."
+
+2020-09-30 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20200930
+ Merge with NetBSD make, pick up
+ o job.c: split Job.jobPipe into 2 separate fields
+ replace Lst_Open with direct iteration
+ o lst.c: remove redundant assertions
+ o targ.c: replace Lst_Open with direct iteration
+ o var.c: fix bug in evaluation of indirect variable modifiers
+ extract ApplyModifier_Quote into separate function
+ o make debug logging simpler
+
+2020-09-27 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20200927
+ Merge with NetBSD make, pick up
+ o parse.c: ensure parse errors result in 'stopped in' message.
+ o compat.c: make parameter of Compat_RunCommand const
+ o main.c: extract InitVarTarget from main
+ o parse.c: rename ParseFinishLine to FinishDependencyGroup
+ refactor ParseDoDependency
+ o var.c: Var_Subst no longer returns string result
+ rename Var_ParsePP back to Var_Parse
+ in lint mode, improve error handling for undefined variables
+ extract ParseVarname from Var_Parse
+ o rename Lst_ForEach to Lst_ForEachUntil
+ o inline Lst_ForEachUntil in several cases
+ o clean up API for finding and creating GNodes
+ o fix assertion failure in -j mode with .END node
+ o inline and remove LstNode_Prev and LstNode_Next
+ o use fine-grained type names for lists and their nodes
+ o more unit tests
+
+2020-09-11 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * VERSION (_MAKE_VERSION): 20200911
+ Merge with NetBSD make, pick up
+ o cond.c: split EvalComparison into smaller functions
+ reorder parameters of condition parsing functions
+ reduce code size in CondParser_Eval
+ rename CondGetString to CondParser_String
+ add CondLexer_SkipWhitespace
+ group the condition parsing state into a struct
+ in CondGetString, replace repeated Buf_Add with Buf_AddStr
+ o migrate Var_Parse to Var_ParsePP
+ o add wrappers around ctype.h functions
+ o lst.c: use a stack instead of a list for the nested include path
+ o more unit tests
+
+2020-09-04 Simon J Gerraty <sjg at beast.crufty.net>
+
+ * make-bootstrap.sh.in: adjust object list
+
2020-09-02 Simon J Gerraty <sjg at beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200902
Modified: vendor/NetBSD/bmake/dist/FILES
==============================================================================
--- vendor/NetBSD/bmake/dist/FILES Sat Nov 7 19:17:37 2020 (r367459)
+++ vendor/NetBSD/bmake/dist/FILES Sat Nov 7 19:39:21 2020 (r367460)
@@ -65,18 +65,16 @@ sigcompat.c
str.c
stresep.c
strlcpy.c
-strlist.c
-strlist.h
suff.c
targ.c
trace.c
trace.h
unit-tests/Makefile
unit-tests/Makefile.config.in
-unit-tests/archive.exp
-unit-tests/archive.mk
unit-tests/archive-suffix.exp
unit-tests/archive-suffix.mk
+unit-tests/archive.exp
+unit-tests/archive.mk
unit-tests/cmd-interrupt.exp
unit-tests/cmd-interrupt.mk
unit-tests/cmdline.exp
@@ -99,8 +97,8 @@ unit-tests/cond-cmp-numeric.exp
unit-tests/cond-cmp-numeric.mk
unit-tests/cond-cmp-string.exp
unit-tests/cond-cmp-string.mk
-unit-tests/cond-func.exp
-unit-tests/cond-func.mk
+unit-tests/cond-cmp-unary.exp
+unit-tests/cond-cmp-unary.mk
unit-tests/cond-func-commands.exp
unit-tests/cond-func-commands.mk
unit-tests/cond-func-defined.exp
@@ -113,6 +111,8 @@ unit-tests/cond-func-make.exp
unit-tests/cond-func-make.mk
unit-tests/cond-func-target.exp
unit-tests/cond-func-target.mk
+unit-tests/cond-func.exp
+unit-tests/cond-func.mk
unit-tests/cond-late.exp
unit-tests/cond-late.mk
unit-tests/cond-op-and.exp
@@ -135,26 +135,36 @@ 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/cond1.exp
unit-tests/cond1.mk
-unit-tests/cond2.exp
-unit-tests/cond2.mk
+unit-tests/counter-append.exp
+unit-tests/counter-append.mk
unit-tests/counter.exp
unit-tests/counter.mk
+unit-tests/dep-colon-bug-cross-file.exp
+unit-tests/dep-colon-bug-cross-file.mk
unit-tests/dep-colon.exp
unit-tests/dep-colon.mk
+unit-tests/dep-double-colon-indep.exp
+unit-tests/dep-double-colon-indep.mk
unit-tests/dep-double-colon.exp
unit-tests/dep-double-colon.mk
unit-tests/dep-exclam.exp
unit-tests/dep-exclam.mk
unit-tests/dep-none.exp
unit-tests/dep-none.mk
+unit-tests/dep-percent.exp
+unit-tests/dep-percent.mk
unit-tests/dep-var.exp
unit-tests/dep-var.mk
unit-tests/dep-wildcards.exp
unit-tests/dep-wildcards.mk
unit-tests/dep.exp
unit-tests/dep.mk
+unit-tests/depsrc-end.exp
+unit-tests/depsrc-end.mk
unit-tests/depsrc-exec.exp
unit-tests/depsrc-exec.mk
unit-tests/depsrc-ignore.exp
@@ -185,10 +195,10 @@ unit-tests/depsrc-silent.exp
unit-tests/depsrc-silent.mk
unit-tests/depsrc-use.exp
unit-tests/depsrc-use.mk
-unit-tests/depsrc-usebefore.exp
-unit-tests/depsrc-usebefore.mk
unit-tests/depsrc-usebefore-double-colon.exp
unit-tests/depsrc-usebefore-double-colon.mk
+unit-tests/depsrc-usebefore.exp
+unit-tests/depsrc-usebefore.mk
unit-tests/depsrc-wait.exp
unit-tests/depsrc-wait.mk
unit-tests/depsrc.exp
@@ -199,6 +209,8 @@ unit-tests/deptgt-default.exp
unit-tests/deptgt-default.mk
unit-tests/deptgt-delete_on_error.exp
unit-tests/deptgt-delete_on_error.mk
+unit-tests/deptgt-end-jobs.exp
+unit-tests/deptgt-end-jobs.mk
unit-tests/deptgt-end.exp
unit-tests/deptgt-end.mk
unit-tests/deptgt-error.exp
@@ -239,10 +251,12 @@ unit-tests/deptgt-suffixes.exp
unit-tests/deptgt-suffixes.mk
unit-tests/deptgt.exp
unit-tests/deptgt.mk
-unit-tests/dir.exp
-unit-tests/dir.mk
unit-tests/dir-expand-path.exp
unit-tests/dir-expand-path.mk
+unit-tests/dir.exp
+unit-tests/dir.mk
+unit-tests/directive-dinclude.exp
+unit-tests/directive-dinclude.mk
unit-tests/directive-elif.exp
unit-tests/directive-elif.mk
unit-tests/directive-elifdef.exp
@@ -261,14 +275,18 @@ unit-tests/directive-error.exp
unit-tests/directive-error.mk
unit-tests/directive-export-env.exp
unit-tests/directive-export-env.mk
+unit-tests/directive-export-gmake.exp
+unit-tests/directive-export-gmake.mk
unit-tests/directive-export-literal.exp
unit-tests/directive-export-literal.mk
unit-tests/directive-export.exp
unit-tests/directive-export.mk
-unit-tests/directive-for.exp
-unit-tests/directive-for.mk
unit-tests/directive-for-generating-endif.exp
unit-tests/directive-for-generating-endif.mk
+unit-tests/directive-for.exp
+unit-tests/directive-for.mk
+unit-tests/directive-hyphen-include.exp
+unit-tests/directive-hyphen-include.mk
unit-tests/directive-if.exp
unit-tests/directive-if.mk
unit-tests/directive-ifdef.exp
@@ -279,8 +297,14 @@ unit-tests/directive-ifndef.exp
unit-tests/directive-ifndef.mk
unit-tests/directive-ifnmake.exp
unit-tests/directive-ifnmake.mk
+unit-tests/directive-include-fatal.exp
+unit-tests/directive-include-fatal.mk
+unit-tests/directive-include.exp
+unit-tests/directive-include.mk
unit-tests/directive-info.exp
unit-tests/directive-info.mk
+unit-tests/directive-sinclude.exp
+unit-tests/directive-sinclude.mk
unit-tests/directive-undef.exp
unit-tests/directive-undef.mk
unit-tests/directive-unexport-env.exp
@@ -317,20 +341,20 @@ unit-tests/forloop.exp
unit-tests/forloop.mk
unit-tests/forsubst.exp
unit-tests/forsubst.mk
-unit-tests/hash.exp
-unit-tests/hash.mk
+unit-tests/hanoi-include.exp
+unit-tests/hanoi-include.mk
unit-tests/impsrc.exp
unit-tests/impsrc.mk
unit-tests/include-main.exp
unit-tests/include-main.mk
unit-tests/include-sub.mk
unit-tests/include-subsub.mk
+unit-tests/job-output-long-lines.exp
+unit-tests/job-output-long-lines.mk
unit-tests/lint.exp
unit-tests/lint.mk
unit-tests/make-exported.exp
unit-tests/make-exported.mk
-unit-tests/misc.exp
-unit-tests/misc.mk
unit-tests/moderrs.exp
unit-tests/moderrs.mk
unit-tests/modmatch.exp
@@ -345,10 +369,56 @@ unit-tests/opt-backwards.exp
unit-tests/opt-backwards.mk
unit-tests/opt-chdir.exp
unit-tests/opt-chdir.mk
+unit-tests/opt-debug-all.exp
+unit-tests/opt-debug-all.mk
+unit-tests/opt-debug-archive.exp
+unit-tests/opt-debug-archive.mk
+unit-tests/opt-debug-cond.exp
+unit-tests/opt-debug-cond.mk
+unit-tests/opt-debug-curdir.exp
+unit-tests/opt-debug-curdir.mk
+unit-tests/opt-debug-dir.exp
+unit-tests/opt-debug-dir.mk
+unit-tests/opt-debug-errors.exp
+unit-tests/opt-debug-errors.mk
+unit-tests/opt-debug-file.exp
+unit-tests/opt-debug-file.mk
+unit-tests/opt-debug-for.exp
+unit-tests/opt-debug-for.mk
+unit-tests/opt-debug-graph1.exp
+unit-tests/opt-debug-graph1.mk
+unit-tests/opt-debug-graph2.exp
+unit-tests/opt-debug-graph2.mk
+unit-tests/opt-debug-graph3.exp
+unit-tests/opt-debug-graph3.mk
+unit-tests/opt-debug-hash.exp
+unit-tests/opt-debug-hash.mk
+unit-tests/opt-debug-jobs.exp
+unit-tests/opt-debug-jobs.mk
+unit-tests/opt-debug-lint.exp
+unit-tests/opt-debug-lint.mk
+unit-tests/opt-debug-loud.exp
+unit-tests/opt-debug-loud.mk
+unit-tests/opt-debug-making.exp
+unit-tests/opt-debug-making.mk
+unit-tests/opt-debug-meta.exp
+unit-tests/opt-debug-meta.mk
+unit-tests/opt-debug-no-rm.exp
+unit-tests/opt-debug-no-rm.mk
+unit-tests/opt-debug-parse.exp
+unit-tests/opt-debug-parse.mk
+unit-tests/opt-debug-suff.exp
+unit-tests/opt-debug-suff.mk
+unit-tests/opt-debug-targets.exp
+unit-tests/opt-debug-targets.mk
+unit-tests/opt-debug-var.exp
+unit-tests/opt-debug-var.mk
+unit-tests/opt-debug-varraw.exp
+unit-tests/opt-debug-varraw.mk
+unit-tests/opt-debug-x-trace.exp
+unit-tests/opt-debug-x-trace.mk
unit-tests/opt-debug.exp
unit-tests/opt-debug.mk
-unit-tests/opt-debug-g1.exp
-unit-tests/opt-debug-g1.mk
unit-tests/opt-define.exp
unit-tests/opt-define.mk
unit-tests/opt-env.exp
@@ -395,6 +465,8 @@ unit-tests/opt.exp
unit-tests/opt.mk
unit-tests/order.exp
unit-tests/order.mk
+unit-tests/parse-var.exp
+unit-tests/parse-var.mk
unit-tests/phony-end.exp
unit-tests/phony-end.mk
unit-tests/posix.exp
@@ -425,12 +497,34 @@ unit-tests/sh-single-line.exp
unit-tests/sh-single-line.mk
unit-tests/sh.exp
unit-tests/sh.mk
-unit-tests/suffixes.exp
-unit-tests/suffixes.mk
+unit-tests/shell-csh.exp
+unit-tests/shell-csh.mk
+unit-tests/shell-custom.exp
+unit-tests/shell-custom.mk
+unit-tests/shell-ksh.exp
+unit-tests/shell-ksh.mk
+unit-tests/shell-sh.exp
+unit-tests/shell-sh.mk
+unit-tests/suff-add-later.exp
+unit-tests/suff-add-later.mk
+unit-tests/suff-clear-regular.exp
+unit-tests/suff-clear-regular.mk
+unit-tests/suff-clear-single.exp
+unit-tests/suff-clear-single.mk
+unit-tests/suff-lookup.exp
+unit-tests/suff-lookup.mk
+unit-tests/suff-main.exp
+unit-tests/suff-main.mk
+unit-tests/suff-rebuild.exp
+unit-tests/suff-rebuild.mk
+unit-tests/suff-transform-endless.exp
+unit-tests/suff-transform-endless.mk
+unit-tests/suff-transform-expand.exp
+unit-tests/suff-transform-expand.mk
+unit-tests/suff-transform-select.exp
+unit-tests/suff-transform-select.mk
unit-tests/sunshcmd.exp
unit-tests/sunshcmd.mk
-unit-tests/sysv.exp
-unit-tests/sysv.mk
unit-tests/ternary.exp
unit-tests/ternary.mk
unit-tests/unexport-env.exp
@@ -461,8 +555,12 @@ 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-op-sunsh.exp
+unit-tests/var-op-sunsh.mk
unit-tests/var-op.exp
unit-tests/var-op.mk
+unit-tests/var-recursive.exp
+unit-tests/var-recursive.mk
unit-tests/varcmd.exp
unit-tests/varcmd.mk
unit-tests/vardebug.exp
@@ -555,12 +653,12 @@ unit-tests/varname-dot-alltargets.exp
unit-tests/varname-dot-alltargets.mk
unit-tests/varname-dot-curdir.exp
unit-tests/varname-dot-curdir.mk
-unit-tests/varname-dot-includes.exp
-unit-tests/varname-dot-includes.mk
unit-tests/varname-dot-includedfromdir.exp
unit-tests/varname-dot-includedfromdir.mk
unit-tests/varname-dot-includedfromfile.exp
unit-tests/varname-dot-includedfromfile.mk
+unit-tests/varname-dot-includes.exp
+unit-tests/varname-dot-includes.mk
unit-tests/varname-dot-libs.exp
unit-tests/varname-dot-libs.mk
unit-tests/varname-dot-make-dependfile.exp
@@ -623,8 +721,12 @@ unit-tests/varname-empty.exp
unit-tests/varname-empty.mk
unit-tests/varname-make.exp
unit-tests/varname-make.mk
+unit-tests/varname-make_print_var_on_error-jobs.exp
+unit-tests/varname-make_print_var_on_error-jobs.mk
unit-tests/varname-make_print_var_on_error.exp
unit-tests/varname-make_print_var_on_error.mk
+unit-tests/varname-makefile.exp
+unit-tests/varname-makefile.mk
unit-tests/varname-makeflags.exp
unit-tests/varname-makeflags.mk
unit-tests/varname-pwd.exp
@@ -635,6 +737,10 @@ unit-tests/varname.exp
unit-tests/varname.mk
unit-tests/varparse-dynamic.exp
unit-tests/varparse-dynamic.mk
+unit-tests/varparse-mod.exp
+unit-tests/varparse-mod.mk
+unit-tests/varparse-undef-partial.exp
+unit-tests/varparse-undef-partial.mk
unit-tests/varquote.exp
unit-tests/varquote.mk
unit-tests/varshell.exp
Modified: vendor/NetBSD/bmake/dist/Makefile
==============================================================================
--- vendor/NetBSD/bmake/dist/Makefile Sat Nov 7 19:17:37 2020 (r367459)
+++ vendor/NetBSD/bmake/dist/Makefile Sat Nov 7 19:39:21 2020 (r367460)
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.112 2020/08/28 16:26:17 sjg Exp $
+# $Id: Makefile,v 1.113 2020/10/26 17:55:09 sjg Exp $
PROG= bmake
@@ -20,7 +20,6 @@ SRCS= \
metachar.c \
parse.c \
str.c \
- strlist.c \
suff.c \
targ.c \
trace.c \
Modified: vendor/NetBSD/bmake/dist/VERSION
==============================================================================
--- vendor/NetBSD/bmake/dist/VERSION Sat Nov 7 19:17:37 2020 (r367459)
+++ vendor/NetBSD/bmake/dist/VERSION Sat Nov 7 19:39:21 2020 (r367460)
@@ -1,2 +1,2 @@
# keep this compatible with sh and make
-_MAKE_VERSION=20200902
+_MAKE_VERSION=20201101
Modified: vendor/NetBSD/bmake/dist/arch.c
==============================================================================
--- vendor/NetBSD/bmake/dist/arch.c Sat Nov 7 19:17:37 2020 (r367459)
+++ vendor/NetBSD/bmake/dist/arch.c Sat Nov 7 19:39:21 2020 (r367460)
@@ -1,4 +1,4 @@
-/* $NetBSD: arch.c,v 1.107 2020/08/30 11:15:05 rillig Exp $ */
+/* $NetBSD: arch.c,v 1.151 2020/10/31 18:41:07 rillig Exp $ */
/*
* Copyright (c) 1988, 1989, 1990, 1993
@@ -68,19 +68,6 @@
* SUCH DAMAGE.
*/
-#ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: arch.c,v 1.107 2020/08/30 11:15:05 rillig Exp $";
-#else
-#include <sys/cdefs.h>
-#ifndef lint
-#if 0
-static char sccsid[] = "@(#)arch.c 8.2 (Berkeley) 1/2/94";
-#else
-__RCSID("$NetBSD: arch.c,v 1.107 2020/08/30 11:15:05 rillig Exp $");
-#endif
-#endif /* not lint */
-#endif
-
/*-
* arch.c --
* Functions to manipulate libraries, archives and their members.
@@ -92,52 +79,53 @@ __RCSID("$NetBSD: arch.c,v 1.107 2020/08/30 11:15:05 r
* is referenced.
*
* The interface to this module is:
- * Arch_ParseArchive Given an archive specification, return a list
- * of GNode's, one for each member in the spec.
- * FALSE is returned if the specification is
- * invalid for some reason.
+ * Arch_ParseArchive
+ * Given an archive specification, return a list
+ * of GNode's, one for each member in the spec.
+ * FALSE is returned if the specification is
+ * invalid for some reason.
*
- * Arch_Touch Alter the modification time of the archive
- * member described by the given node to be
- * the current time.
+ * Arch_Touch Alter the modification time of the archive
+ * member described by the given node to be
+ * the current time.
*
- * Arch_TouchLib Update the modification time of the library
- * described by the given node. This is special
- * because it also updates the modification time
- * of the library's table of contents.
+ * Arch_TouchLib Update the modification time of the library
+ * described by the given node. This is special
+ * because it also updates the modification time
+ * of the library's table of contents.
*
- * Arch_MTime Find the modification time of a member of
- * an archive *in the archive*. The time is also
- * placed in the member's GNode. Returns the
- * modification time.
+ * Arch_MTime Find the modification time of a member of
+ * an archive *in the archive*. The time is also
+ * placed in the member's GNode. Returns the
+ * modification time.
*
- * Arch_MemTime Find the modification time of a member of
- * an archive. Called when the member doesn't
- * already exist. Looks in the archive for the
- * modification time. Returns the modification
- * time.
+ * Arch_MemTime Find the modification time of a member of
+ * an archive. Called when the member doesn't
+ * already exist. Looks in the archive for the
+ * modification time. Returns the modification
+ * time.
*
- * Arch_FindLib Search for a library along a path. The
- * library name in the GNode should be in
- * -l<name> format.
+ * Arch_FindLib Search for a library along a path. The
+ * library name in the GNode should be in
+ * -l<name> format.
*
- * Arch_LibOODate Special function to decide if a library node
- * is out-of-date.
+ * Arch_LibOODate Special function to decide if a library node
+ * is out-of-date.
*
- * Arch_Init Initialize this module.
+ * Arch_Init Initialize this module.
*
- * Arch_End Cleanup this module.
+ * Arch_End Clean up this module.
*/
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/time.h>
-#include <sys/param.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+#include <sys/param.h>
#ifdef HAVE_AR_H
-#include <ar.h>
+#include <ar.h>
#else
struct ar_hdr {
char ar_name[16]; /* name */
@@ -153,18 +141,18 @@ struct ar_hdr {
};
#endif
#if defined(HAVE_RANLIB_H) && !(defined(__ELF__) || defined(NO_RANLIB))
-#include <ranlib.h>
+#include <ranlib.h>
#endif
-#include <stdio.h>
-#include <stdlib.h>
#ifdef HAVE_UTIME_H
-#include <utime.h>
+#include <utime.h>
#endif
-#include "make.h"
-#include "hash.h"
-#include "dir.h"
+#include "make.h"
+#include "dir.h"
+/* "@(#)arch.c 8.2 (Berkeley) 1/2/94" */
+MAKE_RCSID("$NetBSD: arch.c,v 1.151 2020/10/31 18:41:07 rillig Exp $");
+
#ifdef TARGET_MACHINE
#undef MAKE_MACHINE
#define MAKE_MACHINE TARGET_MACHINE
@@ -174,17 +162,19 @@ struct ar_hdr {
#define MAKE_MACHINE_ARCH TARGET_MACHINE_ARCH
#endif
-static Lst archives; /* Lst of archives we've already examined */
+typedef struct List ArchList;
+typedef struct ListNode ArchListNode;
+static ArchList *archives; /* The archives we've already examined */
+
typedef struct Arch {
- char *name; /* Name of archive */
- Hash_Table members; /* All the members of the archive described
- * by <name, struct ar_hdr *> key/value pairs */
- char *fnametab; /* Extended name table strings */
- size_t fnamesize; /* Size of the string table */
+ char *name; /* Name of archive */
+ HashTable members; /* All the members of the archive described
+ * by <name, struct ar_hdr *> key/value pairs */
+ char *fnametab; /* Extended name table strings */
+ size_t fnamesize; /* Size of the string table */
} Arch;
-static struct ar_hdr *ArchStatMember(const char *, const char *, Boolean);
static FILE *ArchFindMember(const char *, const char *,
struct ar_hdr *, const char *);
#if defined(__svr4__) || defined(__SVR4) || defined(__ELF__)
@@ -219,25 +209,22 @@ static int ArchSVR4Entry(Arch *, char *, size_t, FILE
# define SARMAG 8
#endif
-#define AR_MAX_NAME_LEN (sizeof(arh.AR_NAME)-1)
#ifdef CLEANUP
static void
ArchFree(void *ap)
{
- Arch *a = (Arch *)ap;
- Hash_Search search;
- Hash_Entry *entry;
+ Arch *a = ap;
+ HashIter hi;
/* Free memory from hash entries */
- for (entry = Hash_EnumFirst(&a->members, &search);
- entry != NULL;
- entry = Hash_EnumNext(&search))
- free(Hash_GetValue(entry));
+ HashIter_Init(&hi, &a->members);
+ while (HashIter_Next(&hi) != NULL)
+ free(hi.entry->value);
free(a->name);
free(a->fnametab);
- Hash_DeleteTable(&a->members);
+ HashTable_Done(&a->members);
free(a);
}
#endif
@@ -262,46 +249,49 @@ ArchFree(void *ap)
*-----------------------------------------------------------------------
*/
Boolean
-Arch_ParseArchive(char **linePtr, Lst nodeLst, GNode *ctxt)
+Arch_ParseArchive(char **linePtr, GNodeList *nodeLst, GNode *ctxt)
{
- char *cp; /* Pointer into line */
- GNode *gn; /* New node */
- char *libName; /* Library-part of specification */
- char *memName; /* Member-part of specification */
- char saveChar; /* Ending delimiter of member-name */
- Boolean subLibName; /* TRUE if libName should have/had
- * variable substitution performed on it */
+ char *cp; /* Pointer into line */
+ GNode *gn; /* New node */
+ char *libName; /* Library-part of specification */
+ char *memName; /* Member-part of specification */
+ char saveChar; /* Ending delimiter of member-name */
+ Boolean subLibName; /* TRUE if libName should have/had
+ * variable substitution performed on it */
libName = *linePtr;
subLibName = FALSE;
- for (cp = libName; *cp != '(' && *cp != '\0'; cp++) {
+ for (cp = libName; *cp != '(' && *cp != '\0';) {
if (*cp == '$') {
/*
* Variable spec, so call the Var module to parse the puppy
* so we can safely advance beyond it...
*/
- int length;
- void *result_freeIt;
- const char *result;
+ const char *nested_p = cp;
+ void *result_freeIt;
+ const char *result;
Boolean isError;
- result = Var_Parse(cp, ctxt, VARE_UNDEFERR|VARE_WANTRES,
- &length, &result_freeIt);
+ (void)Var_Parse(&nested_p, ctxt, VARE_UNDEFERR|VARE_WANTRES,
+ &result, &result_freeIt);
+ /* TODO: handle errors */
isError = result == var_Error;
free(result_freeIt);
if (isError)
return FALSE;
subLibName = TRUE;
- cp += length - 1;
- }
+ cp += nested_p - cp;
+ } else
+ cp++;
}
*cp++ = '\0';
if (subLibName) {
- libName = Var_Subst(libName, ctxt, VARE_UNDEFERR|VARE_WANTRES);
+ (void)Var_Subst(libName, ctxt, VARE_UNDEFERR|VARE_WANTRES, &libName);
+ /* TODO: handle errors */
}
@@ -311,25 +301,25 @@ Arch_ParseArchive(char **linePtr, Lst nodeLst, GNode *
* place and skip to the end of it (either white-space or
* a close paren).
*/
- Boolean doSubst = FALSE; /* TRUE if need to substitute in memName */
+ Boolean doSubst = FALSE; /* TRUE if need to substitute in memName */
- while (*cp != '\0' && *cp != ')' && isspace ((unsigned char)*cp)) {
- cp++;
- }
+ pp_skip_whitespace(&cp);
+
memName = cp;
- while (*cp != '\0' && *cp != ')' && !isspace ((unsigned char)*cp)) {
+ while (*cp != '\0' && *cp != ')' && !ch_isspace(*cp)) {
if (*cp == '$') {
/*
* Variable spec, so call the Var module to parse the puppy
* so we can safely advance beyond it...
*/
- int length;
- void *freeIt;
+ void *freeIt;
const char *result;
Boolean isError;
+ const char *nested_p = cp;
- result = Var_Parse(cp, ctxt, VARE_UNDEFERR|VARE_WANTRES,
- &length, &freeIt);
+ (void)Var_Parse(&nested_p, ctxt, VARE_UNDEFERR|VARE_WANTRES,
+ &result, &freeIt);
+ /* TODO: handle errors */
isError = result == var_Error;
free(freeIt);
@@ -337,7 +327,7 @@ Arch_ParseArchive(char **linePtr, Lst nodeLst, GNode *
return FALSE;
doSubst = TRUE;
- cp += length;
+ cp += nested_p - cp;
} else {
cp++;
}
@@ -376,11 +366,13 @@ Arch_ParseArchive(char **linePtr, Lst nodeLst, GNode *
* later.
*/
if (doSubst) {
- char *buf;
- char *sacrifice;
- char *oldMemName = memName;
+ char *buf;
+ char *sacrifice;
+ char *oldMemName = memName;
- memName = Var_Subst(memName, ctxt, VARE_UNDEFERR | VARE_WANTRES);
+ (void)Var_Subst(memName, ctxt, VARE_UNDEFERR|VARE_WANTRES,
+ &memName);
+ /* TODO: handle errors */
/*
* Now form an archive spec and recurse to deal with nested
@@ -395,85 +387,48 @@ Arch_ParseArchive(char **linePtr, Lst nodeLst, GNode *
* Just create an ARCHV node for the thing and let
* SuffExpandChildren handle it...
*/
- gn = Targ_FindNode(buf, TARG_CREATE);
+ gn = Targ_GetNode(buf);
+ gn->type |= OP_ARCHV;
+ Lst_Append(nodeLst, gn);
- if (gn == NULL) {
- free(buf);
- return FALSE;
- } else {
- gn->type |= OP_ARCHV;
- Lst_Append(nodeLst, gn);
- }
} else if (!Arch_ParseArchive(&sacrifice, nodeLst, ctxt)) {
- /*
- * Error in nested call -- free buffer and return FALSE
- * ourselves.
- */
+ /* Error in nested call. */
free(buf);
return FALSE;
}
- /*
- * Free buffer and continue with our work.
- */
free(buf);
- } else if (Dir_HasWildcards(memName)) {
- Lst members = Lst_Init();
- Buffer nameBuf;
- Buf_Init(&nameBuf, 0);
+ } else if (Dir_HasWildcards(memName)) {
+ StringList *members = Lst_New();
Dir_Expand(memName, dirSearchPath, members);
+
while (!Lst_IsEmpty(members)) {
char *member = Lst_Dequeue(members);
-
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-vendor
mailing list