2 # //===--------------------------- testit ---------------------------------===//
4 # // The LLVM Compiler Infrastructure
6 # // This file is distributed under the University of Illinois Open Source
7 # // License. See LICENSE.TXT for details.
9 # //===--------------------------------------------------------------------===//
13 currentdir=`basename $currentpath`
14 while [ $currentdir != "test" ]; do
15 if [ $currentdir = "/" ]
17 echo "current directory must be in or under \"test\"."
22 currentdir=`basename $currentpath`
31 if which xcrun >/dev/null
45 OPTIONS="-std=${CXX_LANG} -stdlib=libc++"
47 OPTIONS="$OPTIONS -I$LIBCXX_ROOT/test/support"
49 if [ -z "$HEADER_INCLUDE" ]
51 HEADER_INCLUDE="-I$LIBCXX_ROOT/include"
54 if [ -z "$SOURCE_LIB" ]
56 SOURCE_LIB="-L$LIBCXX_ROOT/lib"
60 *-*-mingw* | *-*-cygwin* | *-*-win*)
70 THREAD_FLAGS=-lpthread
83 if (ls ${TEST_PREFIX}*fail.cpp > /dev/null 2>&1)
85 for FILE in $(ls ${TEST_PREFIX}*fail.cpp); do
86 if $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS -o ./$TEST_EXE > /dev/null 2>&1
89 echo "$FILE should not compile"
97 if (ls ${TEST_PREFIX}*pass.cpp > /dev/null 2>&1)
99 for FILE in $(ls ${TEST_PREFIX}*pass.cpp); do
102 echo "Running test: " $FILE
104 if $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS $(test $1 = no || echo $THREAD_FLAGS) -o ./$TEST_EXE
111 echo "`pwd`/$FILE failed at run time"
112 echo "Compile line was:" $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS $(test $1 = no || echo $THREAD_FLAGS)
117 echo "`pwd`/$FILE failed to compile"
118 echo "Compile line was:" $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS $(test $1 = no || echo $THREAD_FLAGS)
126 echo "failed $fail tests in `pwd`"
127 IMPLEMENTED_FAIL=$(($IMPLEMENTED_FAIL+1))
131 echo "passed $pass tests in `pwd`"
134 IMPLEMENTED_PASS=$((IMPLEMENTED_PASS+1))
137 if [ $fail -eq 0 -a $pass -eq 0 ]
139 echo "not implemented: `pwd`"
140 UNIMPLEMENTED=$(($UNIMPLEMENTED+1))
143 FAIL=$(($FAIL+$fail))
144 PASS=$(($PASS+$pass))
151 if [ $FILE = thread -o $1 = yes ]; then
163 echo "****************************************************"
164 echo "Results for `pwd`:"
165 echo "using `$CC --version`"
166 echo "with $OPTIONS $HEADER_INCLUDE $SOURCE_LIB"
167 echo "----------------------------------------------------"
168 echo "sections without tests : $UNIMPLEMENTED"
169 echo "sections with failures : $IMPLEMENTED_FAIL"
170 echo "sections without failures: $IMPLEMENTED_PASS"
172 echo "total number of sections : $(($UNIMPLEMENTED+$IMPLEMENTED_FAIL+$IMPLEMENTED_PASS))"
173 echo "----------------------------------------------------"
174 echo "number of tests failed : $FAIL"
175 echo "number of tests passed : $PASS"
177 echo "total number of tests : $(($FAIL+$PASS))"
178 echo "****************************************************"