summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Corsepius <ralf.corsepius@rtems.org>2003-08-20 06:52:01 +0000
committerRalf Corsepius <ralf.corsepius@rtems.org>2003-08-20 06:52:01 +0000
commit13942bf447d107555e7a28dc8bd67007f1e2564b (patch)
treec0996a271b1ba48545d504ba534a393155bbf661
parent2003-08-18 Eiichiro Kawaguchi <e-kawaguchi@ct.jp.nec.com> (diff)
downloadrtems-13942bf447d107555e7a28dc8bd67007f1e2564b.tar.bz2
2003-08-20 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/prog-gnat.m4: New (copied from ../../../aclocal). * Makefile.am: ACLOCAL_AMFLAGS = -I aclocal -I ../tests/aclocal. Don't include */automake/lib.am (Unused).
-rw-r--r--c/src/ada-tests/ChangeLog6
-rw-r--r--c/src/ada-tests/Makefile.am3
-rw-r--r--c/src/ada-tests/aclocal/prog-gnat.m445
3 files changed, 52 insertions, 2 deletions
diff --git a/c/src/ada-tests/ChangeLog b/c/src/ada-tests/ChangeLog
index 12380750c1..db70c5504f 100644
--- a/c/src/ada-tests/ChangeLog
+++ b/c/src/ada-tests/ChangeLog
@@ -1,3 +1,9 @@
+2003-08-20 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ * aclocal/prog-gnat.m4: New (copied from ../../../aclocal).
+ * Makefile.am: ACLOCAL_AMFLAGS = -I aclocal -I ../tests/aclocal.
+ Don't include */automake/lib.am (Unused).
+
2003-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Use rtems-bugs@rtems.com as bug report email address.
diff --git a/c/src/ada-tests/Makefile.am b/c/src/ada-tests/Makefile.am
index ff982e8a43..59aba552b8 100644
--- a/c/src/ada-tests/Makefile.am
+++ b/c/src/ada-tests/Makefile.am
@@ -1,10 +1,9 @@
## $Id$
-ACLOCAL_AMFLAGS = -I ../../../aclocal
+ACLOCAL_AMFLAGS = -I aclocal -I ../tests/aclocal
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../../../automake/compile.am
-include $(top_srcdir)/../../../automake/lib.am
SUBDIRS = support samples sptests tmtests
diff --git a/c/src/ada-tests/aclocal/prog-gnat.m4 b/c/src/ada-tests/aclocal/prog-gnat.m4
new file mode 100644
index 0000000000..6e169a8dc7
--- /dev/null
+++ b/c/src/ada-tests/aclocal/prog-gnat.m4
@@ -0,0 +1,45 @@
+## $Id$
+##
+## Partially borrowed from gcc-3.2
+##
+## WARNING: All the stuff below is pretty immature.
+
+AC_DEFUN([RTEMS_PROG_GNAT],
+[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])
+AC_REQUIRE([RTEMS_PROG_CC_FOR_TARGET])
+
+AC_CHECK_TOOL([GNATMAKE],[gnatmake],[])
+AC_CACHE_CHECK([for compiler driver that understands Ada],
+ [rtems_cv_prog_CCADA],
+[cat >conftest.adb <<EOF
+procedure conftest is begin null; end conftest;
+EOF
+rtems_cv_prog_CCADA=
+# Have to do ac_tool_prefix and user overrides by hand.
+user_ccada=$CCADA
+user_cc=$CC
+for cand in ${ac_tool_prefix}$user_ccada $user_ccada \
+ ${ac_tool_prefix}$user_cc $user_cc \
+ ${ac_tool_prefix}gcc gcc \
+ ${ac_tool_prefix}cc cc \
+ ${ac_tool_prefix}gnatgcc gnatgcc \
+ ${ac_tool_prefix}gnatcc gnatcc \
+ ${ac_tool_prefix}adagcc adagcc \
+ ${ac_tool_prefix}adac adac ; do
+ # There is a bug in all released versions of GCC which causes the
+ # driver to exit successfully when the appropriate language module
+ # has not been installed. This is fixed in 2.95.4, 3.0.2, and 3.1.
+ # Therefore we must check for the error message as well as an
+ # unsuccessful exit.
+ errors=`($cand -c conftest.adb) 2>&1 || echo failure`
+ AS_IF([test -z "$errors"],
+ [rtems_cv_prog_CCADA=$cand
+ break])
+done
+rm -f conftest.*])
+AC_SUBST([CCADA],[$rtems_cv_prog_CCADA])
+
+AS_IF([test -n "$GNATMAKE" && test -n "$CCADA"],
+ [HAVE_GNAT=yes],
+ [HAVE_GNAT=no])
+])