#10303: clean up sage-check-64 and use of SAGE64
------------------------+---------------------------------------------------
 Reporter:  jhpalmieri  |         Owner:  GeorgSWeber                 
     Type:  defect      |        Status:  needs_work                  
 Priority:  blocker     |     Milestone:  sage-4.7                    
Component:  build       |    Resolution:                              
 Keywords:  64          |        Author:  John Palmieri               
 Upstream:  N/A         |      Reviewer:  David Kirkby, Leif Leonhardy
   Merged:              |   Work_issues:                              
------------------------+---------------------------------------------------

Old description:

> There are some problems with SAGE64 and sage-check-64. First, sage-
> check-64 gets run whenever sage-env gets run, which is way too often. As
> a consequence, if SAGE64 is set, I get extra messages printed whenever I
> run anything like "sage -hg": {{{ $ sage -hg status Detected SAGE64 flag
> Building Sage on OS X in 64-bit mode }}} This is annoying on its own, but
> it also produces incorrect information when running "sage -pkg": the
> extra messages make hg think that there are unchecked in changes. Also,
> in several files in the scripts repo, comments say that SAGE64 is only
> for use on OS X or Solaris, but there are no such distinctions in various
> spkg-install files that I've looked at: if SAGE64 is set, then it tries
> to build in 64-bit mode, regardless of the platform. In contrast, the
> file sage-check-64 only prints messages about building 64-bit if on OS X
> or Solaris. Finally, the script sage-check-64 creates a file
> SAGE_LOCAL/lib/sage-64.txt if SAGE64 is set to "yes", to record the fact
> that this is a 64-bit build. This makes sense if SAGE64 is unset, but if
> the user sets SAGE64 to "no", then this file should be ignored, and in
> fact deleted. The attached patch gets rid of the distinction between OS
> X, Solaris, and everything else. It deletes sage-64.txt if SAGE64 is
> "no". It also only runs sage-check-64 from sage-spkg (which is what calls
> spkg-install) and sage-build (which may not be strictly necessary, but it
> was there already). It no longer runs it from sage-env. Since it gets run
> by sage-spkg, it is now included in spkg/base.
>
> -----
>
> I've asked some questions about this on  sage-devel. If the answers are
> not what I expect, then this may need to be rethought. -
>
> ----
>
> Instructions: - apply trac_10303-scripts-SAGE64.v3.patch. - copy
> trac_10303-install to SAGE_ROOT/spkg/install, or apply the corresponding
> patch for that file. - apply 10303-add-sage-check-64-dot-hgignore.patch
> to the base repo (SAGE_ROOT/spkg/base). To produce a version with which
> to test from scratch, you then have to run "sage -sdist ..." to make sure
> that the necessary files from the scripts repo are copied to spkg/base.

New description:

 There are some problems with SAGE64 and sage-check-64. First, sage-
 check-64 gets run whenever sage-env gets run, which is way too often. As a
 consequence, if SAGE64 is set, I get extra messages printed whenever I run
 anything like "sage -hg":
 {{{
 $ sage -hg status
 Detected SAGE64 flag
 Building Sage on OS X in 64-bit mode
 }}}
 This is annoying on its own, but it also produces incorrect information
 when running "sage -pkg": the extra messages make hg think that there are
 unchecked in changes. Also, in several files in the scripts repo, comments
 say that SAGE64 is only for use on OS X or Solaris, but there are no such
 distinctions in various spkg-install files that I've looked at: if SAGE64
 is set, then it tries to build in 64-bit mode, regardless of the platform.
 In contrast, the file sage-check-64 only prints messages about building
 64-bit if on OS X or Solaris. Finally, the script sage-check-64 creates a
 file SAGE_LOCAL/lib/sage-64.txt if SAGE64 is set to "yes", to record the
 fact that this is a 64-bit build. This makes sense if SAGE64 is unset, but
 if the user sets SAGE64 to "no", then this file should be ignored, and in
 fact deleted.

 The attached patch gets rid of the distinction between OS X, Solaris, and
 everything else. It deletes sage-64.txt if SAGE64 is "no". It also only
 runs sage-check-64 from sage-spkg (which is what calls spkg-install) and
 sage-build (which may not be strictly necessary, but it was there
 already). It no longer runs it from sage-env. Since it gets run by sage-
 spkg, it is now included in spkg/base.

 -----

 I've asked some questions about this on  sage-devel. If the answers are
 not what I expect, then this may need to be rethought.

 -----

 Instructions:

  - apply trac_10303-scripts-SAGE64.v3.patch.
  - copy trac_10303-install to SAGE_ROOT/spkg/install, or apply the
 corresponding patch for that file.
  - apply 10303-add-sage-check-64-dot-hgignore.patch to the base repo
 (SAGE_ROOT/spkg/base). To produce a version with which to test from
 scratch, you then have to run "sage -sdist ..." to make sure that the
 necessary files from the scripts repo are copied to spkg/base.

--

Comment(by jhpalmieri):

 The status is, the patches here don't work with upgrades.  There was also
 some debate about the approach in general.  If someone else has the time
 and energy to work on it, please go ahead; it might be best to start over.

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