This represents major changes with gnatdroid. The sysroot is no longer API 9 or 19, but a choice of API 8, 9, 15, 16, 17, 18, or 19. The prefix is not androidX but just "android". The binutils port had to be adjusted due to the prefix change. Finally, gnatdroid-armv(5,7) was substancially reworked to use gcc-aux (4.9) instead of gcc47-aux (4.7). This means the new ARM unwinder is in use (zero cost exceptions). Only 6 ACATS tests are failing, they are related to the missing stack check capability. Future work will speed up ACATS remote device testing and hopefully enable gnat.dg testing too.
103 lines
3.1 KiB
Diff
103 lines
3.1 KiB
Diff
The testsuite assumes "tablet" is a known host.
|
|
Before running the testsuite, define "tablet" in /etc/hosts
|
|
|
|
--- gcc/testsuite/ada/acats/run_acats.orig 2011-08-18 12:31:35.000000000 -0500
|
|
+++ gcc/testsuite/ada/acats/run_acats 2011-08-18 12:31:35.000000000 -0500
|
|
@@ -11,7 +11,7 @@
|
|
host_gnatchop=`which gnatchop`
|
|
host_gnatmake=`which gnatmake`
|
|
ROOT=`${PWDCMD-pwd}`
|
|
-BASE=`cd $ROOT/../../..; ${PWDCMD-pwd}`
|
|
+BASE=`realpath $ROOT/../../..`
|
|
|
|
PATH=$BASE:$ROOT:$PATH
|
|
ADA_INCLUDE_PATH=$BASE/ada/rts
|
|
@@ -23,12 +23,12 @@
|
|
exit 1
|
|
fi
|
|
|
|
-if [ ! -f $BASE/gnatchop ]; then
|
|
+if [ ! -f $host_gnatchop ]; then
|
|
echo gnattools missing, exiting.
|
|
exit 1
|
|
fi
|
|
|
|
-if [ ! -f $BASE/gnatmake ]; then
|
|
+if [ ! -f $host_gnatmake ]; then
|
|
echo gnattools missing, exiting.
|
|
exit 1
|
|
fi
|
|
@@ -46,8 +46,8 @@
|
|
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 unset -v `env | sed -e "s/=.*//" -e "s/^\.//"` >> host_gnatmake
|
|
+echo PATH=`dirname $host_gnatmake`:'/sbin:/bin:/usr/bin:/usr/sbin' >> host_gnatmake
|
|
echo export PATH >> host_gnatmake
|
|
echo exec gnatmake '"$@"' >> host_gnatmake
|
|
|
|
--- gcc/testsuite/ada/acats/run_all.sh.orig 2011-08-18 12:31:42.000000000 -0500
|
|
+++ gcc/testsuite/ada/acats/run_all.sh 2011-08-18 18:26:04.000000000 -0500
|
|
@@ -11,9 +11,14 @@
|
|
|
|
gccflags="-O2"
|
|
gnatflags="-gnatws"
|
|
+tabtarget="/data/local/testsuite"
|
|
|
|
target_run () {
|
|
- eval $EXPECT -f $testdir/run_test.exp $*
|
|
+ # Run on rooted tablet (port 22 vs port 2222)
|
|
+ BN=`basename $*`
|
|
+ $STRIP_FOR_TARGET $*
|
|
+ /usr/bin/scp -qp $* root@tablet:$tabtarget/
|
|
+ /usr/bin/ssh -q tablet $tabtarget/$BN
|
|
}
|
|
|
|
# End of customization section.
|
|
@@ -55,13 +60,9 @@
|
|
exit 1
|
|
fi
|
|
|
|
-target_gnatchop () {
|
|
- gnatchop --GCC="$GCC_DRIVER" $*
|
|
-}
|
|
-
|
|
target_gnatmake () {
|
|
- echo gnatmake --GCC=\"$GCC\" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC=\"$GCC\"
|
|
- gnatmake --GCC="$GCC" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC="$GCC"
|
|
+ echo gnatmake-cross --GCC=\"$GCC\" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC=\"$GCC\"
|
|
+ gnatmake-cross --GCC="$GCC" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC="$GCC"
|
|
}
|
|
|
|
target_gcc () {
|
|
@@ -94,8 +95,8 @@
|
|
display `$GCC -v 2>&1`
|
|
display host=`gcc -dumpmachine`
|
|
display target=$target
|
|
-display `type gnatmake`
|
|
-gnatls -v >> $dir/acats.log
|
|
+display `type gnatmake-cross`
|
|
+gnatls-cross -v >> $dir/acats.log
|
|
display ""
|
|
|
|
display " === acats support ==="
|
|
@@ -187,7 +188,7 @@
|
|
exit 1
|
|
fi
|
|
|
|
-target_gnatchop *.adt >> $dir/acats.log 2>&1
|
|
+host_gnatchop *.adt >> $dir/acats.log 2>&1
|
|
|
|
target_gnatmake -c -gnato -gnatE *.ads >> $dir/acats.log 2>&1
|
|
target_gnatmake -c -gnato -gnatE *.adb >> $dir/acats.log 2>&1
|
|
@@ -262,7 +263,7 @@
|
|
continue
|
|
fi
|
|
|
|
- target_gnatchop -c -w `ls ${test}*.a ${test}*.ada ${test}*.adt ${test}*.am ${test}*.dep 2> /dev/null` >> $dir/acats.log 2>&1
|
|
+ host_gnatchop -c -w `ls ${test}*.a ${test}*.ada ${test}*.adt ${test}*.am ${test}*.dep 2> /dev/null` >> $dir/acats.log 2>&1
|
|
main=""
|
|
find_main
|
|
if [ -z "$main" ]; then
|