Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.bin/make/unit-tests make(1): demonstrate unnecessary cre...
details: https://anonhg.NetBSD.org/src/rev/afce5222ac29
branches: trunk
changeset: 980250:afce5222ac29
user: rillig <rillig%NetBSD.org@localhost>
date: Fri Jan 29 22:38:17 2021 +0000
description:
make(1): demonstrate unnecessary creation of empty files in jobs mode
diffstat:
distrib/sets/lists/tests/mi | 4 +++-
usr.bin/make/unit-tests/Makefile | 3 ++-
usr.bin/make/unit-tests/jobs-empty-commands.exp | 2 ++
usr.bin/make/unit-tests/jobs-empty-commands.mk | 17 +++++++++++++++++
4 files changed, 24 insertions(+), 2 deletions(-)
diffs (62 lines):
diff -r 7faeeeba5601 -r afce5222ac29 distrib/sets/lists/tests/mi
--- a/distrib/sets/lists/tests/mi Fri Jan 29 15:49:55 2021 +0000
+++ b/distrib/sets/lists/tests/mi Fri Jan 29 22:38:17 2021 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1012 2021/01/17 23:00:41 rillig Exp $
+# $NetBSD: mi,v 1.1013 2021/01/29 22:38:17 rillig Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -5146,6 +5146,8 @@
./usr/tests/usr.bin/make/unit-tests/job-flags.mk tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/make/unit-tests/job-output-long-lines.exp tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/make/unit-tests/job-output-long-lines.mk tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/make/unit-tests/jobs-empty-commands.exp tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/make/unit-tests/jobs-empty-commands.mk tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/make/unit-tests/jobs-error-indirect.exp tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/make/unit-tests/jobs-error-indirect.mk tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/make/unit-tests/jobs-error-nested-make.exp tests-usr.bin-tests compattestfile,atf
diff -r 7faeeeba5601 -r afce5222ac29 usr.bin/make/unit-tests/Makefile
--- a/usr.bin/make/unit-tests/Makefile Fri Jan 29 15:49:55 2021 +0000
+++ b/usr.bin/make/unit-tests/Makefile Fri Jan 29 22:38:17 2021 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.262 2021/01/23 07:34:00 rillig Exp $
+# $NetBSD: Makefile,v 1.263 2021/01/29 22:38:17 rillig Exp $
#
# Unit tests for make(1)
#
@@ -201,6 +201,7 @@
TESTS+= include-main
TESTS+= job-flags
TESTS+= job-output-long-lines
+TESTS+= jobs-empty-commands
TESTS+= jobs-error-indirect
TESTS+= jobs-error-nested
TESTS+= jobs-error-nested-make
diff -r 7faeeeba5601 -r afce5222ac29 usr.bin/make/unit-tests/jobs-empty-commands.exp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/usr.bin/make/unit-tests/jobs-empty-commands.exp Fri Jan 29 22:38:17 2021 +0000
@@ -0,0 +1,2 @@
+action
+exit status 0
diff -r 7faeeeba5601 -r afce5222ac29 usr.bin/make/unit-tests/jobs-empty-commands.mk
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/usr.bin/make/unit-tests/jobs-empty-commands.mk Fri Jan 29 22:38:17 2021 +0000
@@ -0,0 +1,17 @@
+# $NetBSD: jobs-empty-commands.mk,v 1.1 2021/01/29 22:38:17 rillig Exp $
+#
+# In jobs mode, the shell commands for creating a target are written to a
+# temporary file first, which is then run by the shell. In chains of
+# dependencies, these files would end up empty. This can be avoided easily.
+#
+# https://mail-index.netbsd.org/current-users/2021/01/26/msg040215.html
+
+.MAKEFLAGS: -j1
+#.MAKEFLAGS: -dn # to see the created temporary files
+
+all: .PHONY step-1
+.for i i_plus_1 in ${:U:range=100:@i@$i $i@:[2..199]}
+step-$i: .PHONY step-${i_plus_1}
+.endfor
+step-100: .PHONY
+ @echo 'action'
Home |
Main Index |
Thread Index |
Old Index