>>>> "nbecker" == nbecker
<nbecker(a)fred.net> writes:
nbecker> I'm trying to build on i686-pc-linux-gnu RH5.1. It seems I
nbecker> need libpng-1.0.2.
nbecker> OK, I built libpng-1.0.2 modifying the makefile to build
nbecker> share lib via libtool.
nbecker> What to call the soname? I'm assuming that libpng-1.0.2 is
nbecker> not binary compatible with 1.0.1. On RH5.1 libpng-1.0.2 is
nbecker> called libpng-2.1.0 (I think that was actually my doing when
nbecker> I put it into libgr, IIRC).
1.0.2 is binary compatible with what little testing I gave it. There
are a couple of new functions/features, but the rest is bugfixes.
nbecker> So I'm calling libpng-1.0.2 libpng-3.0.0. What do you think?
I don't quite understand where your question comes from... The
libpng-1.0.2 makefile should create for you a shared library with the
soname of 2.1.0.2. If you look at the top of png.h, you will see the
following:
* Note about libpng version numbers:
*
* Due to various miscommunications, unforeseen code incompatibilities
* and occasional factors outside the authors' control, version numbering
* on the library has not always been consistent and straightforward.
* The following table summarizes matters since version 0.89c, which was
* the first widely used release:
*
* source png.h png.h shared-lib
* version string int version
* ------- ------ ----- ----------
* 0.89c ("1.0 beta 3") 0.89 89 1.0.89
* 0.90 ("1.0 beta 4") 0.90 90 0.90 [should have been 2.0.90]
* 0.95 ("1.0 beta 5") 0.95 95 0.95 [should have been 2.0.95]
* 0.96 ("1.0 beta 6") 0.96 96 0.96 [should have been 2.0.96]
* 0.97b ("1.00.97 beta 7") 1.00.97 97 1.0.1 [should have been 2.0.97]
* 0.97c 0.97 97 2.0.97
* 0.98 0.98 98 2.0.98
* 0.99 0.99 98 2.0.99
* 0.99a-m 0.99 99 2.0.99
* 1.00 1.00 100 2.1.0 [int should be 10000]
* 1.0.0 1.0.0 100 2.1.0 [int should be 10000]
* 1.0.1 1.0.1 10001 2.1.0
* 1.0.1a-e 1.0.1a-e 10002 2.1.0.1a-e
*
* Henceforth the source version will match the shared-library minor
* and patch numbers; the shared-library major version number will be
* used for changes in backward compatibility, as it is intended. The
* PNG_PNGLIB_VER macro, which is not used within libpng but is available
* for applications, is an unsigned integer of the form xyyzz corresponding
* to the source version x.y.z (leading zeros in y and z).
Hope this helps.
--
Jareth Hein | jareth(a)camelot.co.jp | ハイン ジェラス
Toolsmith & Program lead |
http://www.camelot.co.jp | 開発部チーフ
Camelot Software, Ltd. | |(株)キャメロット
"It's a sad sign of the times when 'political machine' is redefined to
include 'main-line battle tank'" - Ambassador Grossblunder