summaryrefslogtreecommitdiffstats
path: root/tools/regression/usr.bin
diff options
context:
space:
mode:
authorharti <harti@FreeBSD.org>2005-05-20 14:50:30 +0000
committerharti <harti@FreeBSD.org>2005-05-20 14:50:30 +0000
commite956f972dadf024409c8691ea9053a8679f3aa5f (patch)
tree2b673b0b13058d0918544a5d9f7d0f7d3943d69d /tools/regression/usr.bin
parent59ed284809e4924b6ddb0cf842cf4c40dd9baa59 (diff)
downloadFreeBSD-src-e956f972dadf024409c8691ea9053a8679f3aa5f.zip
FreeBSD-src-e956f972dadf024409c8691ea9053a8679f3aa5f.tar.gz
Add a test that test whether we can replace the shell to use by
make with another shell and set all its parameters (meta and builtins not tested here).
Diffstat (limited to 'tools/regression/usr.bin')
-rw-r--r--tools/regression/usr.bin/make/shell/replace/Makefile33
-rw-r--r--tools/regression/usr.bin/make/shell/replace/expected.status1
-rw-r--r--tools/regression/usr.bin/make/shell/replace/expected.stderr1
-rw-r--r--tools/regression/usr.bin/make/shell/replace/expected.stdout0
-rw-r--r--tools/regression/usr.bin/make/shell/replace/sh.sh6
-rw-r--r--tools/regression/usr.bin/make/shell/replace/test.t13
6 files changed, 54 insertions, 0 deletions
diff --git a/tools/regression/usr.bin/make/shell/replace/Makefile b/tools/regression/usr.bin/make/shell/replace/Makefile
new file mode 100644
index 0000000..f903f37
--- /dev/null
+++ b/tools/regression/usr.bin/make/shell/replace/Makefile
@@ -0,0 +1,33 @@
+#
+# Test that we can replace the shell and set all the shell parameters
+# (except meta and builtin which have their own test). This is done by
+# using a shell script for the shell that echoes all command line
+# arguments and its standard input. The shell name should not be one of
+# the builtin shells.
+#
+# XXX There seems to be a problem here in -j1 mode: for the line without
+# @- make should switch on echoing again, but it doesn't.
+#
+# $FreeBSD$
+
+all: shell
+ ${MAKE} test1
+ ${MAKE} -j1 test1
+
+shell: sh.sh
+ @cp ${.CURDIR}/sh.sh ${.OBJDIR}/shell
+ @chmod +x ${.OBJDIR}/shell
+
+.ifmake test1
+
+.SHELL: name="shell" path="${.OBJDIR}/shell" \
+ quiet="be quiet" echo="be verbose" filter="be verbose" \
+ echoFlag="x" errFlag="y" \
+ hasErrCtl=y check="check errors" ignore="ignore errors"
+
+.PHONY: test1
+test1:
+ -@funny $$
+ funnier $$
+
+.endif
diff --git a/tools/regression/usr.bin/make/shell/replace/expected.status b/tools/regression/usr.bin/make/shell/replace/expected.status
new file mode 100644
index 0000000..0cfbf08
--- /dev/null
+++ b/tools/regression/usr.bin/make/shell/replace/expected.status
@@ -0,0 +1 @@
+2
diff --git a/tools/regression/usr.bin/make/shell/replace/expected.stderr b/tools/regression/usr.bin/make/shell/replace/expected.stderr
new file mode 100644
index 0000000..628ea8f
--- /dev/null
+++ b/tools/regression/usr.bin/make/shell/replace/expected.stderr
@@ -0,0 +1 @@
+make: don't know how to make sh.sh. Stop
diff --git a/tools/regression/usr.bin/make/shell/replace/expected.stdout b/tools/regression/usr.bin/make/shell/replace/expected.stdout
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tools/regression/usr.bin/make/shell/replace/expected.stdout
diff --git a/tools/regression/usr.bin/make/shell/replace/sh.sh b/tools/regression/usr.bin/make/shell/replace/sh.sh
new file mode 100644
index 0000000..46169eb
--- /dev/null
+++ b/tools/regression/usr.bin/make/shell/replace/sh.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+# $FreeBSD$
+echo $@
+if ! test -t 0 ; then
+ cat
+fi
diff --git a/tools/regression/usr.bin/make/shell/replace/test.t b/tools/regression/usr.bin/make/shell/replace/test.t
new file mode 100644
index 0000000..838a605
--- /dev/null
+++ b/tools/regression/usr.bin/make/shell/replace/test.t
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+# $FreeBSD$
+
+cd `dirname $0`
+. ../../common.sh
+
+desc_test()
+{
+ echo "Check that the shell can be replaced."
+}
+
+eval_cmd $1
OpenPOWER on IntegriCloud