$Id$
README.ACATS4GNAT for version 0.7, 04Apr2003

This package provides a way to download, configure and run the Ada
Conformity Assessment Test Suite ACATS <http://www.ada-auth.org/> with
the GCC compiler <http://gcc.gnu.org/>.

Assuming you have an Ada aware installed GCC in PATH:

$ cd acats4gnat-VERSION/work
$ time ../acats4gnat/run_all.sh >& run.log &

It will take 20 minutes to download 6.1M of ACATS on 56K modem (it
only happens the first time), and then compile and run for about half
an hour on GHz class IA32 machine. Running the suite will generate
about 60M of stuff in the work directory, the total size of everything
should be around 115M.

Once it is finished, you should see for example using GNAT 3.13p:

$ grep 'acats4gnat result' run.log 
acats4gnat results cz 3 /       4
acats4gnat results a 75 /      75
acats4gnat results c2 35 /      35
acats4gnat results c3 348 /     349
acats4gnat results c4 338 /     338
acats4gnat results c5 95 /      95
acats4gnat results c6 81 /      81
acats4gnat results c7 48 /      50
acats4gnat results c8 140 /     140
acats4gnat results c9 254 /     255
acats4gnat results ca 73 /      74
acats4gnat results cb 43 /      43
acats4gnat results cc 117 /     117
acats4gnat results cd 172 /     172
acats4gnat results ce 268 /     268
acats4gnat results cxa 85 /      85
acats4gnat results cxb 29 /      30
acats4gnat results cxc 16 /      16
acats4gnat results cxd 39 /      39
acats4gnat results cxe 1 /       1
acats4gnat results cxf 20 /      20
acats4gnat results cxg 29 /      29
acats4gnat results cxh 4 /       4
acats4gnat results d 4 /       4
acats4gnat results e 11 /      11
acats4gnat results l 26 /      26

2361 tests are built and run, 14 could be made to run but are not
packaged yet, 2 are not run because they cause major disruption,
see acats4gnat/norun.lst for details.

The know failures are detailed in acats4gnat/BUGS.

Note that GNAT 3.13p/ALT fails a few more tests, because of lack of full
Annex D support, problem with select then abort on the main thread
with LinuxThreads, and of code generation problems with -O2 -fPIC on
Ada.Strings.Maps which cause 2 cxa tests to fail (all reported to
ACT).

Laurent Guerby <guerby@acm.org>

Mailing-List: contact rtems-users-help@oarcorp.com; run by ezmlm
Sender: joel@mail.club-internet.fr
Date: Tue, 21 Nov 2000 08:36:56 -0600
From: Joel Sherrill <joel.sherrill@oarcorp.com>
Reply-To: joel.sherrill@oarcorp.com
Organization: OAR Corporation
X-Accept-Language: en
To: rtems-users@oarcorp.com
Subject: GNAT/RTEMS and ACATS Suite
Content-Type: text/plain; charset=us-ascii
X-Mmail: \Recent                                 
X-M-Uid: 0058307.974818250


This is a SIGNIFICANT opportunity to contribute to the
GNU community in general and Ada community in particular.

Laurent Guerby <guerby@acm.org> has been working on a set of
scripts to run the ACATS (formerly ACVC) on GNAT.   This is
in anticipation of the merger of GNAT into the main
gcc.gnu.org CVS repository.  I think I am speaking for both
Laurent and myself when I say that we would love to see 
this suite run on GNAT/RTEMS.  I have made the scripts
available at:

ftp://ftp.oarcorp.com/pub/rtems/snapshots/contrib/acats

The full ACATS includes 1000's of tests.  I think Laurent
has focused on the executable portion of them.  This is
a VERY serious test of the Ada run-time and a very good
exercise of the POSIX tasking model.  I used the ACVC to
find problems in the RTEMS POSIX implementation and debug
it when it was first implemented.

Laurent wrote (the first?) ACVC scripts for ACT.  I used
his scripts to run the validation suite on the SPARC/ERC32
when we received the official validation certificate.

I would encourage others to play with this. :)  Eventually
GNAT will be merged into the main gcc source repository
and it will be then possible to build GNAT for any RTEMS 
target.  If there is a simulator, it will be easy to 
run the full suite automatically.

FYI .. simulators out there and RTEMS status in relation:

  + sparc, powerpc, c3x/c4x - suitable for ACATS
  + i960, h8, arm - missing timer source
  + m68000/cpu32 (BSCV) - suitable but BSP not complete
  + i386 (plex86) - suitable but needs attention
  + MIPS - suitable but no BSP
  + SH - suitable but no BSP

I would encourage the GNAT/RTEMS folks to rally around
and have an impact.  We can be THE GNAT-cross community.

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel@OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (256) 722-9985

Mailing-List: contact rtems-users-help@oarcorp.com; run by ezmlm
Date: Wed, 22 Nov 2000 00:56:03 +0100
X-Authentication-Warning: ulmo: guerby set sender to guerby@acm.org using -f
From: Laurent Guerby <guerby@acm.org>
To: rtems-users@oarcorp.com
In-reply-to: <3A1A8888.8AAA9C7A@OARcorp.com> (message from Joel Sherrill on
	Tue, 21 Nov 2000 08:36:56 -0600)
Subject: Re: GNAT/RTEMS and ACATS Suite
Reply-to: guerby@acm.org
X-Mmail: \Recent                                 
X-M-Uid: 0058510.974851072

Just a few notes on the ACATS scripts made available:

- The acats4gnat script are not designed to do an official validation,
just as a way to get all executable tests to run as easily as
possible, and for this purpose I've tried to keep them as simple as
possible. Non executable tests are not even looked at.

- Adaptation to a cross environment should be easy since the script
uses the regular "gnatmake" command, and there is one line to launch
the test executable. I haven't tried to do so yet.

- The scripts ACT uses (and Joel mentions) are far more complicated
because they're addressing the process of a real Ada validation, and I
worked on them while working for ACT, but I believe Gary Dismukes
wrote the initial version of them.

- ACT has kindly contributed their ACATS configuration files which I
hacked a bit.

- I worked for ACT, but I no longer do, at my new work we're client of
ACT services in the non-embedded work.

- We're all waiting for the GNAT sources integration into GCC CVS
repository, which should solve a lot of problems with GNAT/RTEMS.

- When this happens I'll try to provide an integrated GCC/Ada testing
driver, and GNAT/RTEMS support is high on the list ;-).

- Feel free to contact me through this list or at <guerby@acm.org> if
you need help, answers, have suspicious looking failures or have
contribution to make. I read my personal email from 2000 to 2300 Paris
time, if I don't answer after a week, please resend, this is a
processing mistake on my side ;-).

-- 
Laurent Guerby <guerby@acm.org>



