DragonFly kernel List (threaded) for 2005-01
Re: link: "Recursive Make Considered Harmful"
On Wed, 2005-01-12 at 23:24, Jonas Sundström wrote:
> Andrew Hacking <ahacking@xxxxxxxxxxxxxxx> wrote:
> > My interpretation of the documentation was that it is impossible to
> > invoke an external tool and assign the output of a command to a
> > variable. This seemed a serious limitation _if_ that is the case,
> > and
> > rules out interfacing source code control systems, or whatever.
> It looks possible, but I'm not that familiar with Jam.
> actions AbsSymLink
> case "$target" in
> /*) ;;
> *) target=`pwd`/"$target";;
> $(RM) "$(1)" && $(LN) -s "$target" "$(1)"
> Snippet taken from here:
> (top level Jamfile and Jamrules)
> Two sub Jamfiles. Looks simple enough:
> /Jonas Sundström. www.kirilla.com
Jam actions are used during the updating/construction phase, not the
parsing phase, so the above does not allow variables to be assigned that
could affect the dependency graph which is built _prior_ to the
This would appear to inhibit the possibility of any dependency handling
where source code and/or additional jam files need to be checked out or
fetched as part of the build. It would prevent fetching code, extracting
tar-balls, patching and building like the ports system does.
It would seem that systems which require *all dependency knowledge* up
front are inappropriate where it is desirable to _not_ have a
pre-patched universe checked out on your machine, unless of course you
recursively used the build tool..and now we have come full circle to the
typical recursive make approach.