Hello John, Christian, everyone,
Sorry for the huge delay.
* John Bowler wrote on Fri, Mar 31, 2006 at 09:15:42PM CEST:
> From: Christian Biesinger
> >libtool: link: CURRENT `' must be a nonnegative integer
> >libtool: link: `0:9:0' is not valid version information
> >make[1]: *** [libpng12.la] Error 1
> >The cause of this problem seems to be this:
> >For BeOS, version_type=none. But, the code in ltmain.sh around line 3236
> >does not handle a value of none. Only for the specific list of cases
> >does it assign a value to current, age and revision.
>
> Yes, we found a similar problem with irix and I patched ltmain.sh
> to fix this (ltmain.sh is shipped with the package, so patching it
> works):
OK, I looked at this again. My previous analysis was plain wrong.
I've installed the attached patches to branch-1-5 and HEAD,
respectively.
What I still don't understand is the following additional change you
also suggest:
> $ diff libpng-1.2.9beta7/ltmain.sh libpng-1.2.9beta11
> 3248c3248
> < current=`expr $number_major + $number_minor - 1`
> ---
> > current=`expr $number_major + $number_minor`
> 3323c3323
> < major=`expr $current - $age + 1`
> ---
> > major=`expr $current - $age`
There is a comment above this code that explains why this should be
necessary, no?
> For BeOS try adding 'none' to the end of the test for darwin|linux|osf|windows
> on line 3237 of ltmain.sh. We can ship libpng with that because it won't
> break anything which isn't already broken. I.e:
Done.
Cheers, and thank you for your persistence!
Ralf
HEAD:
2005-05-14 John Bowler <[EMAIL PROTECTED]>
* libltdl/config/ltmain.m4sh (func_mode_link): For version_type
`none', we still need to set `current', `age', and `revision',
so that our checks don't barf. The values won't be used later.
Apparently reported by several people, several times, for BeOS.
* NEWS, THANKS: Update.
branch-1-5:
2005-05-14 John Bowler <[EMAIL PROTECTED]>
* ltmain.in (link mode): For version_type `none', we still need
to set `current', `age', and `revision', so that our checks
don't barf. The values won't be used later. Apparently
reported by several people, several times, for BeOS.
* NEWS, THANKS: Update.
2005-05-14 John Bowler <[EMAIL PROTECTED]>
* libltdl/config/ltmain.m4sh (func_mode_link): For version_type
`none', we still need to set `current', `age', and `revision',
so that our checks don't barf. The values won't be used later.
Apparently reported by several people, several times, for BeOS.
* NEWS, THANKS: Update.
Index: NEWS
===================================================================
RCS file: /cvsroot/libtool/libtool/NEWS,v
retrieving revision 1.192
diff -u -r1.192 NEWS
--- NEWS 23 Mar 2006 22:39:41 -0000 1.192
+++ NEWS 14 May 2006 08:17:56 -0000
@@ -31,6 +31,8 @@
* Support for Interix 3 (Windows SFU).
* Basic support for PIE (position-independent executables).
* Initial support for RDOS.
+* Fix error with -version-info on systems with version_type=none, such
+ as BeOS.
* Bug fixes.
New in 1.9f: 2004-10-23; CVS version 1.9e, Libtool team:
Index: THANKS
===================================================================
RCS file: /cvsroot/libtool/libtool/THANKS,v
retrieving revision 1.55
diff -u -r1.55 THANKS
--- THANKS 23 Mar 2006 22:39:41 -0000 1.55
+++ THANKS 14 May 2006 08:17:56 -0000
@@ -74,6 +74,7 @@
Bruno Haible [EMAIL PROTECTED]
Carl D. Roth [EMAIL PROTECTED]
Chris P. Ross [EMAIL PROTECTED]
+ Christian Biesinger [EMAIL PROTECTED]
Dalibor Topic [EMAIL PROTECTED]
Daniel Reed [EMAIL PROTECTED]
DJ Delorie [EMAIL PROTECTED]
@@ -90,6 +91,7 @@
Jeremy C. Reed [EMAIL PROTECTED]
Joel N. Weber II [EMAIL PROTECTED]
Joerg Sonnenberger [EMAIL PROTECTED]
+ John Bowler [EMAIL PROTECTED]
Joseph Beckenbach III [EMAIL PROTECTED]
Kenneth Albanowski [EMAIL PROTECTED]
Kevin Ryde [EMAIL PROTECTED]
Index: libltdl/config/ltmain.m4sh
===================================================================
RCS file: /cvsroot/libtool/libtool/libltdl/config/ltmain.m4sh,v
retrieving revision 1.42
diff -u -r1.42 ltmain.m4sh
--- libltdl/config/ltmain.m4sh 22 Apr 2006 18:57:04 -0000 1.42
+++ libltdl/config/ltmain.m4sh 14 May 2006 08:17:58 -0000
@@ -4299,7 +4299,7 @@
# which has an extra 1 added just for fun
#
case $version_type in
- darwin|linux|osf|windows)
+ darwin|linux|osf|windows|none)
current=`expr $number_major + $number_minor`
age="$number_minor"
revision="$number_revision"
2005-05-14 John Bowler <[EMAIL PROTECTED]>
* ltmain.in (link mode): For version_type `none', we still need
to set `current', `age', and `revision', so that our checks
don't barf. The values won't be used later. Apparently
reported by several people, several times, for BeOS.
* NEWS, THANKS: Update.
Index: NEWS
===================================================================
RCS file: /cvsroot/libtool/libtool/NEWS,v
retrieving revision 1.109.2.45
diff -u -r1.109.2.45 NEWS
--- NEWS 23 Mar 2006 22:40:21 -0000 1.109.2.45
+++ NEWS 14 May 2006 08:14:12 -0000
@@ -9,6 +9,8 @@
* Let libltdl know that FreeBSD and DragonFly dlopen causes dependent
modules to be loaded. This fixes excessive load times for modules
with large library dependency graphs.
+* Fix error with -version-info on systems with version_type=none, such
+ as BeOS.
* Bug Fixes.
New in 1.5.22: 2005-12-18; CVS version 1.5.21a, Libtool team:
Index: THANKS
===================================================================
RCS file: /cvsroot/libtool/libtool/THANKS,v
retrieving revision 1.34.2.18
diff -u -r1.34.2.18 THANKS
--- THANKS 23 Mar 2006 22:40:21 -0000 1.34.2.18
+++ THANKS 14 May 2006 08:14:12 -0000
@@ -74,6 +74,7 @@
Bruno Haible [EMAIL PROTECTED]
Carl D. Roth [EMAIL PROTECTED]
Chris P. Ross [EMAIL PROTECTED]
+ Christian Biesinger [EMAIL PROTECTED]
Dalibor Topic [EMAIL PROTECTED]
Daniel Reed [EMAIL PROTECTED]
DJ Delorie [EMAIL PROTECTED]
@@ -90,6 +91,7 @@
Jeremy C. Reed [EMAIL PROTECTED]
Joel N. Weber II [EMAIL PROTECTED]
Joerg Sonnenberger [EMAIL PROTECTED]
+ John Bowler [EMAIL PROTECTED]
Joseph Beckenbach III [EMAIL PROTECTED]
Kenneth Albanowski [EMAIL PROTECTED]
Kevin Ryde [EMAIL PROTECTED]
Index: ltmain.in
===================================================================
RCS file: /cvsroot/libtool/libtool/Attic/ltmain.in,v
retrieving revision 1.334.2.125
diff -u -r1.334.2.125 ltmain.in
--- ltmain.in 20 Mar 2006 20:41:11 -0000 1.334.2.125
+++ ltmain.in 14 May 2006 08:15:55 -0000
@@ -3224,7 +3224,7 @@
# which has an extra 1 added just for fun
#
case $version_type in
- darwin|linux|osf|windows)
+ darwin|linux|osf|windows|none)
current=`expr $number_major + $number_minor`
age="$number_minor"
revision="$number_revision"