#!/bin/sh

# 06.10.2006 Volker Quetschke
# Check that normalized targets are treated as equal.
# (issue 69742)

: ${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( $ -> \$ ).
# Check that we set AAA to set_AAA.
cat > $file1 <<EOT
SHELL*:=/bin/sh
SHELLFLAGS*:=-ce

# On cygwin add c:/temp/try5.xx to the prerequisites to test cygwin related
# normalization
all : try1.xx try2.xx ../..//d/try3.xx xxx//yyy/../../try4.xx
# c:/temp/try5.xx
	echo all

./try1.xx :
	echo try1

./././try2.xx :
	echo try2

../../d/try3.xx :
	echo try3

./xxx/..////try4.xx :
	echo try4

/cygdrive/c/temp/try5.xx :
	echo try5

EOT

output1=`eval ${DMAKEPROG} -rf $file1 2>&1 `
result1=$?


if test $result1 -eq 0 ; then
  echo "Success - Cleaning up"
  rm -rf $tmpfiles
else
  echo "Failure! dmake reported:"
  echo "$output1"
fi
exit $result


syntax highlighted by Code2HTML, v. 0.9.1