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"

Reply via email to