office-gobmx/dmake/tests/macros-5
Vladimir Glazounov 4545083594 INTEGRATION: CWS dmake47 (1.1.2); FILE ADDED
2006/09/29 18:55:42 vq 1.1.2.2: #i69821# Fix testcase.
2006/09/28 21:42:38 vq 1.1.2.1: #i69821# Fix TMD macro and add testcase.
2007-01-18 08:41:09 +00:00

68 lines
1.2 KiB
Bash
Executable file

#!/bin/sh
# 24.09.2006 Volker Quetschke
# TMD is sometimes set incorrectly (issue 69821).
: ${DMAKEPROG:=dmake}
file1="mfile1.mk"
file2="mfile2.mk"
file3="test1/aaa"
file4="test2/aaa"
tmpfiles="$file1 $file2"
trap '{ echo "trapped signal - removing temporary files" ; rm -rf $tmpfiles test1 test2; }' 1 2 3 15
# Remove files from prior failed run
rm -rf $tmpfiles test1 test2
# Remember to quote variables in generated makefiles( $ -> \$ ).
# Testcase 1
cat > $file1 <<EOT
SHELL*:=/bin/sh
SHELLFLAGS*:=-ce
all :
+@echo \$(TMD)
EOT
# Testcase 2
mkdir -p "$file3"
mkdir -p "$file4"
cat > $file2 <<EOT
SHELL*:=/bin/sh
SHELLFLAGS*:=-ce
all ".SETDIR=../../$file3" :
+@echo \$(TMD)
EOT
output1=`eval ${DMAKEPROG} -r -f $file1`
result1=$?
output2=`eval cd $file4 ; ../../${DMAKEPROG} -r -f ../../$file2`
result2=$?
if test "$output1" != "."; then
echo "Test 1: Wrong result: $output1"
result1=1
else
echo " Subtest 1: OK"
fi
if test "$output2" != "../../test2/aaa"; then
echo "Test 2: Wrong result: $output2"
result2=1
else
echo " Subtest 2: OK"
fi
if test $result1 -eq 0 -a $result2 -eq 0; then
echo "Success - Cleaning up"
rm -rf $tmpfiles test1 test2
exit
result=0
else
echo "Failure!"
result=1
fi
exit $result