RE: PING Jan Nieuwenhuizen re libguile17

2008-03-25 Thread Dave Korn
Jan Nieuwenhuizen wrote on 25 March 2008 09:50:

 Brian Dessent:
 
  I rebuilt libguile with gcc 3.4.4-1 (without any PR24196 patches) and an
  autogen using it passes all tests.  So it seems this is simply an ABI
  incompatibility between 4.1 and 3.4.
 
 Thanks.  I'll start a test using gcc-4.0.4; with some luck that's new
 enough for LilyPond and still binary compatible Cygwin.
 
 Jan.

  The C ABI is meant to be the same between 3.x and 4.x, so since there's
apparently no C++ involved, I don't think this is necessarily simply an ABI
incompatibility, I think it's a real regression.

  Jan, please just to clarify: did you build the actual release version of
libguile with gcc4?  I couldn't tell from the context whether you were only
using it to try the --enable-fully-dynamic-string experiment.

  I don't recommend using gcc 4 series for production releases yet.  There
was a lot of instability after the change to tree-ssa infrastructure and
both 4.0 and 4.1 series had a big bunch of regressions.  (I think it's
starting to get there with the 4.2 and 4.3 series and that's why I'm 

  I would *strongly* recommend all maintainers stick with the official
release of the compiler when building packages for the distro.  It's the
same version the DLL is built with; we should use it for the apps too.  C is
/supposed/ to be ABI-compatible, but as we've discovered, it's not always as
simple as that.  Using the exact same compiler for the DLL and the packages
means we've got one less thing that can go wrong.

  Is there some specific problem in building lilypond that is resolved by
using gcc 4?  I *am* willing to do maintenance releases of the 3.4 compiler
if there are important bugs to fix, doubly so if it's needed to support a
package in the official distro.  (I'm also working in the background on an
experimental gcc 4 package).

cheers,
  DaveK
-- 
Can't think of a witty .sigline today



RE: gmp-4.2.2-1 and and mpfr- for upload

2008-03-25 Thread Dave Korn
David Billinghurst wrote on 24 March 2008 03:43:

 The version number of libgmpxx was bumped in the upstream files to
 correct the shared library numbers.  I reverted this change in the
 cygwin build as the cygwin shared library is backwards compatible with
 gmp-4.2.1 - the 4.2.1 testsuite passes with the new cyggmpxx-3.dll.

  On the face of it, that sounds like a worryingly dubious idea.

cheers,
  DaveK
-- 
Can't think of a witty .sigline today



Re: gmp-4.2.2-1 and and mpfr- for upload

2008-03-25 Thread Charles Wilson

Dave Korn wrote:

David Billinghurst wrote on 24 March 2008 03:43:


The version number of libgmpxx was bumped in the upstream files to
correct the shared library numbers.  I reverted this change in the
cygwin build as the cygwin shared library is backwards compatible with
gmp-4.2.1 - the 4.2.1 testsuite passes with the new cyggmpxx-3.dll.


  On the face of it, that sounds like a worryingly dubious idea.


Not necessarily. It is often the case that the version number of 
cygwin's library ports (I don't want to say cygwin DLL because that 
could be misconstrued) do not exactly follow the upstream versioning.


Most of the time, it's because there have been cygwin-specific changes 
that have forced our version number ahead of the upstream progression. 
Take ncurses, for instance: upstream so's are at version 5.0 or so, but 
our DLL number is 8.


In rare cases, we might fall behind the upstream numbers -- imagine if 
an ABI change occurred, but only #ifdef SOLARIS -- there'd be no reason 
(other than a desire for consistency) to bump the cygwin port's DLL number.


However, in the case of gmp, it is probably necessary to understand WHY 
the upstream maintainers bumped the DLL number. Did they make a 
back-wards incompatible change sometime early in the -3 sequence, but 
neglected to update the number until now? Or is the new version number 
merely cosmetic?


correct the shared library numbers just doesn't provide enough 
information.


--
Chuck