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