summaryrefslogtreecommitdiffstats
path: root/tools/build
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2002-11-28 13:08:09 +0000
committerru <ru@FreeBSD.org>2002-11-28 13:08:09 +0000
commita227a02ef4111c3ec07694eb87a6d6511ff3a77d (patch)
treef8d79407c98a8e7dabbb3feef2f9111550ae7ba1 /tools/build
parentd2aa2f14adccf0135fa00b1ca3b620b1bafa011e (diff)
downloadFreeBSD-src-a227a02ef4111c3ec07694eb87a6d6511ff3a77d.zip
FreeBSD-src-a227a02ef4111c3ec07694eb87a6d6511ff3a77d.tar.gz
Moved make(1) regression tests from src/Makefile to where they
belong (src/tools/regression/usr.bin/make), and use the latter to test if make(1) is adequate for building the world. Approved by: re
Diffstat (limited to 'tools/build')
-rw-r--r--tools/build/make_check/Makefile26
1 files changed, 25 insertions, 1 deletions
diff --git a/tools/build/make_check/Makefile b/tools/build/make_check/Makefile
index 57b0d8f..f4dec2e 100644
--- a/tools/build/make_check/Makefile
+++ b/tools/build/make_check/Makefile
@@ -1,7 +1,7 @@
# $FreeBSD$
# Test for broken LHS expansion.
-# This *must* case make(1) to detect a recursive variable, and fail as such.
+# This *must* cause make(1) to detect a recursive variable, and fail as such.
.if make(lhs_expn)
FOO= ${BAR}
BAR${NIL}= ${FOO}
@@ -32,6 +32,12 @@ all:
@echo "Running test lhs_expn"
@! ${MAKE} lhs_expn && true || ${MAKE} failure
@echo "PASS: Test lhs_expn detected no regression."
+ @echo "Running test notdef"
+ @${MAKE} notdef || ${MAKE} failure
+ @echo "PASS: Test notdef detected no regression."
+ @echo "Running test modifiers"
+ @${MAKE} modifiers || ${MAKE} failure
+ @echo "PASS: Test modifiers detected no regression."
.if make(double)
# Doubly-defined targets. make(1) will warn, but use the "right" one. If it
@@ -57,6 +63,24 @@ sysvmatch:
lhs_expn:
@true
+.if make(notdef)
+# make(1) claims to only evaluate a conditional as far as is necessary
+# to determine its value; that was not always the case.
+.undef notdef
+notdef:
+.if defined(notdef) && ${notdef:U}
+.endif
+.endif
+
+.if make(modifiers)
+# See if make(1) supports the C modifier.
+modifiers:
+ @if ${MAKE} -V .CURDIR:C/.// 2>&1 >/dev/null | \
+ grep -q "Unknown modifier 'C'"; then \
+ false; \
+ fi
+.endif
+
failure:
@echo "FAIL: Test failed: regression detected. See above."
@false
OpenPOWER on IntegriCloud