-
-
Notifications
You must be signed in to change notification settings - Fork 487
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade MPIR to 2.6.0 #13137
Comments
Attachment: trac_13137-stopgap.patch.gz root repo |
This comment has been minimized.
This comment has been minimized.
Author: John Palmieri |
comment:2
This causes the libm4rie test suite to fail, as well as breaks the building of linbox (both have the same errors):
There may be other issues, but I haven't encountered them yet. |
comment:3
There is an mpir-2.4.0.p6 at #12751, probably the new spkg should be based on that. Also, I guess the patch |
Reviewer: Jeroen Demeyer |
comment:5
See comment [comment:3] #12751 has been merged, so this spkg must certainly be rebased. |
Attachment: trac_13137-mpir.patch.gz patch for mpir spkg; for review only |
comment:6
I've rebased the spkg. I haven't investigated the issues in the comment above. I'll take a look, but I may not know enough to be able to fix them. |
comment:7
On hawk (OpenSolaris): linbox fails to build, as mentioned above, and the new spkg from #12883 doesn't help. libm4rie passes its test suite, though. On sage.math (linux, Sage's gcc): the ppl build fails to configure ("checking which instantiations are enabled... configure: error: invalid instantiation Polyhedron Error configuring the Parma Polyhedra Library."). linbox fails to build, and libm4rie fails its test suite. On taurus (linux, gcc 4.7.0): same as with sage.math, and also pari fails its test suite. I'm still building on OS X; I'll report the results when they're available. I don't know enough to troubleshoot these. If someone else wants to work on this, please go ahead. |
comment:8
OS X is similar to sage.math: linbox and ppl fail to build, libm4rie fails its test suite. |
comment:9
I created an spkg out of the just-released version 2.5.2. It was more or less straightforward, except that it refuses to build using clang on OS X, so spkg-install required a little modification. With this spkg, givaro no longer builds on sage.math or OS X, and I am seeing the same problems with ppl. Since givaro won't build, I'm not even getting to libm4rie or linbox. |
This comment has been minimized.
This comment has been minimized.
Attachment: trac_13137-mpir-2.5.2.patch.gz patch for mpir 2.5.2 spkg |
comment:10
MPIR 2.6.0 is out and will be needed for FLINT 2.3. By the way, it would be nice to integrate the easy Cygwin fix of #12115 while upgrading MPIR. |
comment:11
I have no objections to trying to upgrade to 2.6.0 instead of 2.5.2. Maybe it will fix some of the issues mentioned on this ticket. If someone else wants to put together an spkg, please go ahead. |
comment:12
I gave MPIR 2.6.0 a shot, and the problem with linbox remains. Anyway, these functions are not necessary, so badly removing the definition of the member functions in gmpxx.h let you compile linbox and go on with other bits of Sage, as long as a proper solution is not found. |
comment:13
Maybe the problem is that mpir.h gets first included withtout stdint.h inlcuded so that when gmpxx.h gets included mpir.h is not included again and the C functions get_sx and get_ux are not defined. |
comment:14
Ok that's it:
|
comment:15
New spkg at http://boxen.math.washington.edu/home/jpflori/mpir-2.6.0.p0.spkg. |
comment:16
On my linux install (Debian/experimental/gcc 4.7.?) the new MPIR spkg builds and passes its testsuite. |
comment:17
With this ticket and #13755 I have no problem with libm4rie test suite, nor with PPl or pari, on the same setup as before. And by the way, I've not put the clang changes in the spkg yet, as I cannot test if they are still needed. |
Dependencies: #13755 |
comment:105
I spoke too fast, it gets used when installing with Sage's spkg mechanism and just works, but not in a plain upstream dir... |
comment:106
That must be some timestamp autotools magic because we patch some autotools file... |
comment:107
Or not, patching upstream with our patches and then configuring and building does not trigger the use of xmlto (although it is detected). |
comment:108
Ok, my bad, I must have changed some timestamp while tarring untarring stuff whence the rebuild of the man pages with the spkg (and not with upstream correctly untarred). |
comment:109
The just uploaded spkg should avoid using xmlto even if it's installed (and broken :)). |
comment:110
With the old versions of the spkgs (the ones included in 5.6.beta3), on an OS X 10.8.2 machine: in one window, I can load the system by running
I haven't tried this with any new versions of the spkgs. |
comment:111
John, could you please save the tuning parameters ( |
comment:112
Replying to @nexttime:
I saved it. Did you want me to do anything with it? ;)
|
comment:114
Jean-Pierre, do you intend to make any further changes to the spkg here? (Or, is there anything left which has to be done here, as of now?) |
comment:115
I don't see anything to change now, but I may have missed something. |
comment:116
Replying to @jpflori:
I'll repeat some tests with the "final" spkg (although I can't on Cygwin), do some checks, then I'll give it positive review I think. |
comment:117
A few (IMHO minor) things: diff --git a/spkg-install b/spkg-install
--- a/spkg-install
+++ b/spkg-install
@@ -19,7 +19,7 @@
# detecting filename changes. See Trac #13137.
# This fix can (and will have to) be removed once integrated upstream.
echo "Renaming *,asm files to *.asm..."
-mv mpn/x86/p6/addmul_1,asm mpn/x86/p6/addmul_1.asm
+mv mpn/x86/p6/addmul_1,asm mpn/x86/p6/addmul_1.asm &&
mv mpn/x86/p6/submul_1,asm mpn/x86/p6/submul_1.asm
if [ $? -ne 0 ]; then
echo >&2 "Error: moving *,asm files failed."
@@ -202,15 +202,15 @@
echo "Building a reduced version of MPIR to bootstrap GCC."
echo "MPIR will later get rebuilt (with the C++ interface and static libraries"
echo "enabled) using the new compiler."
- MPIR_CONFIGURE="--disable-cxx --disable-static $MPIR_CONFIGURE"
+ MPIR_CONFIGURE="$MPIR_CONFIGURE --disable-cxx --disable-static"
SAGE_FAT_BINARY=no
else
# Also build the static library to be used by e.g. ECM
# unless we are on Cygwin where we can only build a shared
- # or a static library but not both
+ # or a static library but not both:
if [ "$UNAME" = "CYGWIN" ]; then
- echo "Building MPIR with the C++ interface."
- MPIR_CONFIGURE="--enable-cxx --disable-static $MPIR_CONFIGURE"
+ echo "Building MPIR with the C++ interface and (only) shared libraries."
+ MPIR_CONFIGURE="--enable-cxx $MPIR_CONFIGURE --disable-static"
else
echo "Building MPIR with the C++ interface and (also) static libraries."
MPIR_CONFIGURE="--enable-cxx --enable-static $MPIR_CONFIGURE"
|
comment:118
P.S.: The spkg is otherwise clean. :-) |
comment:119
For completeness: diff --git a/SPKG.txt b/SPKG.txt
--- a/SPKG.txt
+++ b/SPKG.txt
@@ -50,11 +50,11 @@
== Changelog ==
-=== mpir-2.6.0.p0 (Jean-Pierre Flori, 25 November 2012) ===
+=== mpir-2.6.0.p0 (Jean-Pierre Flori, 12 January 2013) ===
* Trac #13137: Update to MPIR 2.6.0.
* Modify spkg-install to rename *,asm files to *.asm files.
* Remove -Wl,-z,noexecstack fix which has been integrated upstream.
- * Remove old code about 32 bits Apple Darwin and use upstream fix.
+ * Remove old code about 32 bits Apple Darwin and use slightly modified upstream fix.
=== mpir-2.5.2.p0 (John Palmieri, 3 October 2012) ===
* Trac #13137: Update to MPIR 2.5.2. An updated spkg with the above changes (to |
Changed reviewer from Jeroen Demeyer to Jeroen Demeyer, Leif Leonhardy |
This comment has been minimized.
This comment has been minimized.
comment:121
I've put the link to the spkg with my minor corrections into the description. |
This comment has been minimized.
This comment has been minimized.
Changed reviewer from Jeroen Demeyer, Leif Leonhardy to Jeroen Demeyer, Leif Leonhardy, John Palmieri, R. Andrew Ohana, Karl-Dieter Crisman |
Merged: sage-5.7.beta0 |
As the summary says. Also, mpir-2.4.0.p5.spkg fails self-tests, moreover it's old.
Upgrading to 2.6.0 fixes both issues.
This requires the fixed LinBox spkg from #13755.
Apply:
New spkg: http://boxen.math.washington.edu/home/leif/Sage/spkgs/mpir-2.6.0.p0.spkg
md5sum:
ec21b55dce699d3c8ddf0492e1413107 mpir-2.6.0.p0.spkg
mpir-2.6.0.p0 (Jean-Pierre Flori, 12 January 2013)
spkg-install
to rename*,asm
files to*.asm
files.-Wl,-z,noexecstack
fix which has been integrated upstream.mpir-2.5.2.p0 (John Palmieri, 3 October 2012)
patches/yasm__tools__re2c__code.c.patch
.mpir-2.4.0.p7 (Karl-Dieter Crisman, Jean-Pierre Flori, 1 August 2012)
ABI=32
on Cygwin.Depends on #13755
CC: @jpflori
Component: packages: standard
Keywords: mpir spkg
Author: John Palmieri, Jean-Pierre Flori, Karl-Dieter Crisman
Reviewer: Jeroen Demeyer, Leif Leonhardy, John Palmieri, R. Andrew Ohana, Karl-Dieter Crisman
Merged: sage-5.7.beta0
Issue created by migration from https://trac.sagemath.org/ticket/13137
The text was updated successfully, but these errors were encountered: