#10039: Make Parma Polyhedra Library a standard library
----------------------------+-----------------------------------------------
Reporter: vbraun | Owner: mhampton
Type: enhancement | Status: new
Priority: major | Milestone: sage-feature
Component: geometry | Keywords: ppl spkg
Author: Volker Braun | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
----------------------------+-----------------------------------------------
Comment(by drkirkby):
Replying to [comment:11 mhansen]:
> This does build successfully on Cygwin, but it does take _quite_ awhile:
>
> {{{
> real 346m56.531s
> user 22m33.908s
> sys 26m33.122s
> Successfully installed ppl-0.11.p0
> }}}
That sure is a long time. I think it's because autoconf scripts takes ages
on Cygwin, because Windows has no fork.
On my Sun Ultra 27, it takes less than 82 seconds to install.
{{{
real 1m21.460s
user 4m6.543s
sys 0m27.474s
Successfully installed ppl-0.11.p0
Now cleaning up tmp files.
Making Sage/Python scripts relocatable...
Making script relocatable
Finished installing ppl-0.11.p0.spkg
}}}
However, it fails the test suite. To be more precise, the tests it runs
pass, but it fails to build some of the code needed for the tests.
I'm not sure what the gcc option {{{-W}}} is supposed to do. According to
the gcc manual {{{-w}}} (lower case) is to suppress all warnings. If
{{{-W}}} does the same as {{{-w}}}, then it seems the code tries to
supporess the warnings, then enable them, which seems a bit illogical. But
I can't find out exactly what {{{-W}}} is supposed to do.
BTW, this should be called ppl-0.11 and not ppl-0.11.p0. Only once a
version has appeared in Sage, and patches have been applied, should it be
called .p0.
A couple more points.
* There is no code to handle 64-bit builds on platforms where SAGE64=yes.
It needs something like this:
{{{
if [ "x$CFLAG64" = x ]; then
CFLAG64=-m64
fi
# If the environment variable SAGE64=yes, force building a 64-bit
version:
if [ "x$SAGE64" = xyes ]; then
echo "Building a 64-bit version of ppl"
CC="$CC $CFLAG64"
export CC
fi
}}}
That needs to be in both spkg-install and spkg-check.
* I don't think ''Unpack distribution into src/ directory'' needs to be
in the {{{Special Update/Build Instructions}}} section, as that is the
same with every single package.
* I would start {{{spkg-check}}} with {{{#!/usr/bin/env bash}}} to be
consistent. That said, there's nothing there which should not work with
any half-reasonable shell.
* It would be better to use {{{$MAKE}}} in {{{spkg-check}}} so the tests
can be run in parallel too, which should speed things up a lot.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10039#comment:14>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.