On Mar 27, 2006, at 5:25 AM, Benjamin Reed wrote:

Martin Costabel wrote:

Before you move this from experimental to unstable, I'd like to remind you that with or without symlinks, this is *not* going to be compatible
with any old package, as long as you change the install_name of the
dylibs. I got bitten by this while I tried your experimental
qt3-3.3.6-22. If you change the install_name from
%p/lib/libqt-mt.3.dylib to %p/lib/qt3/lib/libqt-mt.3.dylib, you have to change the package name, too, from qt3-shlibs to qt336-shlibs or something.

I figured that as long as things are upwardly-compatible, and it remains
with the old shlibs for old packages, I didn't think I should have to
change it.

I can always fiddle with -install_name if I have to, but I didn't think
I had to remain backwards compatible with old versions of my packages,
that would be a maintainability nightmare. As long as you can continue
using it going forward, I would have thought it would be OK.

Although, I suppose we would have to change versioned deps on anything
that wants Qt, if we wanted a bindist to be internally consistent.

I guess I'll change the -libdir in configure  :)

I don't know the details of this case, but here's the general story.

The -install_name of the library is supposed to be tracking backwards- compatibility of versions. If a new version is different but backwards-compatible, it should have the same -install_name as the previous version but a different -compatibility_version.

Other executables have recorded the -install_name of the libs they depend on. So, if the -install-name changes, what to do?

The thing to do is to create a stub package for the old version of the library which has a shlibs splitoff but not a dev splitoff. That way, the old version remains available for any existing packages that need it, but nothing new will link to it.

This is why we have the policy of renaming the fink package when the - install_name (or major version number, which is the same thing) changes. So that you can put in the stub package under the old name, and then proceed with the new.

  -- Dave




-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
Fink-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to