Date: Mon, 14 Aug 1995 19:04:04 +0200 From: Wolfram Schneider <wosch@cs.tu-berlin.de> To: Bruce Evans <bde@zeta.org.au> Cc: wollman@halloran-eldar.lcs.mit.edu, current@freebsd.org Subject: Re: make(1) extension for SHELL COMMANDS Message-ID: <199508141704.TAA17375@caramba.cs.tu-berlin.de> In-Reply-To: <199508141637.CAA22537@godzilla.zeta.org.au> References: <199508141637.CAA22537@godzilla.zeta.org.au>
next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans writes:
>>pmake use /bin/sh -c or /bin/sh -ec
>
>> } else {
>> /*
>> * No meta-characters, so no need to exec a shell. Break the command
>> * into words to form an argument vector we can execute.
>> * brk_string sticks our name in av[0], so we have to
>> * skip over it...
>> */
>> av = brk_string(cmd, &argc, TRUE);
>
>Does it handle weird $IFS's?
No.
$ egrep IFS /src/usr.bin/make/* | grep -v WIFS
This do only gnu-make:
make-3.74/job.c:
/* Figure out the argument list necessary to run LINE as a command. Try to
avoid using a shell. This routine handles only ' quoting, and " quoting
when no backslash, $ or ` characters are seen in the quotes. Starting
quotes may be escaped with a backslash. If any of the characters in
sh_chars[] is seen, or any of the builtin commands listed in sh_cmds[]
is the first word of a line, the shell is used.
If RESTP is not NULL, *RESTP is set to point to the first newline in LINE.
If *RESTP is NULL, newlines will be ignored.
SHELL is the shell to use, or nil to use the default shell.
IFS is the value of $IFS, or nil (meaning the default). */
Wolfram
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199508141704.TAA17375>
