[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: GMP transition: 4.3.2 to 5.0.1?

Hi Julien,

First, thanks for looking into the GMP issue.

> >   On Fri, Mar 18, 2011 at 03:30:45PM +0100, Julien Cristau wrote:
> >   
> >   > As far as I can tell, the
> >   > incompatibilities introduced in gmp 5 are the removal of mpn_bdivmod and
> >   > mpn_neg_n, and the rest of the functions should stay compatible between
> >   > gmp 4 and gmp 5.
> >   
> > I think that if you mention mpn_neg_n, you need to make your list
> > longer.  There was never documentation for mpn_neg_n, just like for
> > dozens of other internal functions that were removed.
> > 
> I was going by the gmp.h changes.  The declarations removed from that
> file appear to be for just these two, not dozens of others.
> > I think those using internal functions are on their own.
> > 
> Even better then.  My concern was to make reasonably sure we could have
> libgmp.so.3 and libgmp.so.10 coexist for a while in the Debian archive,
> and that the risk of crashes due to both versions being loaded in the
> same address space would not be too high.  Removed functions aren't a
> problem for this.

So, given that the incompatibility between GMP 4 and 5 is removing a
couple of public functions, you believe it is safe to have the shared
libs coexist in the archive?

That's fine.  Can you help me work out the specific steps I should
take now?  

In your previous message, you suggest to re-introduce gmp 4.3.2 as a
separate source package (e.g. gmp4), building *only* the libgmp3c2
binary package.  

Raphael Geissert has requested also to change gmp to build libgmp-dev
as a real package.  I would also make it provide libgmp10-dev because
that package name was used in experimental and a few packages are now
using it.

In addition, I made the new -dev package also provide libgmp3-dev
because of the strange situation of the Haskell compiler ghc [1].  My
intention was for that to be temporary and remove it once ghc got
bootstrapped everywhere.  In another of your messages you say

    Again, the -dev package needs to keep providing libgmp3-dev
    anyway, so changing the build-deps is unnecessary churn.

What did you mean by this?  Do you mean that the new -dev package
needs to continue providing libgmp3-dev forever?  Or did you mean that
since it is presently providing it, there is no need to change all the
build-deps at once; just let things alone until such time that we
remove this "provides"?

Assuming you meant the latter, here is my understanding of the
next steps:

1. Upload gmp4, as described above.
2. Upload gmp introducing libgmp-dev as the real package, providing
   virtual packages libgmp3-dev and libgmp10-dev.

Is this accurate?  Anything else?


[1] http://lists.debian.org/debian-haskell/2011/03/msg00013.html

Attachment: signature.asc
Description: Digital signature

Reply to: