summaryrefslogtreecommitdiff
path: root/dmake/tests/recipes-5
diff options
context:
space:
mode:
Diffstat (limited to 'dmake/tests/recipes-5')
-rwxr-xr-xdmake/tests/recipes-562
1 files changed, 62 insertions, 0 deletions
diff --git a/dmake/tests/recipes-5 b/dmake/tests/recipes-5
new file mode 100755
index 000000000000..b8887212a272
--- /dev/null
+++ b/dmake/tests/recipes-5
@@ -0,0 +1,62 @@
+#!/bin/sh
+
+# 13.11.2006 Volker Quetschke
+# Test @@ recipe property.
+# (issue 71422)
+
+: ${DMAKEPROG:=dmake}
+file1="mfile1.mk"
+file2="ofile1.out"
+tmpfiles="$file1 $file2"
+
+trap '{ echo "trapped signal - removing temporary files" ; rm -rf $tmpfiles ; }' 1 2 3 15
+
+trap 'rm -rf $tmpfiles' 1 2 3 15
+
+# Remember to quote variables in generated makefiles( $ -> \$ ).
+cat > $file1 <<EOT
+# Test @@ recipe
+SHELL*:=/bin/sh
+SHELLFLAGS*:=-ce
+
+all :
+ @@+echo someoutput > $file2
+ @@+echo something
+EOT
+
+output1=`eval ${DMAKEPROG} -r -f $file1`
+result1=$?
+if test "$output1" != ""; then
+ echo "Wrong result: $output1"
+ result1=1
+fi
+if test -f $file2; then
+ if test `cat $file2 ` != "someoutput"; then
+ echo "Wrong file content: `cat $file2`"
+ result1=1
+ fi
+else
+ echo "No such file : $file2"
+ result1=1
+fi
+
+# Test if -vr enables the output again
+output2=`eval ${DMAKEPROG} -vr -rf $file1`
+result2=$?
+if echo $output2 | grep -v 'echo someoutput > ofile1.out'; then
+ echo "Missing output: echo someoutput > ofile1.out"
+ result2=1
+fi
+if echo $output2 | grep -v 'something'; then
+ echo "Missing output: something"
+ result2=1
+fi
+
+if test $result1 -eq 0 -a $result2 -eq 0; then
+ echo "Success - Cleaning up"
+ rm -f ${tmpfiles}
+ exit 0
+else
+ echo "Failure!"
+ exit 1
+fi