summaryrefslogtreecommitdiff
path: root/gcc/testsuite/ada/acats/run_acats
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/ada/acats/run_acats')
-rwxr-xr-xgcc/testsuite/ada/acats/run_acats73
1 files changed, 73 insertions, 0 deletions
diff --git a/gcc/testsuite/ada/acats/run_acats b/gcc/testsuite/ada/acats/run_acats
new file mode 100755
index 000000000..c1ed39f85
--- /dev/null
+++ b/gcc/testsuite/ada/acats/run_acats
@@ -0,0 +1,73 @@
+#!/bin/sh
+
+if [ "$testdir" = "" ]; then
+ echo You must use make check or make check-ada
+ exit 1
+fi
+
+# Provide which replacement.
+#
+# type -p is missing from Solaris 2 /bin/sh and /bin/ksh (ksh88), but both
+# ksh93 and bash have it.
+# type output format differs between ksh88 and ksh93, so avoid it if
+# type -p is present. Unfortunately, HP-UX /bin/sh ignores -p with type.
+# Fall back to whence which ksh88 and ksh93 provide, but bash does not.
+
+which () {
+ path=`type -p $* 2>/dev/null` && { echo $path | awk '{print $NF}'; return 0; }
+ path=`type $* 2>/dev/null` && { echo $path | awk '{print $NF}'; return 0; }
+ path=`whence $* 2>/dev/null` && { echo $path; return 0; }
+ return 1
+}
+
+# Set up environment to use the Ada compiler from the object tree
+
+host_gnatchop=`which gnatchop`
+host_gnatmake=`which gnatmake`
+ROOT=`${PWDCMD-pwd}`
+BASE=`cd $ROOT/../../..; ${PWDCMD-pwd}`
+
+PATH=$BASE:$ROOT:$PATH
+ADA_INCLUDE_PATH=$BASE/ada/rts
+LD_LIBRARY_PATH=$ADA_INCLUDE_PATH:$BASE:$LD_LIBRARY_PATH
+ADA_OBJECTS_PATH=$ADA_INCLUDE_PATH
+
+if [ ! -d $ADA_INCLUDE_PATH ]; then
+ echo gnatlib missing, exiting.
+ exit 1
+fi
+
+if [ ! -f $BASE/gnatchop ]; then
+ echo gnattools missing, exiting.
+ exit 1
+fi
+
+if [ ! -f $BASE/gnatmake ]; then
+ echo gnattools missing, exiting.
+ exit 1
+fi
+
+GCC_DRIVER="$BASE/xgcc"
+GCC="$BASE/xgcc -B$BASE/"
+export PATH ADA_INCLUDE_PATH ADA_OBJECTS_PATH GCC_DRIVER GCC LD_LIBRARY_PATH
+
+echo '#!/bin/sh' > host_gnatchop
+echo PATH=`dirname $host_gnatchop`:'$PATH' >> host_gnatchop
+echo unset ADA_INCLUDE_PATH ADA_OBJECTS_PATH GCC_EXEC_PREFIX >> host_gnatchop
+echo export PATH >> host_gnatchop
+echo exec gnatchop '"$@"' >> host_gnatchop
+
+chmod +x host_gnatchop
+
+echo '#!/bin/sh' > host_gnatmake
+echo PATH=`dirname $host_gnatmake`:'$PATH' >> host_gnatmake
+echo unset ADA_INCLUDE_PATH ADA_OBJECTS_PATH GCC_EXEC_PREFIX >> host_gnatmake
+echo export PATH >> host_gnatmake
+echo exec gnatmake '"$@"' >> host_gnatmake
+
+chmod +x host_gnatmake
+
+# Limit the stack to 16MB for stack checking
+ulimit -s 16384
+
+exec $testdir/run_all.sh ${1+"$@"}