The branch main has been updated by sjg:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=532d4fbfa0829be624bd1eea0e264b42d7dbea75

commit 532d4fbfa0829be624bd1eea0e264b42d7dbea75
Merge: da10709dede1 31a96ca5f0b6
Author:     Simon J. Gerraty <[email protected]>
AuthorDate: 2022-07-27 15:58:09 +0000
Commit:     Simon J. Gerraty <[email protected]>
CommitDate: 2022-07-27 16:00:30 +0000

    Update to bmake-20220726
    
    Merge commit '31a96ca5f0b6e5f8f7fa8cecf3a5c4354b3b096f'

 contrib/bmake/ChangeLog           |  6 ++++++
 contrib/bmake/Makefile            | 21 +++++++++++++++++++--
 contrib/bmake/VERSION             |  2 +-
 contrib/bmake/unit-tests/Makefile |  3 ++-
 usr.bin/bmake/Makefile            | 12 ++++++++----
 usr.bin/bmake/Makefile.config     |  2 +-
 usr.bin/bmake/unit-tests/Makefile |  2 +-
 7 files changed, 38 insertions(+), 10 deletions(-)

diff --cc contrib/bmake/Makefile
index 82d9db52af76,000000000000..201e4869dc3f
mode 100644,000000..100644
--- a/contrib/bmake/Makefile
+++ b/contrib/bmake/Makefile
@@@ -1,221 -1,0 +1,238 @@@
- #     $Id: Makefile,v 1.117 2021/12/04 18:51:30 sjg Exp $
++#     $Id: Makefile,v 1.120 2022/07/26 23:02:54 sjg Exp $
 +
 +PROG= bmake
 +
 +SRCS= \
 +      arch.c \
 +      buf.c \
 +      compat.c \
 +      cond.c \
 +      dir.c \
 +      for.c \
 +      hash.c \
 +      job.c \
 +      lst.c \
 +      main.c \
 +      make.c \
 +      make_malloc.c \
 +      meta.c \
 +      metachar.c \
 +      parse.c \
 +      str.c \
 +      suff.c \
 +      targ.c \
 +      trace.c \
 +      util.c \
 +      var.c
 +
 +.-include "VERSION"
 +.-include "Makefile.inc"
 +
 +# this file gets generated by configure
 +.-include "Makefile.config"
 +
 +.if !empty(LIBOBJS)
 +SRCS+= ${LIBOBJS:T:.o=.c}
 +.endif
 +
 +# just in case
 +prefix?= /usr
 +srcdir?= ${.CURDIR}
 +
 +DEFAULT_SYS_PATH?= ${prefix}/share/mk
 +
 +CPPFLAGS+= -DUSE_META
 +CFLAGS+= ${CPPFLAGS}
 +CFLAGS+= -D_PATH_DEFSYSPATH=\"${DEFAULT_SYS_PATH}\"
 +CFLAGS+= -I. -I${srcdir} ${XDEFS} -DMAKE_NATIVE
 +CFLAGS+= ${COPTS.${.ALLSRC:M*.c:T:u}}
 +COPTS.main.c+= "-DMAKE_VERSION=\"${_MAKE_VERSION}\""
 +
 +.for x in FORCE_MACHINE FORCE_MACHINE_ARCH
 +.ifdef $x
 +COPTS.main.c+= "-D$x=\"${$x}\""
 +.endif
 +.endfor
 +
 +# meta mode can be useful even without filemon
 +# should be set by now
 +USE_FILEMON ?= no
 +.if ${USE_FILEMON:tl} != "no"
 +.PATH:        ${srcdir}/filemon
 +SRCS+=        filemon_${USE_FILEMON}.c
 +COPTS.meta.c+= -DUSE_FILEMON -DUSE_FILEMON_${USE_FILEMON:tu}
 +COPTS.job.c+= ${COPTS.meta.c}
 +
 +.if ${USE_FILEMON} == "dev"
 +FILEMON_H ?= /usr/include/dev/filemon/filemon.h
 +.if exists(${FILEMON_H}) && ${FILEMON_H:T} == "filemon.h"
 +COPTS.filemon_dev.c += -DHAVE_FILEMON_H -I${FILEMON_H:H}
 +.endif
 +.endif                                # USE_FILEMON == dev
 +
 +.endif                                # USE_FILEMON
 +
 +.PATH:        ${srcdir}
 +
 +.if make(obj) || make(clean)
 +SUBDIR+= unit-tests
 +.endif
 +
 +# start-delete1 for bsd.after-import.mk
 +# we skip a lot of this when building as part of FreeBSD etc.
 +
 +# list of OS's which are derrived from BSD4.4
 +BSD44_LIST= NetBSD FreeBSD OpenBSD DragonFly MirBSD Bitrig
 +# we are...
 +OS := ${.MAKE.OS:U${uname -s:L:sh}}
 +# are we 4.4BSD ?
 +isBSD44:=${BSD44_LIST:M${OS}}
 +
 +.if ${isBSD44} == ""
 +MANTARGET= cat
 +INSTALL?=${srcdir}/install-sh
 +.if ${MACHINE} == "sun386"
 +# even I don't have one of these anymore :-)
 +CFLAGS+= -DPORTAR
 +.elif ${OS} != "SunOS"
 +# assume the worst
 +SRCS+= sigcompat.c
 +CFLAGS+= -DSIGNAL_FLAGS=SA_RESTART
 +.endif
 +.else
 +MANTARGET?= man
 +.endif
 +
 +# turn this on by default - ignored if we are root
 +WITH_INSTALL_AS_USER=
 +
 +# suppress with -DWITHOUT_*
 +OPTIONS_DEFAULT_YES+= \
 +      AUTOCONF_MK \
 +      INSTALL_MK \
 +      PROG_LINK
 +
 +OPTIONS_DEFAULT_NO+= \
 +      PROG_VERSION
 +
 +# process options now
 +.include <own.mk>
 +
 +.if ${MK_PROG_VERSION} == "yes"
 +PROG_NAME= ${PROG}-${_MAKE_VERSION}
 +.if ${MK_PROG_LINK} == "yes"
 +SYMLINKS+= ${PROG_NAME} ${BINDIR}/${PROG}
 +.endif
 +.endif
 +
 +EXTRACT_MAN=no
 +# end-delete1
 +
 +MAN= ${PROG}.1
 +MAN1= ${MAN}
 +
 +.if ${PROG} != "make"
 +CLEANFILES+= my.history
 +.if make(${MAN}) || !exists(${srcdir}/${MAN})
 +my.history:
 +      @(echo ".Nm"; \
 +      echo "is derived from NetBSD"; \
 +      echo ".Xr make 1 ."; \
 +      echo "It uses autoconf to facilitate portability to other platforms."; \
 +      echo ".Pp") > $@
 +
 +.NOPATH: ${MAN}
 +${MAN}:       make.1 my.history
 +      @echo making $@
 +      @sed \
 +      -e '/^.Dt/s/MAKE/${PROG:tu}/' \
 +      -e 's/^.Nx/NetBSD/' \
 +      -e '/^.Nm/s/make/${PROG}/' \
 +      -e '/^.Sh HISTORY/rmy.history' \
 +      -e '/^.Sh HISTORY/,$$s,^.Nm,make,' ${srcdir}/make.1 > $@
 +
 +all beforeinstall: ${MAN}
 +_mfromdir=.
 +.endif
 +.endif
 +
 +MANTARGET?= cat
 +MANDEST?= ${MANDIR}/${MANTARGET}1
 +
 +.if ${MANTARGET} == "cat"
 +_mfromdir=${srcdir}
 +.endif
 +
 +.include <prog.mk>
 +
 +CPPFLAGS+= -DMAKE_NATIVE -DHAVE_CONFIG_H
 +COPTS.var.c += -Wno-cast-qual
 +COPTS.job.c += -Wno-format-nonliteral
 +COPTS.parse.c += -Wno-format-nonliteral
 +COPTS.var.c += -Wno-format-nonliteral
 +
 +# Force these
 +SHAREDIR= ${SHAREDIR.bmake:U${prefix}/share}
 +BINDIR= ${BINDIR.bmake:U${prefix}/bin}
 +MANDIR= ${MANDIR.bmake:U${SHAREDIR}/man}
 +
 +.if !exists(.depend)
 +${OBJS}: config.h
 +.endif
 +
 +# start-delete2 for bsd.after-import.mk
 +
 +# make sure that MAKE_VERSION gets updated.
 +main.o: ${srcdir}/VERSION
 +
 +.if ${MK_AUTOCONF_MK} == "yes"
 +CONFIGURE_DEPS += ${.CURDIR}/VERSION
 +# we do not need or want the generated makefile
 +CONFIGURE_ARGS += --without-makefile
 +AUTOCONF_GENERATED_MAKEFILE = Makefile.config
 +.include <autoconf.mk>
 +.endif
 +SHARE_MK ?= ${SHAREDIR}/mk
 +MKSRC = ${srcdir}/mk
 +INSTALL ?= ${srcdir}/install-sh
 +
 +.if ${MK_INSTALL_MK} == "yes"
 +install: install-mk
 +.endif
 +
 +beforeinstall:
 +      test -d ${DESTDIR}${BINDIR} || ${INSTALL} -m 775 -d ${DESTDIR}${BINDIR}
 +      test -d ${DESTDIR}${MANDEST} || ${INSTALL} -m 775 -d 
${DESTDIR}${MANDEST}
 +
 +install-mk:
 +.if exists(${MKSRC}/install-mk)
 +      test -d ${DESTDIR}${SHARE_MK} || ${INSTALL} -m 775 -d 
${DESTDIR}${SHARE_MK}
 +      sh ${MKSRC}/install-mk -v -m 644 ${DESTDIR}${SHARE_MK}
 +.else
 +      @echo need to unpack mk.tar.gz under ${srcdir} or set MKSRC; false
 +.endif
 +# end-delete2
 +
 +# A simple unit-test driver to help catch regressions
 +TEST_MAKE ?= ${.OBJDIR}/${PROG:T}
- accept test:
++accept test: .NOMETA
 +      cd ${.CURDIR}/unit-tests && \
 +      MAKEFLAGS= ${TEST_MAKE} -r -m / ${.TARGET} ${TESTS:DTESTS=${TESTS:Q}}
 +
++
++.if make(test) && ${MK_AUTO_OBJ} == "yes"
++# The test target above visits unit-tests with -r -m /
++# which prevents MK_AUTO_OBJ doing its job
++# so do it here
++.if defined(MAKEOBJDIRPREFIX) || ${MAKEOBJDIR:U:M*/*} != ""
++_utobj = ${.OBJDIR}/unit-tests
++.else
++_utobj = ${.CURDIR}/unit-tests/${MAKEOBJDIR:Uobj}
++.endif
++utobj: .NOMETA
++      @test -d ${_utobj} && exit 0; \
++      echo "[Creating ${_utobj}...]"; \
++      umask ${OBJDIR_UMASK:U002}; \
++      mkdir -p ${_utobj}
++test: utobj
++.endif
diff --cc usr.bin/bmake/Makefile
index b6d741d30960,000000000000..c8d2dbd63b2b
mode 100644,000000..100644
--- a/usr.bin/bmake/Makefile
+++ b/usr.bin/bmake/Makefile
@@@ -1,177 -1,0 +1,181 @@@
 +# This is a generated file, do NOT edit!
 +# See contrib/bmake/bsd.after-import.mk
 +#
 +# $FreeBSD$
 +
 +SRCTOP?= ${.CURDIR:H:H}
 +
 +# look here first for config.h
 +CFLAGS+= -I${.CURDIR}
 +
 +# for after-import
 +CLEANDIRS+= FreeBSD
 +CLEANFILES+= bootstrap
 +
- #     $Id: Makefile,v 1.117 2021/12/04 18:51:30 sjg Exp $
++#     $Id: Makefile,v 1.120 2022/07/26 23:02:54 sjg Exp $
 +
 +PROG?=        ${.CURDIR:T}
 +
 +SRCS= \
 +      arch.c \
 +      buf.c \
 +      compat.c \
 +      cond.c \
 +      dir.c \
 +      for.c \
 +      hash.c \
 +      job.c \
 +      lst.c \
 +      main.c \
 +      make.c \
 +      make_malloc.c \
 +      meta.c \
 +      metachar.c \
 +      parse.c \
 +      str.c \
 +      suff.c \
 +      targ.c \
 +      trace.c \
 +      util.c \
 +      var.c
 +
 +.sinclude "Makefile.inc"
 +
 +# this file gets generated by configure
 +.sinclude "Makefile.config"
 +
 +.if !empty(LIBOBJS)
 +SRCS+= ${LIBOBJS:T:.o=.c}
 +.endif
 +
 +# just in case
 +prefix?= /usr
 +srcdir?= ${.CURDIR}
 +
 +DEFAULT_SYS_PATH?= ${prefix}/share/mk
 +
 +CPPFLAGS+= -DUSE_META
 +CFLAGS+= ${CPPFLAGS}
 +CFLAGS+= -D_PATH_DEFSYSPATH=\"${DEFAULT_SYS_PATH}\"
 +CFLAGS+= -I. -I${srcdir} ${XDEFS} -DMAKE_NATIVE
 +CFLAGS+= ${COPTS.${.ALLSRC:M*.c:T:u}}
 +COPTS.main.c+= "-DMAKE_VERSION=\"${_MAKE_VERSION}\""
 +
 +.for x in FORCE_MACHINE FORCE_MACHINE_ARCH
 +.ifdef $x
 +COPTS.main.c+= "-D$x=\"${$x}\""
 +.endif
 +.endfor
 +
 +# meta mode can be useful even without filemon
 +# should be set by now
 +USE_FILEMON ?= no
 +.if ${USE_FILEMON:tl} != "no"
 +.PATH:        ${srcdir}/filemon
 +SRCS+=        filemon_${USE_FILEMON}.c
 +COPTS.meta.c+= -DUSE_FILEMON -DUSE_FILEMON_${USE_FILEMON:tu}
 +COPTS.job.c+= ${COPTS.meta.c}
 +
 +.if ${USE_FILEMON} == "dev"
 +FILEMON_H ?= /usr/include/dev/filemon/filemon.h
 +.if exists(${FILEMON_H}) && ${FILEMON_H:T} == "filemon.h"
 +COPTS.filemon_dev.c += -DHAVE_FILEMON_H -I${FILEMON_H:H}
 +.endif
 +.endif                                # USE_FILEMON == dev
 +
 +.endif                                # USE_FILEMON
 +
 +.PATH:        ${srcdir}
 +
 +.if make(obj) || make(clean)
 +SUBDIR+= unit-tests
 +.endif
 +
 +
 +MAN= ${PROG}.1
 +MAN1= ${MAN}
 +
 +.if ${PROG} != "make"
 +CLEANFILES+= my.history
 +.if make(${MAN}) || !exists(${srcdir}/${MAN})
 +my.history:
 +      @(echo ".Nm"; \
 +      echo "is derived from NetBSD"; \
 +      echo ".Xr make 1 ."; \
 +      echo "It uses autoconf to facilitate portability to other platforms."; \
 +      echo ".Pp") > $@
 +
 +.NOPATH: ${MAN}
 +${MAN}:       make.1 my.history
 +      @echo making $@
 +      @sed \
 +      -e '/^.Dt/s/MAKE/${PROG:tu}/' \
 +      -e 's/^.Nx/NetBSD/' \
 +      -e '/^.Nm/s/make/${PROG}/' \
 +      -e '/^.Sh HISTORY/rmy.history' \
 +      -e '/^.Sh HISTORY/,$$s,^.Nm,make,' ${srcdir}/make.1 > $@
 +
 +all beforeinstall: ${MAN}
 +_mfromdir=.
 +.endif
 +.endif
 +
 +MANTARGET?= cat
 +MANDEST?= ${MANDIR}/${MANTARGET}1
 +
 +.if ${MANTARGET} == "cat"
 +_mfromdir=${srcdir}
 +.endif
 +
 +.include <bsd.prog.mk>
 +
 +CPPFLAGS+= -DMAKE_NATIVE -DHAVE_CONFIG_H
 +COPTS.var.c += -Wno-cast-qual
 +COPTS.job.c += -Wno-format-nonliteral
 +COPTS.parse.c += -Wno-format-nonliteral
 +COPTS.var.c += -Wno-format-nonliteral
 +
 +# Force these
 +SHAREDIR= ${SHAREDIR.bmake:U${prefix}/share}
 +BINDIR= ${BINDIR.bmake:U${prefix}/bin}
 +MANDIR= ${MANDIR.bmake:U${SHAREDIR}/man}
 +
 +.if !exists(.depend)
 +${OBJS}: config.h
 +.endif
 +
 +
 +# A simple unit-test driver to help catch regressions
 +TEST_MAKE ?= ${.OBJDIR}/${PROG:T}
 +accept test: .NOMETA
 +      cd ${.CURDIR}/unit-tests && \
 +      MAKEFLAGS= ${TEST_MAKE} -r -m / ${.TARGET} ${TESTS:DTESTS=${TESTS:Q}}
 +
 +
 +.if make(test) && ${MK_AUTO_OBJ} == "yes"
- # because of the way unit-tests is visted for test
- # the objdir will not be auto-created as expected.
- .if defined(MAKEOBJDIRPREFIX) || ${MAKEOBJDIR:Uno:M*/*} != ""
++# The test target above visits unit-tests with -r -m /
++# which prevents MK_AUTO_OBJ doing its job
++# so do it here
++.if defined(MAKEOBJDIRPREFIX) || ${MAKEOBJDIR:U:M*/*} != ""
 +_utobj = ${.OBJDIR}/unit-tests
 +.else
 +_utobj = ${.CURDIR}/unit-tests/${MAKEOBJDIR:Uobj}
 +.endif
 +utobj: .NOMETA
++      @test -d ${_utobj} && exit 0; \
++      echo "[Creating ${_utobj}...]"; \
++      umask ${OBJDIR_UMASK:U002}; \
 +      mkdir -p ${_utobj}
 +test: utobj
 +.endif
 +
 +# override some simple things
 +BINDIR= /usr/bin
 +MANDIR= /usr/share/man/man
 +
 +# make sure we get this
 +CFLAGS+= ${COPTS.${.IMPSRC:T}}
 +
 +after-import: ${SRCTOP}/contrib/bmake/bsd.after-import.mk
 +      cd ${.CURDIR} && ${.MAKE} -f ${SRCTOP}/contrib/bmake/bsd.after-import.mk
 +
diff --cc usr.bin/bmake/Makefile.config
index fa48f4a88b00,000000000000..f92abbc61dbf
mode 100644,000000..100644
--- a/usr.bin/bmake/Makefile.config
+++ b/usr.bin/bmake/Makefile.config
@@@ -1,27 -1,0 +1,27 @@@
 +# This is a generated file, do NOT edit!
 +# See contrib/bmake/bsd.after-import.mk
 +#
 +# $FreeBSD$
 +
 +SRCTOP?= ${.CURDIR:H:H}
 +
 +# things set by configure
 +
- _MAKE_VERSION?=20220724
++_MAKE_VERSION?=20220726
 +
 +prefix?= /usr
 +srcdir= ${SRCTOP}/contrib/bmake
 +CC?= cc
 +DEFAULT_SYS_PATH?= .../share/mk:/usr/share/mk
 +
 +CPPFLAGS+= 
 +CFLAGS+= ${CPPFLAGS} -DHAVE_CONFIG_H
 +LDFLAGS+= 
 +LIBOBJS+=  ${LIBOBJDIR}stresep$U.o
 +LDADD+= 
 +USE_META?= yes
 +USE_FILEMON?= dev
 +FILEMON_H?= /usr/include/dev/filemon/filemon.h
 +BMAKE_PATH_MAX?= 1024
 +# used if MAXPATHLEN not defined
 +CPPFLAGS+= -DBMAKE_PATH_MAX=${BMAKE_PATH_MAX}
diff --cc usr.bin/bmake/unit-tests/Makefile
index a4023c7a98fc,000000000000..2a0bbcb3c441
mode 100644,000000..100644
--- a/usr.bin/bmake/unit-tests/Makefile
+++ b/usr.bin/bmake/unit-tests/Makefile
@@@ -1,829 -1,0 +1,829 @@@
 +# This is a generated file, do NOT edit!
 +# See contrib/bmake/bsd.after-import.mk
 +#
 +# $FreeBSD$
- # $Id: Makefile,v 1.181 2022/06/13 00:18:20 sjg Exp $
++# $Id: Makefile,v 1.182 2022/07/26 19:39:32 sjg Exp $
 +#
 +# $NetBSD: Makefile,v 1.318 2022/06/10 21:28:50 rillig Exp $
 +#
 +# Unit tests for make(1)
 +#
 +# The main targets are:
 +#
 +# all:
 +#     run all the tests
 +# test:
 +#     run 'all', and compare to expected results
 +# accept:
 +#     move generated output to expected results
 +#
 +# Settable variables
 +#
 +# TEST_MAKE
 +#     The make program to be tested.
 +#
 +#
 +# Adding a test case
 +#
 +# Each feature should get its own set of tests in its own suitably
 +# named makefile (*.mk), with its own set of expected results (*.exp),
 +# and it should be added to the TESTS list.
 +#
 +# A few *.mk files are helper files for other tests (such as include-sub.mk)
 +# and are thus not added to TESTS.  Such files must be ignored in
 +# src/tests/usr.bin/make/t_make.sh.
 +#
 +
 +.MAIN: all
 +
 +# we use these below but we might be an older make
 +.MAKE.OS?= ${uname -s:L:sh}
 +.MAKE.UID?= ${id -u:L:sh}
 +
 +# Each test is in a sub-makefile.
 +# Keep the list sorted.
 +# Any test that is commented out must be ignored in
 +# src/tests/usr.bin/make/t_make.sh as well.
 +#TESTS+=              archive
 +#TESTS+=              archive-suffix
 +TESTS+=               cmd-errors
 +TESTS+=               cmd-errors-jobs
 +TESTS+=               cmd-errors-lint
 +TESTS+=               cmd-interrupt
 +TESTS+=               cmdline
 +TESTS+=               cmdline-redirect-stdin
 +TESTS+=               cmdline-undefined
 +TESTS+=               comment
 +TESTS+=               compat-error
 +TESTS+=               cond-cmp-numeric
 +TESTS+=               cond-cmp-numeric-eq
 +TESTS+=               cond-cmp-numeric-ge
 +TESTS+=               cond-cmp-numeric-gt
 +TESTS+=               cond-cmp-numeric-le
 +TESTS+=               cond-cmp-numeric-lt
 +TESTS+=               cond-cmp-numeric-ne
 +TESTS+=               cond-cmp-string
 +TESTS+=               cond-cmp-unary
 +TESTS+=               cond-eof
 +TESTS+=               cond-func
 +TESTS+=               cond-func-commands
 +TESTS+=               cond-func-defined
 +TESTS+=               cond-func-empty
 +TESTS+=               cond-func-exists
 +TESTS+=               cond-func-make
 +TESTS+=               cond-func-make-main
 +TESTS+=               cond-func-target
 +TESTS+=               cond-late
 +TESTS+=               cond-op
 +TESTS+=               cond-op-and
 +TESTS+=               cond-op-and-lint
 +TESTS+=               cond-op-not
 +TESTS+=               cond-op-or
 +TESTS+=               cond-op-or-lint
 +TESTS+=               cond-op-parentheses
 +TESTS+=               cond-short
 +TESTS+=               cond-token-number
 +TESTS+=               cond-token-plain
 +TESTS+=               cond-token-string
 +TESTS+=               cond-token-var
 +TESTS+=               cond-undef-lint
 +TESTS+=               counter
 +TESTS+=               counter-append
 +TESTS+=               dep
 +TESTS+=               dep-colon
 +TESTS+=               dep-colon-bug-cross-file
 +TESTS+=               dep-double-colon
 +TESTS+=               dep-double-colon-indep
 +TESTS+=               dep-duplicate
 +TESTS+=               dep-exclam
 +TESTS+=               dep-none
 +TESTS+=               dep-op-missing
 +TESTS+=               dep-percent
 +TESTS+=               dep-var
 +TESTS+=               dep-wildcards
 +TESTS+=               depsrc
 +TESTS+=               depsrc-end
 +TESTS+=               depsrc-exec
 +TESTS+=               depsrc-ignore
 +TESTS+=               depsrc-made
 +TESTS+=               depsrc-make
 +TESTS+=               depsrc-meta
 +TESTS+=               depsrc-nometa
 +TESTS+=               depsrc-nometa_cmp
 +TESTS+=               depsrc-nopath
 +TESTS+=               depsrc-notmain
 +TESTS+=               depsrc-optional
 +TESTS+=               depsrc-phony
 +TESTS+=               depsrc-precious
 +TESTS+=               depsrc-recursive
 +TESTS+=               depsrc-silent
 +TESTS+=               depsrc-use
 +TESTS+=               depsrc-usebefore
 +TESTS+=               depsrc-usebefore-double-colon
 +TESTS+=               depsrc-wait
 +TESTS+=               deptgt
 +TESTS+=               deptgt-begin
 +TESTS+=               deptgt-begin-fail
 +TESTS+=               deptgt-begin-fail-indirect
 +TESTS+=               deptgt-default
 +TESTS+=               deptgt-delete_on_error
 +TESTS+=               deptgt-end
 +TESTS+=               deptgt-end-fail
 +TESTS+=               deptgt-end-fail-all
 +TESTS+=               deptgt-end-fail-indirect
 +TESTS+=               deptgt-end-jobs
 +TESTS+=               deptgt-error
 +TESTS+=               deptgt-ignore
 +TESTS+=               deptgt-interrupt
 +TESTS+=               deptgt-main
 +TESTS+=               deptgt-makeflags
 +TESTS+=               deptgt-no_parallel
 +TESTS+=               deptgt-nopath
 +TESTS+=               deptgt-notparallel
 +TESTS+=               deptgt-objdir
 +TESTS+=               deptgt-order
 +TESTS+=               deptgt-path
 +TESTS+=               deptgt-path-suffix
 +TESTS+=               deptgt-phony
 +TESTS+=               deptgt-posix
 +TESTS+=               deptgt-precious
 +TESTS+=               deptgt-shell
 +TESTS+=               deptgt-silent
 +TESTS+=               deptgt-silent-jobs
 +TESTS+=               deptgt-stale
 +TESTS+=               deptgt-suffixes
 +TESTS+=               dir
 +TESTS+=               dir-expand-path
 +TESTS+=               directive
 +TESTS+=               directive-dinclude
 +TESTS+=               directive-elif
 +TESTS+=               directive-elifdef
 +TESTS+=               directive-elifmake
 +TESTS+=               directive-elifndef
 +TESTS+=               directive-elifnmake
 +TESTS+=               directive-else
 +TESTS+=               directive-endfor
 +TESTS+=               directive-endif
 +TESTS+=               directive-error
 +TESTS+=               directive-export
 +TESTS+=               directive-export-env
 +TESTS+=               directive-export-impl
 +TESTS+=               directive-export-gmake
 +TESTS+=               directive-export-literal
 +TESTS+=               directive-for
 +TESTS+=               directive-for-empty
 +TESTS+=               directive-for-errors
 +TESTS+=               directive-for-escape
 +TESTS+=               directive-for-generating-endif
 +TESTS+=               directive-for-if
 +TESTS+=               directive-for-lines
 +TESTS+=               directive-for-null
 +TESTS+=               directive-hyphen-include
 +TESTS+=               directive-if
 +TESTS+=               directive-if-nested
 +TESTS+=               directive-ifdef
 +TESTS+=               directive-ifmake
 +TESTS+=               directive-ifndef
 +TESTS+=               directive-ifnmake
 +TESTS+=               directive-include
 +TESTS+=               directive-include-fatal
 +TESTS+=               directive-info
 +TESTS+=               directive-misspellings
 +TESTS+=               directive-sinclude
 +TESTS+=               directive-undef
 +TESTS+=               directive-unexport
 +TESTS+=               directive-unexport-env
 +TESTS+=               directive-warning
 +TESTS+=               dollar
 +TESTS+=               doterror
 +TESTS+=               dotwait
 +TESTS+=               error
 +TESTS+=               # escape        # broken by reverting POSIX changes
 +TESTS+=               export
 +TESTS+=               export-all
 +TESTS+=               export-env
 +TESTS+=               export-variants
 +TESTS+=               forloop
 +TESTS+=               forsubst
 +TESTS+=               gnode-submake
 +TESTS+=               hanoi-include
 +TESTS+=               impsrc
 +TESTS+=               include-main
 +TESTS+=               job-flags
 +#TESTS+=              job-output-long-lines
 +TESTS+=               job-output-null
 +TESTS+=               jobs-empty-commands
 +TESTS+=               jobs-empty-commands-error
 +TESTS+=               jobs-error-indirect
 +TESTS+=               jobs-error-nested
 +TESTS+=               jobs-error-nested-make
 +TESTS+=               lint
 +TESTS+=               make-exported
 +TESTS+=               meta-cmd-cmp
 +TESTS+=               moderrs
 +TESTS+=               modmatch
 +TESTS+=               modmisc
 +.if ${.MAKE.UID} > 0
 +TESTS+=               objdir-writable
 +.endif
 +TESTS+=               opt
 +TESTS+=               opt-backwards
 +TESTS+=               opt-chdir
 +TESTS+=               opt-debug
 +TESTS+=               opt-debug-all
 +TESTS+=               opt-debug-archive
 +TESTS+=               opt-debug-curdir
 +TESTS+=               opt-debug-cond
 +TESTS+=               opt-debug-dir
 +TESTS+=               opt-debug-errors
 +TESTS+=               opt-debug-errors-jobs
 +TESTS+=               opt-debug-file
 +TESTS+=               opt-debug-for
 +TESTS+=               opt-debug-graph1
 +TESTS+=               opt-debug-graph2
 +TESTS+=               opt-debug-graph3
 +TESTS+=               opt-debug-hash
 +#TESTS+=              opt-debug-jobs
 +TESTS+=               opt-debug-lint
 +TESTS+=               opt-debug-loud
 +TESTS+=               opt-debug-meta
 +TESTS+=               opt-debug-making
 +TESTS+=               opt-debug-no-rm
 +TESTS+=               opt-debug-parse
 +TESTS+=               opt-debug-suff
 +TESTS+=               opt-debug-targets
 +TESTS+=               opt-debug-varraw
 +TESTS+=               opt-debug-var
 +TESTS+=               opt-debug-x-trace
 +TESTS+=               opt-define
 +TESTS+=               opt-env
 +TESTS+=               opt-file
 +TESTS+=               opt-ignore
 +TESTS+=               opt-include-dir
 +TESTS+=               opt-jobs
 +TESTS+=               opt-jobs-internal
 +TESTS+=               opt-jobs-no-action
 +TESTS+=               opt-keep-going
 +TESTS+=               opt-keep-going-indirect
 +TESTS+=               opt-keep-going-multiple
 +TESTS+=               opt-m-include-dir
 +TESTS+=               opt-no-action
 +TESTS+=               opt-no-action-at-all
 +TESTS+=               opt-no-action-runflags
 +TESTS+=               opt-no-action-touch
 +TESTS+=               opt-query
 +TESTS+=               opt-raw
 +TESTS+=               opt-silent
 +TESTS+=               opt-touch
 +TESTS+=               opt-touch-jobs
 +TESTS+=               opt-tracefile
 +TESTS+=               opt-var-expanded
 +TESTS+=               opt-var-literal
 +TESTS+=               opt-version
 +TESTS+=               opt-warnings-as-errors
 +TESTS+=               opt-where-am-i
 +TESTS+=               opt-x-reduce-exported
 +TESTS+=               order
 +TESTS+=               parse
 +TESTS+=               parse-var
 +TESTS+=               phony-end
 +TESTS+=               posix
 +TESTS+=               # posix1        # broken by reverting POSIX changes
 +TESTS+=               recursive
 +TESTS+=               sh
 +TESTS+=               sh-dots
 +TESTS+=               sh-errctl
 +TESTS+=               sh-flags
 +TESTS+=               sh-jobs
 +TESTS+=               sh-jobs-error
 +TESTS+=               sh-leading-at
 +TESTS+=               sh-leading-hyphen
 +TESTS+=               sh-leading-plus
 +TESTS+=               sh-meta-chars
 +TESTS+=               sh-multi-line
 +TESTS+=               sh-single-line
 +TESTS+=               shell-csh
 +TESTS+=               shell-custom
 +.if exists(/bin/ksh)
 +TESTS+=               shell-ksh
 +.endif
 +TESTS+=               shell-sh
 +TESTS+=               suff-add-later
 +TESTS+=               suff-clear-regular
 +TESTS+=               suff-clear-single
 +TESTS+=               suff-incomplete
 +TESTS+=               suff-lookup
 +TESTS+=               suff-main
 +TESTS+=               suff-main-several
 +TESTS+=               suff-phony
 +TESTS+=               suff-rebuild
 +TESTS+=               suff-self
 +TESTS+=               suff-transform-debug
 +TESTS+=               suff-transform-endless
 +TESTS+=               suff-transform-expand
 +TESTS+=               suff-transform-select
 +TESTS+=               suff-use
 +TESTS+=               sunshcmd
 +TESTS+=               ternary
 +TESTS+=               unexport
 +TESTS+=               unexport-env
 +TESTS+=               use-inference
 +TESTS+=               var-scope
 +TESTS+=               var-scope-cmdline
 +TESTS+=               var-scope-env
 +TESTS+=               var-scope-global
 +TESTS+=               var-scope-local
 +TESTS+=               var-scope-local-legacy
 +TESTS+=               var-eval-short
 +TESTS+=               var-op
 +TESTS+=               var-op-append
 +TESTS+=               var-op-assign
 +TESTS+=               var-op-default
 +TESTS+=               var-op-expand
 +TESTS+=               var-op-shell
 +TESTS+=               var-op-sunsh
 +TESTS+=               var-recursive
 +TESTS+=               varcmd
 +TESTS+=               vardebug
 +TESTS+=               varfind
 +TESTS+=               varmisc
 +TESTS+=               varmod
 +TESTS+=               varmod-assign
 +TESTS+=               varmod-assign-shell
 +TESTS+=               varmod-defined
 +TESTS+=               varmod-edge
 +TESTS+=               varmod-exclam-shell
 +TESTS+=               varmod-extension
 +TESTS+=               varmod-gmtime
 +TESTS+=               varmod-hash
 +TESTS+=               varmod-head
 +TESTS+=               varmod-ifelse
 +TESTS+=               varmod-indirect
 +TESTS+=               varmod-l-name-to-value
 +TESTS+=               varmod-localtime
 +TESTS+=               varmod-loop
 +TESTS+=               varmod-loop-delete
 +TESTS+=               varmod-loop-varname
 +TESTS+=               varmod-match
 +TESTS+=               varmod-match-escape
 +TESTS+=               varmod-no-match
 +TESTS+=               varmod-order
 +TESTS+=               varmod-order-numeric
 +TESTS+=               varmod-order-reverse
 +TESTS+=               varmod-order-shuffle
 +TESTS+=               varmod-order-string
 +TESTS+=               varmod-path
 +TESTS+=               varmod-quote
 +TESTS+=               varmod-quote-dollar
 +TESTS+=               varmod-range
 +TESTS+=               varmod-remember
 +TESTS+=               varmod-root
 +TESTS+=               varmod-select-words
 +TESTS+=               varmod-shell
 +TESTS+=               varmod-subst
 +TESTS+=               varmod-subst-regex
 +TESTS+=               varmod-sun-shell
 +TESTS+=               varmod-sysv
 +TESTS+=               varmod-tail
 +TESTS+=               varmod-to-abs
 +TESTS+=               varmod-to-lower
 +TESTS+=               varmod-to-many-words
 +TESTS+=               varmod-to-one-word
 +TESTS+=               varmod-to-separator
 +TESTS+=               varmod-to-upper
 +TESTS+=               varmod-undefined
 +TESTS+=               varmod-unique
 +TESTS+=               varname
 +TESTS+=               varname-dollar
 +TESTS+=               varname-dot-alltargets
 +TESTS+=               varname-dot-curdir
 +TESTS+=               varname-dot-includes
 +TESTS+=               varname-dot-includedfromdir
 +TESTS+=               varname-dot-includedfromfile
 +TESTS+=               varname-dot-libs
 +TESTS+=               varname-dot-make-dependfile
 +TESTS+=               varname-dot-make-expand_variables
 +TESTS+=               varname-dot-make-exported
 +TESTS+=               varname-dot-make-jobs
 +TESTS+=               varname-dot-make-jobs-prefix
 +TESTS+=               varname-dot-make-level
 +TESTS+=               varname-dot-make-makefile_preference
 +TESTS+=               varname-dot-make-makefiles
 +TESTS+=               varname-dot-make-meta-bailiwick
 +TESTS+=               varname-dot-make-meta-created
 +TESTS+=               varname-dot-make-meta-files
 +TESTS+=               varname-dot-make-meta-ignore_filter
 +TESTS+=               varname-dot-make-meta-ignore_paths
 +TESTS+=               varname-dot-make-meta-ignore_patterns
 +TESTS+=               varname-dot-make-meta-prefix
 +TESTS+=               varname-dot-make-mode
 +TESTS+=               varname-dot-make-path_filemon
 +TESTS+=               varname-dot-make-pid
 +TESTS+=               varname-dot-make-ppid
 +TESTS+=               varname-dot-make-save_dollars
 +TESTS+=               varname-dot-makeflags
 +TESTS+=               varname-dot-makeoverrides
 +TESTS+=               varname-dot-newline
 +TESTS+=               varname-dot-objdir
 +TESTS+=               varname-dot-parsedir
 +TESTS+=               varname-dot-parsefile
 +TESTS+=               varname-dot-path
 +TESTS+=               varname-dot-shell
 +TESTS+=               varname-dot-suffixes
 +TESTS+=               varname-dot-targets
 +TESTS+=               varname-empty
 +TESTS+=               varname-make
 +TESTS+=               varname-make_print_var_on_error
 +TESTS+=               varname-make_print_var_on_error-jobs
 +TESTS+=               varname-makefile
 +TESTS+=               varname-makeflags
 +TESTS+=               varname-pwd
 +TESTS+=               varname-vpath
 +TESTS+=               varparse-dynamic
 +TESTS+=               varparse-errors
 +TESTS+=               varparse-mod
 +TESTS+=               varparse-undef-partial
 +
 +# some shells have quirks
 +_shell := ${.SHELL:tA:T}
 +.if ${_shell} == "dash" 
 +# dash fails -x output
 +BROKEN_TESTS+= opt-debug-x-trace
 +.elif ${_shell} == "ksh"
 +BROKEN_TESTS+= sh-flags
 +.endif
 +
 +.if ${.MAKE.OS:NDarwin} == ""
 +BROKEN_TESTS+= shell-ksh
 +.endif
 +
 +.if ${.MAKE.OS} == "SCO_SV"
 +BROKEN_TESTS+= \
 +      opt-debug-graph[23] \
 +      varmod-localtime \
 +      varmod-to-separator \
 +
 +.if ${_shell} == "bash"
 +BROKEN_TESTS+= job-output-null
 +.else
 +BROKEN_TESTS+= \
 +      cmd-interrupt \
 +      job-flags \
 +
 +.endif
 +.endif
 +
 +# Some tests just do not work on some platforms or environments
 +# so allow for some filtering.
 +.if !empty(BROKEN_TESTS)
 +.warning Skipping broken tests: ${BROKEN_TESTS:O:u}
 +TESTS:= ${TESTS:${BROKEN_TESTS:S,^,N,:ts:}}
 +.endif
 +
 +# Ideas for more tests:
 +#     char-0020-space.mk
 +#     char-005C-backslash.mk
*** 344 LINES SKIPPED ***

Reply via email to