comp.lang.ada
 help / color / mirror / Atom feed
From: Ludovic Brenta <ludovic@ludovic-brenta.org>
Subject: Re: One united Ada policy for all Linux distributions?
Date: Tue, 18 May 2010 03:19:36 -0700 (PDT)
Date: 2010-05-18T03:19:36-07:00	[thread overview]
Message-ID: <c3e60a43-591e-4c7d-adff-fb8feb9c4f7a@c11g2000vbe.googlegroups.com> (raw)
In-Reply-To: 15rwx3bkqj8p9$.18lm12fadj9m7$.dlg@40tude.net

Dmitry A. Kazakov wrote on comp.lang.ada:
> On Tue, 18 May 2010 02:32:40 -0700 (PDT), Ludovic Brenta wrote:
>> - The package names must change when the ALI files change (the Debian
>> Policy for Ada explains why in detail; this is not specific to Debian
>> but is a consequence of the Ada language definition, so must apply to
>> all distributions).
>
> Do you mean version suffix?

I mean the "aliversion" which must be somewhere in the package name,
e.g. in libgtkada2.14.2-dev the aliversion is 2.14.2.  It does not
have to be a suffix; it only has to be present.

>> - The release cycles are different for all distributions.  Therefore,
>> at any point in time, each distribution would provide a different
>> collection of the compiler and of all libraries, using different
>> package names.  This may or may not have an impact on user programs
>> and compilation commands.
>
> Yes, when using plain gnatmake with -I, -L stuff. (Who cares?)
>
> No, when project files used. The project file names must be invariant. E.g.
> gtkada.gpr. Ideally gpr files should be installed where GPS, gprbuild,
> gnatmake could look after them. GNAT GPL's GPS does it in
> <GNAT-root>/lib/gnat. I think the policy should mandate a directory under
> /usr/lib or /usr/include for all gpr files rather than project-dependent
> directories.

Debian uses the proposed "standard": /usr/share/ada/adainclude and
patches libgnatprj.so to look there for project files.  libgnatprj.so
is shared between all GNAT tools and GPS and, in the future, gprbuild.
(in the mean time, gprbuild is patched too).

> If we wanted to introduce versioning (coexistence in Debian policy terms?),
> we could hang version suffixes on the gpr's directory, rather than on gpr
> files. The suffix will follow GNAT releases.

That would be too restrictive; it would not allow you to have e.g. two
versions of a library with the same compiler.  This is no better than
the GNAT GPL distribution as you noted.  So the versioning would have
to use the aliversion in the names of the .gpr files, possibly with a
versionless symlink to the default versioned project file, e.g.:

/usr/share/ada/adainclude/gtkada2.14.2.gpr
/usr/share/ada/adainclude/gtkada2.18.gpr
/usr/share/ada/adainclude/gtkada.gpr -> gtkada2.14.2.gpr

--
Ludovic Brenta.



  reply	other threads:[~2010-05-18 10:19 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-17 10:29 One united Ada policy for all Linux distributions? Ludovic Brenta
2010-05-18  9:32 ` Ludovic Brenta
2010-05-18 10:04   ` Dmitry A. Kazakov
2010-05-18 10:19     ` Ludovic Brenta [this message]
2010-05-18 12:16       ` Dmitry A. Kazakov
2010-05-18 13:09         ` Ludovic Brenta
2010-05-18 14:00           ` Dmitry A. Kazakov
2010-05-19 13:24     ` Björn Persson
2010-05-20 10:49       ` Stephen Leake
2010-05-19 13:23   ` Björn Persson
2010-05-19 14:13     ` Dmitry A. Kazakov
2010-05-19 14:41       ` Ludovic Brenta
2010-05-19 14:47       ` Björn Persson
replies disabled

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