[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: shortcut of ":" but not /bin/true

From: David Boyce
Subject: Re: shortcut of ":" but not /bin/true
Date: Tue, 18 May 2004 10:17:30 -0400

At 09:46 AM 5/18/2004, Paul D. Smith wrote:
%% David Boyce <address@hidden> writes:
  db> Which raises the question: why wasn't the fast path in use in the
  db> truss output I showed? The answer is apparently that the generated
  db> Perl makefiles have an explicit SHELL=/bin/sh which disables the
  db> fast path.

Are you sure?  I'm surprised because there's some code in job.c which
checks the value of the SHELL variable to see whether it looks like a
valid shell; it basically does a strcmp() with "/bin/sh" and if it's
different it uses the slow path.

No, I'm not at all sure. I merely noticed that the truss output appeared to show an unneeded shell invocation and when I noticed an assignment to SHELL in the Makefile(s) I assumed it was the culprit. I'll take a closer look and see if I can figure out what's going on without internalizing the entire Perl build model (which I could do without).

Argh. I just looked more closely into some of the ancillary Perl makefiles and found this:

NOOP = $(SHELL) -c true

followed by all kinds of underbrush like

all :: pure_all manifypods
        $(NOECHO) $(NOOP)

No accounting for taste, I guess.

-David Boyce

reply via email to

[Prev in Thread] Current Thread [Next in Thread]