From owner-freebsd-current Mon Aug 14 09:41:45 1995 Return-Path: current-owner Received: (from majordom@localhost) by freefall.FreeBSD.org (8.6.11/8.6.6) id JAA27369 for current-outgoing; Mon, 14 Aug 1995 09:41:45 -0700 Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.34]) by freefall.FreeBSD.org (8.6.11/8.6.6) with ESMTP id JAA27345 for ; Mon, 14 Aug 1995 09:41:34 -0700 Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.9/8.6.9) id CAA22537; Tue, 15 Aug 1995 02:37:54 +1000 Date: Tue, 15 Aug 1995 02:37:54 +1000 From: Bruce Evans Message-Id: <199508141637.CAA22537@godzilla.zeta.org.au> To: wollman@halloran-eldar.lcs.mit.edu, wosch@cs.tu-berlin.de Subject: Re: make(1) extension for SHELL COMMANDS Cc: current@freebsd.org Sender: current-owner@freebsd.org Precedence: bulk >>It's not what it says about the Bourne Shell that's relevant here, >>it's what it says about the `make' program. In particular, it says >>that all commands are to be executed by means of `/bin/sh -c'. Doesn't it say `as if' by `/bin/sh -c'? It's probably too hard for `make' to know when `/bin/sh -c' need not be used. E.g., the command might be a shell script not beginning with #!/bin/sh. Then `/bin/sh -c' of the script would work but exec of the script would fail. >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? >>Well, that's yet another way in which pmake is broken with respect to >>POSIX. I'm not at all surprised to hear it. We don't need to make >>the situation even worse than it already is. >Is POSIX a religion? I want a good OS ... I think an escape should be allowed. Bruce