Libtool now unconditional in INN CURRENT
Julien ÉLIE
julien at trigofacile.com
Thu Jun 14 17:46:50 UTC 2012
Hi Russ,
>> The storage/libstorage.la file generated by libtool mentions:
>
>> dlname='libstorage.so.2'
>> library_names='libstorage.so.2.0.0 libstorage.so.2 libstorage.so'
>
>> If I change these lines to:
>
>> dlname='libstorage.so'
>> library_names='libstorage.so.2.0.0 libstorage.so'
>
>> then only this symlink is created:
>
>> lrwxrwxrwx 1 root root 19 2012-06-12 22:18 libstorage.so -> libstorage.so.2.0.0*
>
> Yes, but this is means that the SONAME doesn't match the file name, so you
> lose all the versioning properties of shared libraries (you can't install
> version 2 and version 3 at the same time, programs don't find the correct
> version, and so forth).
I had not thought about that. OK, we then should not alter that feature.
>>> Updating our shared library versions properly on any change would also
>>> fix this, although that's a lot of updates if we were going to try to
>>> keep the versions accurate for snapshots.
>
>> It could also become painful during development, when building and
>> testing changes for 2.6.0 for instance.
>
> Right. Although I'm not sure how often we change the library code.
Not often, you're right. And once we are aware of that subtlety with
symlinks, we pay attention and run "make update" twice!
> If we did update the version the way that we're theoretically supposed to,
> there would be no need to make backups, since the new version wouldn't
> overwrite the old library, but ldconfig would automatically link to the
> latest version. The versioning would in essence force creation of backups
> only when the library code had actually changed.
We can then keep .OLD for libraries until backups are done by proper
versioning.
--
Julien ÉLIE
« Pour célébrer ce jour heureux, buvons un coup, buvons-en deux. »
(Aristophane)
More information about the inn-workers
mailing list