diff options
Diffstat (limited to 'tools/regression/usr.bin')
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 |