#9160: Singular - change timestamp of file and sort out SAGE64 isssue.
------------------------------------------------------+---------------------
   Reporter:  drkirkby                                |       Owner:  
GeorgSWeber 
       Type:  defect                                  |      Status:  
needs_review
   Priority:  blocker                                 |   Milestone:  
sage-4.4.4  
  Component:  build                                   |    Keywords:            
  
     Author:  David Kirkby and Willem Jan Palenstijn  |    Upstream:  N/A       
  
   Reviewer:                                          |      Merged:            
  
Work_issues:                                          |  
------------------------------------------------------+---------------------
Changes (by drkirkby):

  * status:  new => needs_review


Old description:

> == The problems ==
>
> There were three things wrong with the Singular package, the last of
> which can cause build failures.
>
>  * The ability to build 64-bit was restricted to the OS X operating
> system, as the -m64 flag was only added if both SAGE64 was set to "yes"
> and the operating system was OS X with the following line of code.
>  * The package version was unconventional, with people sometimes updating
> a date, rather than incrementing the patch level as is standard Sage
> practice - see the developers guide at
> http://www.sagemath.org/doc/developer/patching_spkgs.html#overview-of-
> patching-spkg-s
>  * The time stamp of the file {{{src/Singular/libparse.cc}}} was one
> second older than the file it was supposed to be created from (
> {{{src/Singular/libparse.l}}}), so the build process was trying to use
> 'flex' to update {{{src/Singular/libparse.cc}}}, which fails if flex is
> not available.
> {{{
> make install in Singular
> make[4]: Entering directory
> `/export/home/drkirkby/32/sage-4.4.3/spkg/build/singular-3-1-0-4-20100214/src/Singular'
> sh flexer.sh -I -Pyylp -t libparse.l >libparse.cc.lmp
> flexer.sh: flex: not found
> flexer.sh: test: argument expected
> make[4]: *** [libparse.cc] Error 1
> }}}
>  See http://groups.google.co.uk/group/sage-
> devel/browse_thread/thread/fbf5b7f781c3f523?hl=en for a discussion of
> this.
>
>  == The solutions ==
> Three very minor changes are made.
>  * The following
>
> {{{
>    if [ `uname` = "Darwin" -a "$SAGE64" = "yes" ]; then
> }}}
>
>  was changed to
>
> {{{
>    if [ "x$SAGE64" = xyes ]; then
> }}}
>
>  to enable 64-bit builds on any platform when SAGE64 is set to "yes".
>
>  * The time stamp of the file {{{src/Singular/libparse.cc}}} made the
> current time with:
> {{{
> touch src/Singular/libparse.cc
> }}}
>
>  * The package name was set in according with the Sage Developers Guide.
> Had this been done properly, it would be patch level 6, so the package
> was named singular-3.1.0.4.p6.
>
>  == Why a blocker ? ==
> The incorrect time stamp has caused build failures on Solaris and could
> cause them on other platforms too.

New description:

 == The problems ==

 There were three things wrong with the Singular package, the last of which
 can cause build failures.

  * The ability to build 64-bit was restricted to the OS X operating
 system, as the -m64 flag was only added if both SAGE64 was set to "yes"
 and the operating system was OS X with the following line of code.
  * The package version was unconventional, with people sometimes updating
 a date, rather than incrementing the patch level as is standard Sage
 practice - see the developers guide at
 http://www.sagemath.org/doc/developer/patching_spkgs.html#overview-of-
 patching-spkg-s
  * The time stamp of the file {{{src/Singular/libparse.cc}}} was one
 second older than the file it was supposed to be created from (
 {{{src/Singular/libparse.l}}}), so the build process was trying to use
 'flex' to update {{{src/Singular/libparse.cc}}}, which fails if flex is
 not available.
 {{{
 make install in Singular
 make[4]: Entering directory
 
`/export/home/drkirkby/32/sage-4.4.3/spkg/build/singular-3-1-0-4-20100214/src/Singular'
 sh flexer.sh -I -Pyylp -t libparse.l >libparse.cc.lmp
 flexer.sh: flex: not found
 flexer.sh: test: argument expected
 make[4]: *** [libparse.cc] Error 1
 }}}
  See http://groups.google.co.uk/group/sage-
 devel/browse_thread/thread/fbf5b7f781c3f523?hl=en for a discussion of
 this.

  == The solutions ==
 Three very minor changes are made.
  * The following

 {{{
    if [ `uname` = "Darwin" -a "$SAGE64" = "yes" ]; then
 }}}

  was changed to

 {{{
    if [ "x$SAGE64" = xyes ]; then
 }}}

  to enable 64-bit builds on any platform when SAGE64 is set to "yes".

  * The time stamp of the file {{{src/Singular/libparse.cc}}} made the
 current time with:
 {{{
 touch src/Singular/libparse.cc
 }}}

  * The package name was set in according with the Sage Developers Guide.
 Had this been done properly, it would be patch level 6, so the package was
 named singular-3.1.0.4.p6.

  == Why a blocker ? ==
 The incorrect time stamp has caused build failures on Solaris and could
 cause them on other platforms too.

 I'm not going to report this upstream, as its not a current version of
 Singular. It will need someone with more knowledge to update the version
 of Singular.

--

Comment:

 An updated .spkg may be found here

 http://boxen.math.washington.edu/home/kirkby/patches/singular-3.1.0.4.p6.spkg

 Dave

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