#!/bin/sh

# 26.01.2006 Volker Quetschke
# TMD is sometimes set incorrectly (issue 61170).

: ${DMAKEPROG:=dmake}
file1="mfile1.mk"
file2="mfile2.mk"
file3="dirwith space"
tmpfiles="$file1 $file2"

trap '{ echo "trapped signal - removing temporary files" ; rm -rf $tmpfiles "$file3"; }' 1 2 3 15

# Remove files from prior failed run
rm -rf $tmpfiles "$file3"

# Remember to quote variables in generated makefiles( $ -> \$ ).
# Testcase 1
cat > $file1 <<EOT
SHELL*:=/bin/sh 
SHELLFLAGS*:=-ce

all .SETDIR=${TMP} :
	+@echo \$(TMD)

EOT

# Testcase 2
mkdir -p "$file3"
cat > $file2 <<EOT
SHELL*:=/bin/sh 
SHELLFLAGS*:=-ce


all ".SETDIR=dirwith space" :
	+@echo \$(TMD)
EOT

output1=`eval ${DMAKEPROG} -r -f $file1`
result1=$?
output2=`eval ${DMAKEPROG} -r -f $file2`
result2=$?

if test "$output1" = ""; then
  echo "Test 1: Wrong result"
  result1=1
fi
if test "$output2" != ".."; then
  echo "Test 2: Wrong result"
  result2=1
fi

if test $result1 -eq 0 -a $result2 -eq 0; then
  echo "Success - Cleaning up"
  rm -rf $tmpfiles "$file3"
exit
  result=0
else
  echo "Failure!"
  result=1
fi
exit $result 


syntax highlighted by Code2HTML, v. 0.9.1