On Tue, Oct 13, 2009 at 6:40 PM, Dr. David Kirkby
<david.kir...@onetel.net> wrote:
>
> William Stein wrote:
>
>>> To be honest, if we have a configure script at the top level, we might
>>> as well move the stuff from prereq into it. It would look a lot more
>>> 'normal' if someone see the configure script was checking for the
>>> compilers, checking for perl etc. Just do not let the configure script
>>> create the makefile in the normal way, but instead create the exact same
>>> makefile we have.
>>
>> We could do that to look more normal.  But keep in mind that prereq
>> doesn't really *do* anything for the Sage install.  It is merely a
>> check.  And I don't think we should force it to *have* to be autoconf,
>> which your suggestion would do (i.e., who knows, maybe someday our
>> students rewrite the prereq script in Python or something...).  Also,
>> prereq leaves no data laying around that is used in any way by the
>> rest of Sage.     But I agree, it would looked "normal".
>>
>>  -- William
>
> I'm not saying the top level configure script needs to be created by
> autoconf, though it would look more 'normal' if it was, as 95% of
> 'configure' scripts are created using autoconf.
>
> But given we have prereq working with autoconf and nobody has yet
> re-written it in python, it would seem sensible to me to just move the
> functionality to a top-level configure script. If as some later date,
> someone want to rewrite it in python, then they can.
>
> The idea of copying the Makefile from some other location sounds good.
> Much better than my idea of echo statements, as it could be changed
> quickly, without having to run autoconf.
>
> Ideally 'make clean' or 'make distclean' would actually remove the
> makefile too. (BTW, the .BUILDSTART file should be added to the list of
> things that gets removed with a 'make clean').

If we move prereq into configure, then the current workflow which
people are used to with sage -- namely "just type make" -- will no
longer work.      We should keep in mind the pain for some people when
we make backwards incompatible changes that make things more
complicated for people.  There has to be a significant benefit.  Keep
in mind that a *lot* of Sage users -- probably most -- are not UNIX
hackers, and would consider the second version below more complicated
with no gain at all:

TO BUILD SAGE:
   1. Type "make"

vs

TO BUILD SAGE:
   1. Type "./configure"
   2. Type make


Obviously *I* could personally get quickly get used to the second
option, and in fact as I mentioned earlier I'm annoyed that Sage's
build system is a little different than most UNIX software (I.e.,
skipping the ./configure step).  But I have to balance this with
concern for the vast majority of people that build Sage from source.
(Last month we had *no* sage releases and there were over 500 source
downloads.)

Wow, it has been a full 2 months since a Sage release.

Big complaint to Harald Schilly: How do I find source code for old
releases of SAGE!?

  1. If I go to http://sagemath.org/src/ there is only the last release.

  2. If I click on "up one directory level", I'm just dumped to
http://sagemath.org, which makes no sense.

  3. Clicking on changelogs gives
http://sagemath.org/src/changelogs/index.html which does indeed list
changelogs.  But it also lists  a file "OLD_VERSIONS_HERE.txt",
randomly right in the middle.  Looking at that file I find the
completely wrong statement: "These are archived old versions.  For the
new versions see the main SAGE website. http://modular.ucsd.edu/sage";.

  4. There is a random "README.txt" for no reason also in the middle
of http://sagemath.org/src/changelogs/

  5. Finally, logging into the server I find that
http://sagemath.org/src-old/ has the old versions.  But how could I
find that otherwise?   Also, the description at the top of src-old
doesn't explain what it is accurately.  It would be better to say
"Here you can download the source code for any past version of Sage so
you can build it from source."

  6. This listing at http://sagemath.org/src-old/ also has various
random files like README.txt.in and install.html mixed in.

If you don't have time to fix the above, just say so, since I'm sure
somebody does.

In many talks, etc., I have made a big stink about how every released
version of Sage is available, so if a paper uses sage-x.y.z, then it
is possible to get sage-x.y.z and try out the computation (unlike the
situation with magma, say).    So I think making the old source easy
to find is important.

William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to