#7344: New libjpeg package
---------------------------+------------------------------------------------
Reporter: timdumol | Owner: mabshoff
Type: enhancement | Status: needs_work
Priority: major | Milestone:
Component: packages | Keywords:
Work_issues: | Author: Tim Dumol
Upstream: N/A | Reviewer:
Merged: |
---------------------------+------------------------------------------------
Changes (by drkirkby):
* status: needs_review => needs_work
Comment:
A few points looking at spkg-install, which is overly complicated
following recent updates to sage-env.
* The recent changes to sage-env (#7818) will mean a '''lot''' of spkg-
install can be removed. In particular most, if not all the SAGE64 stuff,
as sage-env will automatically add the right flags to CFLAGS, CXFLAGS etc
for a 64-bit build. It will not do this (yet) for LDFLAGS so it '''may'''
be necessary to add that, but I'm not convinced it will be necessary. It
needs testing on bsd.math without the LD flags set. If it builds, then
forgot it all. If it needs LDFLAGS to have -m64, replace -m64 with
{{{
if [ "x$SAGE64" = xyes ] ; then
LDFLAGS="$LDFLAGS $CFLAG64"
export $LDFLAGS
fi
}}}
then it will work irrespective of the flag needed to generate 64-bit
binaries. (Not all compilers need -m64, as others use -q64 and other
flags). I'm not totally convinced LDFLAGS ever needs -m64, as I believe
LDFLAGS gets passed to the linker. No linker I am aware of has the -m64
option (check GNU binutils manual if you wish). But I'm not 100% sure it
is never needed. I think the right flag if needed is -64 for the GNU
linker, but it is rarely needed, as normally the linker can work out
whether a 32 or 64 bit binary is needed, based on the object files. The
exception is when creasting shared libraries from archives, where the
linker may not be able to determine this.
* Remove the checks for the Sun compiler and adding -Wall with gcc. The
updates to sage-env will add the -Wall for you with gcc.
* Remove the checks to see if there is a mix of Sun and GNU compilers -
that is taken care of elsewhere now.
* Unless there is good reason, remove the
{{{
: ${CP=cp}; CP="$CP -f"; export CP
: ${MV=mv}; MV="$MV -f"; export MV
: ${RM=rm}; RM="$RM -f"; export RM
}}}
as it was agreed recently (see sage-devel) that there is no need for there
to be variables for very basic commands. However, if the source code makes
use of $CP etc, then they might have to stay. But if possible, just use
mv, cp etc.
* Someting called 'CC' is used here. I'm not sure what that is, but be
aware the Sun C++ compiler is called 'CC' so there might be a name clash.
Make sure the absolute path to CC is specified if it's not already done,
otherwise it may break if the Sun C++ compiler is in the path.
* Give me a day or so, and I'll put on sage-devel a '''considerably'''
simpler skeleton spkg-install which will remove 95% of this.
It does actually build on Solaris, but the spkg-install could be reduced
considerably in size, as most of these checks are now done in once place.
I'll help you do this.
Dave
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/7344#comment:9>
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.