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

Re: transition binNMUs



On Fri, 2006-01-13 at 14:24 +0100, Florian Weimer wrote:
> > Really we need that library XYZ-3 source package, depending on 
> > library ABC-5,  built with Ocaml-3.09.0-4, should produce binary 
> > package
> >
> > 	XYZ-3-Ocaml-3.09.0-4
> >
> > depending on ABC-5-Ocaml-3.09.0-4: in other words the
> > dependencies of the binary libraries depends ALSO
> > on the binary version of Ocaml used to build it.
> 
> This is just wrong for any library that provides any form of binary
> compatibility

You are right of course, I even said as much myself,
somewhere mentioning that if gcc-A and gcc-B produced
compatible binaries .. the archive should know about
it and take it into account -- translate into a related
statement about libraries.

So, can you take my idea and fix it? It's clear Debian
as it is isn't correct either.

Note also: although two libraries may well work
together, even if produced by different versions
of the build tools .. that doesn't mean they shouldn't
be rebuilt. The new version of the tools may produce
compatible but more efficient code. (and may not :)

> > Interestingly this is also the case for bytecode applications
> > needing libraries, but it is is NOT the case for native
> > code applications (the library is linked in already, so
> > there is a build dependency but not a (nonbuild) dependency).
> 
> You can fix this for the bytecode application case by linking with
> -custom.

Which is against the Ocaml policy :)

> > The point is: it is the Debian system itself which is broken,
> > it does not manage dependencies very well at all (so much
> > for 'advanced package manager' when it can't get even basic
> > maths right).
> 
> Debian assumes that library packages provide a moderate amount of ABI
> compatibility.

yes, and this is probably the correct balance BUT not an excuse
for failing to properly formalise it, at least after recognizing
the problems. The solution I suggested is 'over the top': it
will work but is gross overkill. Perhaps instead of binding
all the information into the package name, some goes in tags,
and other kinds of dependency declarations are required?

> I wonder if we should stop precompiling Objective Caml sources
> altogether, and use something like common-lisp-controller instead to
> compile them during installation.

Ah, do you mean 'GODI'? :))


-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net



Reply to: