Home | History | Annotate | Download | only in unit-tests
History log of /src/usr.bin/make/unit-tests/opt-debug-errors-jobs.exp
RevisionDateAuthorComments
 1.6  04-Jul-2024  rillig make: on error, print the targets to be made

This helps to understand situations with several nested sub-makes in
varying directories.
 1.5  26-Apr-2024  rillig make: in parallel mode, print the directory in which a job failed

When multiple targets run in parallel, the "stopped in" line may be
several lines away from the "Failed target" line, making them hard to
correlate.
 1.4  28-Nov-2021  rillig make: with the option -de in jobs mode, output expanded commands

This helps tracking down the actual cause of build failures in build
systems like NetBSD's build.sh that use highly abstracted commands that
are mainly defined in terms of variables.
 1.3  27-Nov-2021  rillig tests/make: demonstrate unhelpful debug log in case of errors

The releng build job that runs lint fails. It outputs the usage message
of lint, which doesn't include the failing option. After that, make
outputs:

*** Failed target: lint-cgdconfig
*** Failed commands:
${LINT} ${LINTFLAGS} \
${_LDFLAGS.${:Ucgdconfig}:C/-L[ ]*/-L/Wg:M-L*} \
${LOBJS.${:Ucgdconfig}} ${_LDADD.${:Ucgdconfig}}

Make doesn't output the expanded command, therefore the log doesn't show
the offending option '-pthread' that leads to the usage message.
 1.2  27-Apr-2021  rillig make: remove stray space in -de output in jobs mode

In compat mode, having a space in this place makes sense to align the
target name with the command. In jobs mode, since each command is
listed in a separate line, there is no need for the double space.
 1.1  27-Apr-2021  rillig tests/make: test the combination of -de with -j1

The test cases are the same as in opt-debug-errors.mk. The output
differs in several details though.

Even though the option '-k' is given (which is the default for any tests
that don't override it in unit-tests/Makefile), there is no message
"(continuing)" anywhere.

The failed target is printed twice. Once before the failed commands,
once after. This redundancy is not necessary and may be removed in a
follow-up commit.

The printed commands are in their unexpanded form, which may or may not
be more helpful than the expanded and space-normalized form of compat
mode. Either way, this is an unnecessary inconsistency between compat
mode and jobs mode.

In jobs mode, the message "make: stopped in $dir" is printed for each
failure, which is helpful since each of the jobs may have started in a
separate directory.

RSS XML Feed