| 1 | | 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. |
| | 1 | 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": |
| | 2 | {{{ |
| | 3 | $ sage -hg status |
| | 4 | Detected SAGE64 flag |
| | 5 | Building Sage on OS X in 64-bit mode |
| | 6 | }}} |
| | 7 | 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. |
| | 8 | |
| | 9 | 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. |