aboutsummaryrefslogtreecommitdiff
path: root/unit-tests/suff-lookup.mk
diff options
context:
space:
mode:
authorSimon J. Gerraty <sjg@FreeBSD.org>2020-11-07 19:39:21 +0000
committerSimon J. Gerraty <sjg@FreeBSD.org>2020-11-07 19:39:21 +0000
commit302da1a3d35c15cb29d76e0a939f8bcb13f7ad80 (patch)
treec2146dca82d530521c4d2cc46a95c26964311a2c /unit-tests/suff-lookup.mk
parent6bbc783f48498b808e19db4441299dc7d85a278b (diff)
downloadsrc-302da1a3d35c15cb29d76e0a939f8bcb13f7ad80.tar.gz
src-302da1a3d35c15cb29d76e0a939f8bcb13f7ad80.zip
Import bmake-20201101vendor/NetBSD/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
Notes
Notes: svn path=/vendor/NetBSD/bmake/dist/; revision=367460 svn path=/vendor/NetBSD/bmake/20201101/; revision=367461; tag=vendor/NetBSD/bmake/20201101
Diffstat (limited to 'unit-tests/suff-lookup.mk')
-rw-r--r--unit-tests/suff-lookup.mk40
1 files changed, 40 insertions, 0 deletions
diff --git a/unit-tests/suff-lookup.mk b/unit-tests/suff-lookup.mk
new file mode 100644
index 000000000000..f45dfbd92111
--- /dev/null
+++ b/unit-tests/suff-lookup.mk
@@ -0,0 +1,40 @@
+# $NetBSD: suff-lookup.mk,v 1.2 2020/10/24 03:18:22 rillig Exp $
+#
+# Demonstrate name resolution for suffixes.
+#
+# See also:
+# FindSuffByName
+
+.MAKEFLAGS: -ds
+
+all: suff-lookup.cc
+
+.SUFFIXES: .c .cc .ccc
+
+# Register '.short' before '.sho'. When searching for the transformation
+# '.sho.c', the suffix '.short' must not be found even though it starts with
+# the correct characters.
+.SUFFIXES: .short .sho .dead-end
+
+# From long to short suffix.
+.ccc.cc:
+ : 'Making ${.TARGET} from ${.IMPSRC}.'
+
+# From short to long suffix.
+.c.ccc:
+ : 'Making ${.TARGET} from ${.IMPSRC}.'
+
+.short.c:
+ : 'Making ${.TARGET} from ${.IMPSRC}.'
+.sho.c:
+ : 'Making ${.TARGET} from ${.IMPSRC}.'
+.dead-end.short:
+ : 'Making ${.TARGET} from ${.IMPSRC}.'
+
+suff-lookup.sho:
+ : 'Making ${.TARGET} out of nothing.'
+
+# Deleting all suffixes and adding them again rebuilds all of the above
+# transformation rules.
+.SUFFIXES:
+.SUFFIXES: .c .cc .ccc .short .sho .dead-end