On Friday 06 February 2004 04:33, Spider wrote: > begin quote > On Thu, 5 Feb 2004 21:57:42 +0100 > > Paul de Vrieze <[EMAIL PROTECTED]> wrote: > > On Thursday 05 February 2004 21:34, Spider wrote: > > > begin quote > > > On Thu, 5 Feb 2004 20:58:01 +0100 > > > Can you explain more? When would LIBVER be set? by whom? (developer? > > > no thanks.. :P ) and woudn't there need to be one LIBVER per .so > > > file that a package installs? > > > > In most cases we could probably derive it automatically from the > > soname of a library, in special cases LIBVER would need to be set. > > Basically the idea breaks through the one LIBVER per .so by needing a > > developer to define a different LIBVER when an incompatible library > > change is introduced in the package (in any file) (the contents of > > LIBVER don't matter). In some cases this will be automatically > > detected, in some cases not, in which the developer needs to fix this. > > I'm still not sure I actually understand how this would hang about. > LIBVER would be created for the package at post-compile time, and would > refer to its own contents... right? > > This could work, but in cases like : > foolib.so.0 -> foolib.so.0.5.4 > > Which is LIBVER? 0, or 0.5.4 ? since if applications link to .so.0 > the binaries will break if LIBVER is 0.5.4 (due to dependencies) but if > it provides both, and a program links to the hard minor (0.5.4) , > LIBVER would break if it was "0" ...
Actually what ends up in the elf file is the soname of the library. This soname should only change with incompatible changes, if not the lib is broken (but will also be at install time). The only assumption I make is that all libraries in the package change incompatably at the same time (that's where the override is needed). In LIBVER we would normally store the soname > This falls on the fact that all packages don't necessarily link to the > same LIBVER , some may link to .so.0, others may be pickier and link to > `foolib.so.0.5.4` .. Not a pretty situation. They all link the soname at the end, irrespective of what you put at the linker command line -ldb and -ldb-4.1 will have exactly the same result given that libdb.so links to libdb-4.1.so > > > > Any ideas? > > > > Don't have binary packages ;-) > > not very practical IMO. computers aren't that fast, yet. (and with > software like KDE, Mozilla, qt, OpenOffice.. May never be) This is mainly a deficiency in g++ (or any c++ compiler) and C++'s dependency on header files. (Precompiled headers should give a big speedup) Paul -- Paul de Vrieze Gentoo Developer Mail: [EMAIL PROTECTED] Homepage: http://www.devrieze.net
pgp00000.pgp
Description: signature
