Subject: Re: make -j and failure modes
To: David Laight <david@l8s.co.uk>
From: Greywolf <greywolf@starwolf.com>
List: tech-userlevel
Date: 12/10/2003 14:01:31
Thus spake David Laight ("DL> ") sometime Today...
DL> > I have two thoughts on this:
DL> > 1. Make understands this already.
DL> > 2. Are you (David) saying "change make to understand
DL> > target: source
DL> > cd xxx
DL> > yyy
DL> > ?? i.e. "cd" actually takes effect over more than one line?
DL>
DL> Make currently looks at command lines and if they contain any special
DL> characters (even if quoted!) fires the command into the shell.
DL> Command that don't contain special characters are tokenised by make
DL> and it does a fork/exec itself.
Hm. That's interesting; didn't know it did that...
DL> If a command is recognised as 'cd xxx; yyy' make could fork, cd and exec.
DL> Other optimisations (eg builtin echo) might also be benefitial.
What if you have strings of those, i.e.
cd xxx; yyy; cd xxn; yyz; cd foo; bar; ...
You only gain one level of optimization, unless you're thinking make
should also be parsing command lines (which is starting to sound like a
nightmare...).
--*greywolf;
--
NetBSD: Stop, Drop, and Load