#!/bin/sh

# 13.10.2007 Volker Quetschke
# Check that SHELLCMDQUOTE adds the characters to the command.
# issue 81252

: ${DMAKEPROG:=dmake}
file1="mfile1.mk"
tmpfiles="$file1"

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!:=printf
SHELLFLAGS!:=

SHELLCMDQUOTE=X

all :
	@+testtest

EOT

output=`eval ${DMAKEPROG} -rf $file1`
result=$?

if test "$result" = "0" && test "$output" = "XtesttestX" ; then
  # OK
  dummy=1
else
  echo "Wrong result: ${output}"
  result=1
fi 
 
test $result -eq 0 && echo "Success - Cleaning up" && rm -f ${tmpfiles}
test $result -ne 0 && echo "Failure!"
exit $result


syntax highlighted by Code2HTML, v. 0.9.1