#9775: lcalc should make a .dll file on Cygwin instead of .so file
---------------------------+------------------------------------------------
   Reporter:  mhansen      |       Owner:  tbd         
       Type:  defect       |      Status:  needs_review
   Priority:  major        |   Milestone:  sage-4.5.3  
  Component:  cygwin       |    Keywords:              
     Author:  Mike Hansen  |    Upstream:  N/A         
   Reviewer:               |      Merged:              
Work_issues:               |  
---------------------------+------------------------------------------------

Comment(by leif):

 Some comments (on the spkg in general, not the Cygwin changes, with the
 exception of quoting {{{$SAGE_LOCAL}}}):

  * {{{$CFLAG64}}} and {{{$CXXFLAG64}}} should be quoted.

  * {{{CXXFLAG64}}} is exported (?) twice. (It is in fact currently used in
 the Makefile.)

  * In general, e.g. {{{-m64}}} should be added to {{{CPPFLAGS}}} as well.

  * In other packages, we disable optimization if {{{SAGE_DEBUG=yes}}}, and
 build '''with''' debugging symbols ({{{-g}}}) unconditionally, i.e.
 independent of the setting of {{{SAGE_DEBUG}}}.

  * {{{$MAKE}}} should be used instead of {{{make}}}. (Though {{{make}}} is
 called(!) inside the Makefile itself for the default target, {{{all}}},
 which we build. See below, too.)

  * {{{$SAGE_LOCAL}}} should be quoted, too (for future support of spaces).

  * The following case distinction is superfluous (and the branches are
 redundant as well):
 {{{
 #!sh
 if `test -d $SAGE_LOCAL/include/lcalc`; then
     rm -fr $SAGE_LOCAL/include/lcalc
     mkdir $SAGE_LOCAL/include/lcalc
     cp ../include/* $SAGE_LOCAL/include/lcalc
 else
     mkdir $SAGE_LOCAL/include/lcalc
     cp ../include/* $SAGE_LOCAL/include/lcalc
 fi
 }}}
    It should simply be:
 {{{
 #!sh
     rm -fr "$SAGE_LOCAL"/include/lcalc
     mkdir -p "$SAGE_LOCAL"/include/lcalc
     cp ../include/* "$SAGE_LOCAL"/include/lcalc
 }}}

  * I'm not sure if I should like the {{{success()}}} function (the
 messages are quite strange); same for the use of {{{set -e}}}.

  * There's no {{{spkg-check}}}, but unfortunately the test program has
 been removed from the sources anyway. Should be addressed in later
 versions (e.g. add a comment to ''"Special Update/Build Instructions"'').

  * These files have been removed without telling Mercurial:
 {{{
 #!sh
 $ hg status
 ! patches/lcalc-1.11-constification+solaris.patch
 ! patches/lcalc-1.11-gcc-4.3-build.patch
 ! patches/lcalc-1.11-memleak-fixes.patch
 }}}

  * The ''patched'' Makefile ({{{patches/Makefile.sage}}}, lacking the
 corresponding diff) isn't much better than the original.
    It also should '''not''' make Lcalc link against {{{libmpir.so}}} (or
 its static version), but - if at all - {{{libgmp.so}}} instead, since we
 configure MPIR with {{{--enable-gmpcompat}}} anyway. As is, it's the
 '''only''' package that breaks building with GNU MP, unless one creates a
 symbolic link from {{{libmpir.so}}} to {{{libgmp.so}}}.


 It would be nice to address at least some (especially the last) of these
 points ''here'', too, since it IMHO doesn't make much sense to frequently
 open new tickets and create new spkgs just for minor/clean-up changes.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9775#comment:5>
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