#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.


Reply via email to