summaryrefslogtreecommitdiff
path: root/dmake/tests
diff options
context:
space:
mode:
authorIvo Hinkelmann <ihi@openoffice.org>2007-10-15 14:51:57 +0000
committerIvo Hinkelmann <ihi@openoffice.org>2007-10-15 14:51:57 +0000
commit8c57f7ce5654bb1e9477c270b2eeed56ad57df7a (patch)
tree35798c0e932c0fdede15f6c6c06c4eff67340637 /dmake/tests
parent67af54546cc435bff838e22b644c910d6f1b4cfb (diff)
INTEGRATION: CWS dmake411 (1.1.2); FILE ADDED
2007/10/11 20:57:13 vq 1.1.2.2: #i50092# Work around Solaris and nfs timing issues. Patch from hjs@openoffice.org. 2007/08/15 21:46:34 vq 1.1.2.1: #i80687# Add testcase.
Diffstat (limited to 'dmake/tests')
-rwxr-xr-xdmake/tests/targets-2759
1 files changed, 59 insertions, 0 deletions
diff --git a/dmake/tests/targets-27 b/dmake/tests/targets-27
new file mode 100755
index 000000000000..3ad33b4c20ff
--- /dev/null
+++ b/dmake/tests/targets-27
@@ -0,0 +1,59 @@
+#!/bin/sh
+
+# 15.08.2007 Volker Quetschke
+# Another check that the .PHONY attribute works with %-targets. This test
+# was still failing after issue 66751.
+# (issue 80687)
+
+: ${DMAKEPROG:=dmake}
+file1="mfile1.mk"
+file2="aa.x"
+file3="aa.y"
+file4="aa.z"
+tmpfiles="$file1 $file2 $file3 $file4"
+
+trap '{ echo "trapped signal - removing temporary files" ; rm -rf $tmpfiles ; }' 1 2 3 15
+
+# Remove files from prior failed run
+rm -rf $tmpfiles
+
+# Remember to quote variables in generated makefiles( $ -> \$ ).
+cat > $file1 <<EOT
+SHELL*:=/bin/sh
+SHELLFLAGS*:=-ce
+
+%.x : %.y
+ @sleep 1
+ @+printf " and \$@.\n"
+ @touch \$@
+
+aa.y .PHONY : aa.z
+ @+printf "Build \$@"
+ @touch \$@
+
+EOT
+
+# Create test environment
+touch aa.z; sleep 1; touch aa.y ; sleep 1 ;touch aa.x
+# Avoid that aa.x has the same time stamp as aa.y after
+# that has been rebuild.
+sleep 1
+
+output1=`eval ${DMAKEPROG} -rf $file1 aa.x 2>&1 `
+result1=$?
+
+if test "$output1" != "Build aa.y and aa.x."; then
+ echo "Wrong result: $output1"
+ result1=1
+else
+ echo "OK"
+fi
+
+if test $result1 -eq 0 ; then
+ echo "Success - Cleaning up"
+ rm -rf $tmpfiles
+ exit
+else
+ echo "Failure!"
+ exit 1
+fi