forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Turner <>
Subject [PATCH] acorn.xml: bootstrapping new projects (Re: NPEs on second build + rant)
Date Sat, 17 Aug 2002 11:53:54 GMT
On Fri, Aug 16, 2002 at 03:27:33PM +0200, Marc Portier wrote:
> On this very topic, my analysis at this stage would be:
> There is currently too much coupling between the forrest
> build.xml and the generation of the docs.

Yep :) There's no separation between "building Forrest" and "building a
website's docs with Forrest". Consequently, anyone wanting to use Forrest
has to first dig through build.xml to separate the forresty bits from the
build system.

> The correct steps would be
> - decide on forrest in your project
> - get forrest from cvs
> - build forrest (so the main build target of forrest should
> not build its own docs!)
> - have your project refer to forrest for building YOUR docs
> The start with forrest and modify to your own project is not
> an option to get you started, it is pretty much a
> requirement to ever get somewhere.

I agree.

In penance for wrongfully maligning a worthy project, I went ahead and
implemented a script that builds the docs with Forrest in whichever
project it's part of. It uses xml-forrest as a static resource, eg in
/usr/local/forrest, that you download and build once. Forrest's 16mb is
far too much to duplicate across multiple projects.

It's called acorn.xml to suggest the idea of something that can bootstrap
a 'forrest'. Acorns have to grow wherever they're dropped.  Thus if you
run acorn.xml in an empty directory, it creates a skeleton Forrest layout
and builds that. If the directory contains an existing Forrest doc
structure (eg it's in xml-forrest/ itself), it will build those docs.

The script will also (optionally) download Forrest from CVS, and build
it. The idea is that you literally don't need anything more than Ant and
acorn.xml to start using Forrest. Copy it somewhere, define
'forrest.home' to /usr/local/forrest or wherever, and type 'ant -f
acorn.xml', and a while later you'll have Forrest installed, built, a new
doc structure created and generated docs for that project.


> -marc=

View raw message