Ticket #4223 (assigned defect)

Opened 3 months ago

Last modified 2 months ago

[with spkg, needs work] upgrade fpLLL to newest upstream release (3.0)

Reported by: malb Assigned to: mabshoff (accepted)
Priority: major Milestone: sage-3.4
Component: packages Keywords:
Cc:

Description (Last modified by mabshoff)

The main differences between fplll-2.1 and fplll-3.0 are the following:

- short lattice vector enumeration algorithm (by Xavier Pujol).
- GPL -> LGPLv2
- no more need to specify the number of rows and columns in the input
of the fplll binary.
- new version of dpe.h [Patrick Pelissier and Paul Zimmermann]

Note that #1346 should be resolved since it will actually test fplll from inside Sage. As is we are testing if any internal error pops up or if the doctest segfaults.

Attachments

dpe.h.patch (359 bytes) - added by mabshoff on 10/01/2008 01:21:20 AM.

Change History

09/30/2008 12:20:43 PM changed by mabshoff

  • status changed from new to assigned.
  • summary changed from upgrade fpLLL to newest upstream release (3.0) to [with spkg, needs review] upgrade fpLLL to newest upstream release (3.0).

A first version of the spkg can be found at

http://sage.math.washington.edu/home/mabshoff/release-cycles-3.1.3/alpha2/libfplll-3.0.7.spkg

I did remove three of our four fixes since they made it upstream. A Solaris fix to dpe.h remains the only outstanding fix that needs to be upstreamed. I will do some more build testing to make sure all the usual suspects are working.

Cheers,

Michael

09/30/2008 12:28:57 PM changed by mabshoff

This ticket should be merged together with #1346 to make sure that fplll actually works :). malb will likely have time to do that ticket before 3.1.3 ships.

Cheers,

Michael

09/30/2008 12:52:42 PM changed by mabshoff

  • summary changed from [with spkg, needs review] upgrade fpLLL to newest upstream release (3.0) to [with spkg, needs work] upgrade fpLLL to newest upstream release (3.0).

Builds fine and make check passes on

  • Linux x86-64 (eno, sage.math, menas)
  • Linux Itanium (cleo, iras)
  • OSX 10.4 PPC (varro), OSX 10.5 Intel (bsd)

It is *broken* on

  • Linux x86 (cicero)

As is it fails to build on Solaris 10:

make[1]: Entering directory `/home/mabshoff/build-3.1.3.alpha0/sage-3.1.3.alpha0-fulvia/libfplll-3.0.7/src/src'
if g++ -DPACKAGE_NAME=\"libfplll\" -DPACKAGE_TARNAME=\"libfplll\" 
-DPACKAGE_VERSION=\"3.0.7\" -DPACKAGE_STRING=\"libfplll\ 3.0.7\" 
-DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"libfplll\" -DVERSION=\"3.0.7\" -DSTDC_HEADERS=1 
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 
-DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 
-DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DHAVE_LIBGMP=1 -DHAVE_LIBMPFR=1 -DSTDC_HEADERS=1 
-DHAVE_FLOAT_H=1 -DHAVE_LIMITS_H=1 -DHAVE_STDLIB_H=1 -DHAVE_SYS_TIME_H=1 
-DHAVE_UNISTD_H=1 -DHAVE_STDBOOL_H=1 -DHAVE_FLOOR=1 -DHAVE_POW=1 -DHAVE_RINT=1 
-DHAVE_SQRT=1 -DHAVE_STRTOL=1 -I. -I.   -I/home/mabshoff/build-3.1.3.alpha0/sage-
3.1.3.alpha0-fulvia/local/include/  -fPIC -I/home/mabshoff/build-3.1.3.alpha0/sage-
3.1.3.alpha0-fulvia/local/include/ -L/home/mabshoff/build-3.1.3.alpha0/sage-
3.1.3.alpha0-fulvia/local/lib -MT main.o -MD -MP -MF ".deps/main.Tpo" -c -o main.o 
main.cpp; \
        then mv -f ".deps/main.Tpo" ".deps/main.Po"; else rm -f ".deps/main.Tpo"; exit 1; fi
In file included from defs.h:36,
                 from util.h:29,
                 from lexer.h:26,
                 from main.h:26,
                 from main.cpp:22:
dpe.h: In function ‘void dpe_normalize(dpe_struct*)’:
dpe.h:167: error: ‘finite’ was not declared in this scope
In file included from nr.h:187,
                 from util.h:30,
                 from lexer.h:26,
                 from main.h:26,
                 from main.cpp:22:
nr.cpp: In member function ‘void FP_NR<F>::set_nan() [with F = double]’:
nr.cpp:920: error: ‘NAN’ was not declared in this scope
nr.cpp: In member function ‘void FP_NR<F>::set_nan() [with F = dpe_struct [1]]’:
nr.cpp:1085: error: ‘NAN’ was not declared in this scope

The spkg should also run spkg-check automatically for now until we are reasonably sure that libfplll works.

Cheers,

Michael

09/30/2008 03:56:01 PM changed by mabshoff

10/01/2008 01:21:20 AM changed by mabshoff

  • attachment dpe.h.patch added.

10/02/2008 07:22:54 AM changed by mabshoff

  • description changed.

10/25/2008 08:37:24 PM changed by mabshoff

The latest upstream is 3.0.11 or so and the dpe.h patch has been integrated.

Cheers,

Michael