[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: policy: library should not depend on virtual ada-compiler



Nicolas Boulenguez writes:
> On Thu, Nov 24, 2011 at 11:40:10PM +0100, Ludovic Brenta wrote:
>> I think
>> 
>> Depends: gnat-x.y | ada-compiler
>> 
>> would be even better.  Note that lintian says: "depends on a virtual
>> package without listing a real package as an alternative first."
>> Alternatives are separated by | in Depends and Build-Depends lines.
> 
> Every gnat-*.* package does provide ada-compiler, so
> 
> "Depends: gnat, gnat-4.6 | ada-compiler" is satisfied with gnat (=4.4)
> and gnat-4.4 installed.
> 
> "Depends: gnat | ada-compiler, gnat-4.6" is satisfied with gnat (=4.4)
> and gnat-4.6 installed but not used by default.
> 
> If I understand well, we want to avoid both these situations.
> 
> I cannot see why the dependency has to be as strong as "Depends".
> Depends:, Recommends: and Suggests: are equally highlighted in the
> reverse-dependency search of aptitude, but Depends: may cause
> problems.

Hmm, you're right, of course.  I see no solution that really satisfies
me; I think "Recommends:" and "Suggests:" have the same problem as
"Depends:", i.e. they also should contain "gnat-x.y | ada-compiler".
However, I just reviewed the authoritative list of virtual packages[1]
(which is part of Debian Policy) and to my astonishment found that
ada-compiler is not in it.

So perhaps the best solution is simply to drop ada-compiler altogether?
There are additional reasons for dropping ada-compiler:

- other virtual packages correspond to a command available to other
  packages in /usr/bin, but there is no /usr/bin/ada-compiler
- the only Ada compiler in Debian is GNAT; there is no real need
  for a virtual package provided by several real packages.

[1] http://www.debian.org/doc/packaging-manuals/virtual-package-names-list.txt

-- 
Ludovic Brenta.



Reply to: