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