#5310: Add an spkg to Sage for Msieve factoring program
-------------------------------------------------------------------------------------+
Reporter: jblakeslee
| Owner:
Type: enhancement
| Status: needs_work
Priority: major
| Milestone: sage-4.8
Component: interfaces
| Keywords: msieve, factorization
Work_issues: does not work on 32-bit, Solaris not handled well, no spkg-check
file | Upstream: N/A
Reviewer: David Kirkby, Leif Leonhardy
| Author: André Apitzsch
Merged:
| Dependencies:
-------------------------------------------------------------------------------------+
Changes (by drkirkby):
* work_issues: does not work on 32-bit => does not work on 32-bit,
Solaris not handled well, no spkg-check
file
Comment:
The fails on my !OpenSolaris box, and I can see will fail on any sort of
Solaris system. These lines:
{{{
if [ "`uname -m`" = "SunOS" ]; then
$MAKE generic ECM=1
fi
}}}
make no sense, as the -m option to 'uname' is defined by POSIX to return
the hardware, not the operating system. See:
http://pubs.opengroup.org/onlinepubs/009695399/utilities/uname.html
So it produces:
{{{
drkirkby@hawk:~$ uname -m
i86pc
}}}
and on a SPARC would produce something different, like sun4m, sun4u, sun4v
and possibly something else for the newer processors. On my old SPARC
{{{
-bash-3.00$ uname -m
sun4u
}}}
Rather than invoke the external program 'uname', it is better to use the
sage variable UNAME. The following is the most robust way of testing a
variable, which will work for any shell, and pretty much any
circumstances.
{{{
if [ "x$UNAME" = xSunOS ] ; then
}}}
There's nothing to build a 64-bit version on Solaris - the SAGE64 variable
is not used.
I also got another failure:
{{{
****************************************************
patching file Makefile
Error building Msieve -- no file msieve was produced.
real 0m0.022s
user 0m0.006s
sys 0m0.015s
sage: An error occurred while installing msieve-1.49.p0
}}}
I suspect this is picking up the Solaris version of patch, not the GNU one
which is part of Sage, though I've never seen this issue before.
Also, this seems a bit pointless
{{{
$CP msieve "$SAGE_LOCAL"/bin/
}}}
We should just call 'cp' directly. Variables are useful for programs like
"make", but not for a simple copy like this.
The whole of spkg-install is a bit of a mess. It basically needs a total
re-write.
Also, there is no spkg-check file.
Dave
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5310#comment:30>
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.