comp.lang.ada
 help / color / mirror / Atom feed
From: gauthier@alphainfo.unilim.fr (Michel Gauthier)
Subject: Re: Source files organisation using gnat
Date: 1997/07/01
Date: 1997-07-01T00:00:00+00:00	[thread overview]
Message-ID: <gauthier-0107971637410001@193.50.185.13> (raw)
In-Reply-To: 19970630185901.OAA27670@ladder02.news.aol.com


In article <19970630185901.OAA27670@ladder02.news.aol.com>,
laurentau@aol.com (Laurentau) wrote:

>>  I am a very beginer to gnat. I used Alsys (now Aonix) at work. It uses a
>>  library concept. So, I am used to work this way: our sources are in an
>>  Unix tree with several levels.
>>  
>>  When I had a look at gnat, the first thing that I saw was... a lot of
>>  files in the same directory (adainclude). I don't know how to say without
>>  hurting people but if I program this way at work, I may get beaten to
>>  death by my quality manager ;-)
>>  
>>  Can someone tell me how they organized there development tree ?

I agree that keeping a big number of files require organising them, which is
generally obtained by use of directories. 

I guess that a library structure could have been a better solution than
throwing Ada into the same melting pot as other languages. The gnat
choice wastes much time of useless recompilations, that would have
been left aside with more information kept instead of rebuilt.

However, it is no longer the question. How can we deal now with both
a gnat compiler and a tree structure of the sef of source files ?
  Our solution was to use the shell variables that define sets of paths.
Gnat uses some of them to indicate where the sources, and other files,
can be found (I do not have the detail in mind, look at the documentation).

In practice, each of our directories with Ada sources contain a suitable
'a9path' file, which is a script of 'a9pend directory' commands
which establish the shell variables with their parameter, in a 
transitive manner. This a9path is built as part of the directory initialisation
process. After that, two suitable commands replace the gcc and gnatmake
with analogous commands using the local library dependencies.

This has been used all last year by 50 students without any problem,
including after the designer has gone away to another job.

I am neither fluent in unix shells nor the creator of these scripts,
but I can search for them if they can be useful for somebody.

Any comment appreciated.

----------          ----------          ----------          ---------- 
Michel Gauthier / Laboratoire d'informatique
123 avenue Albert Thomas / F-87060 Limoges
telephone + 33 5 55 43 69 73
fax +33 5 55 43 69 77
----------          ----------          ----------          ----------
Si l'an 2000 est pour vous un mysticisme stupide, utilisez la base 9
If you feel year 2000 a stupid mystic craze, use numeration base 9
----------          ----------          ----------          ----------




  parent reply	other threads:[~1997-07-01  0:00 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-06-30  0:00 Source files organisation using gnat Laurentau
1997-06-30  0:00 ` Robert Dewar
1997-07-01  0:00   ` Samuel T. Harris
1997-07-04  0:00     ` Robert Dewar
1997-07-05  0:00       ` Michael Feldman
1997-07-03  0:00   ` Steve Doiel
1997-07-04  0:00     ` Robert Dewar
1997-07-04  0:00       ` Michel Gauthier
1997-07-04  0:00         ` Robert Dewar
1997-07-03  0:00   ` David Haslam
1997-07-03  0:00     ` Robert Dewar
1997-07-09  0:00       ` Robert I. Eachus
1997-06-30  0:00 ` Robert Dewar
1997-07-01  0:00 ` Michel Gauthier [this message]
1997-07-05  0:00   ` Robert Dewar
1997-07-06  0:00     ` Geert Bosch
1997-07-07  0:00       ` Tucker Taft
1997-07-08  0:00       ` Robert Dewar
1997-07-08  0:00         ` nabbasi
1997-07-08  0:00           ` Robert Dewar
1997-07-01  0:00 ` Michael F Brenner
1997-07-01  0:00   ` Robert Dewar
1997-07-02  0:00   ` Wes Groleau
1997-07-07  0:00     ` Michael F Brenner
1997-07-01  0:00 ` Geert Bosch
1997-07-02  0:00   ` Source files organisation using gnat: more Laurentau
1997-07-02  0:00     ` Robert B. Love 
1997-07-02  0:00       ` nasser
1997-07-03  0:00     ` Michael F Brenner
1997-07-03  0:00     ` Ian Caldwell
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox