aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/ada/acats/run_acats
blob: 9a9bdc2a3181cf32effa409f6fe977ea36ed3cc8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!/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.
# Fall back to whence which ksh88 and ksh93 provide, but bash does not.

which () {
    type -p $* 2>/dev/null && return 0
    type $* 2>/dev/null | awk '{print $3}' && return 0
    whence $* 2>/dev/null && 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

exec $testdir/run_all.sh ${1+"$@"}