Choice of build system

Mark S. Miller markm@caplet.com
Mon, 05 Jun 2000 10:37:15 -0700


At 12:33 PM 6/2/00 , Ben Laurie wrote:
> > Would layering a specialized surface syntax on Ant indeed greatly improve
> > it, or am I misunderstanding the nature of the tool?
>
>So write a converter for your favourite syntax.

Here's the issue.  E is open source, so Paul or anyone else is free to take 
the sources & replace the Makefiles, bash-scripts, or whatever with an 
Ant-based build system.  Paul is perfectly free to distribute that, and 
others are free to use Paul's distribution rather than the "main" distribution.

Of course, from everything Paul has said, and from the ways these processes 
normally work, I assume Paul would prefer to have his changes accepted back 
into the main line.  Should he do these changes, and should I decide that 
they are an improvement, then I would accept them back into the main line 
and everyone would be happy.

However, if possible, I'd like to avoid encouraging Paul to do all this 
work, only to have me reject it even if he does a high quality job of doing 
what he said he would do.  Of all the things on my plate right now, the 
build system is low enough priority that I would not try to design my own 
Ant-wrapping syntax.  Without such a syntax, I doubt I would consider 
raw-XML-based-Ant an improvement.  That's why I'm suggesting to Paul that he 
try designing such a syntax.  With an adequate syntax designed up front and 
some examples expressed in it, I may be able to tell Paul that, if he 
succeeds at his plan and creates high enough quality code, that I would 
accept it back into the main line.  Otherwise, he takes his chances.

Paul, how does this sound to you?


> > In any case, the alternative I'm considering is just bash without make.
> > Given that incremental re-making isn't an issue, is there any reason to
> > prefer Ant to bash?
>
>It finds all the classes for you.

I don't understand what this means.


At 04:31 AM 6/3/00 , Ben Laurie wrote:
>Paul Snively wrote:
> > on 6/2/00 11:10 AM, Mark S. Miller at markm@caplet.com wrote:
> > > [...], is there any reason to
> > > prefer Ant to bash?
> > 
> > My only reason is that I can run Ant on MacOS and not bash.
>
>Ah yes - and on Windoze, too. And it knows about the different Java
>compilers...

bash does run on Windoze too.  I don't understand the comment about 
different Java compilers.

I consider it a requirement for E to run at least on Windoze >= 95, 
Linux/Unix, & Mac.  (Not that we satisfy these requirements yet.)  Once 
Java >= 1.3 runs on the Pilot (don't underestimate Moore's Law), I expect to 
require E to run there as well.  Everywhere Java goes that becomes 
important, E should be able to follow.  One might say that E uses Java as 
its "Platform Abstraction Layer".

However, I don't consider it a requirement that one can build the E binary 
distribution from the E source distribution, or to install E from sources, 
on all these platforms.  Currently, we can build on Windoze >= 95 & Linux/Unix 
(with many rough edges).  I don't currently see a great need to extend this 
set to include the Mac, Pilot, or anything else.


         Cheers,
         --MarkM