@ChrisH
Bad coders or porters? I see "libvorbis.so", "libvorbisfile.so", "libvorbisenc.so", "libogg.so", "libsqlite3.so", "libjpeg.so", "libxml2.so" and "libfreetype.so".
sqlite3 and freetype2 I haven't touched (i.e, not uploaded my own .so to OS4Depot). sqlite3 is new enough, and I just get the feeling libfreetype.so might be used by some programs. I haven't gone and looked what programs I have that use .so. Probably almost nothing except for Timberwolf.
So, back to the first paragraph. All of those libraries, have the soname set with no version, and they all COME WITH OS4.1 Update 2. Should we blame Hyperion for getting us into the habit of not having version numbers in the soname?
I'm in 2 minds whether I keep it consistent, or whether I put version numbers on everything. I had just been leaving it whatever the Makefile makes, but as Chris (not ChrisH) has shown me, that a proper soname with version is set if setting version_type to freebsd-elf in libtool:
http://www.amigans.net/modules/newbb/ ... t_id=57507#forumpost57507http://www.amigans.net/modules/newbb/ ... t_id=57854#forumpost57854Perhaps this is something Hyperion Entertainment missed when making their shared objects originally?
I think from now on i'll make sure they all have a soname with the version number, but I don't want anyone to think I was merely being lazy or incompetent when uploading some shared objects to OS4Depot recently, even including libtiff which is currently still in the upload queue at OS4Depot. Most of the time i'm just replacing someone elses earlier version, and trying to keep it all consistent.
Isn't the point of shared objects so that a program can reap the rewards of a newer version? Hence the naming convention for the soname only having the major revision number (i.e libjpeg.so.6 instead of libjpeg.so.6.2) and symlinks to libjpeg.so and libjpeg.so.6.2
In almost all cases, replacing a .so hasn't affected anything, and is backwards compatible mainly because it has same major revision number.
libjpeg is an exception. libpng is also an exception, however that has an appropriate soname with a version number.