Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site fortune.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!ihnp4!fortune!olson From: olson@fortune.UUCP (Dave Olson) Newsgroups: net.unix Subject: Re: Failure to execute 'csh'-commands from 'make' Message-ID: <5462@fortune.UUCP> Date: Tue, 13-Aug-85 16:23:07 EDT Article-I.D.: fortune.5462 Posted: Tue Aug 13 16:23:07 1985 Date-Received: Sat, 17-Aug-85 14:41:49 EDT References: <291@oce-rd1.UUCP> <5433@fortune.UUCP> <824@plus5.UUCP> <562@brl-tgr.ARPA> Reply-To: olson@fortune.UUCP (Dave Olson) Organization: Fortune Systems, Redwood City, CA Lines: 19 Keywords: make 1) Setting SHELL=/bin/csh in the makefile (for 'augmented make') will NOT cause all shell scripts to be run by the csh. It WILL cause extra overhead for sh scripts, as csh will look at the file, determine it doesn't start with a '#', and exec /bin/sh to run it. For Bourne shell scripts that start with a '#', there are problems (which have been hashed out here many times ...) 2) Not all systems yet support the #! syntax, not even all those that have csh! 3) Someone asked how to force make to run the shell for command lines like 'if test ...'. Remember that make parses the command lines to determine if they have shell meta-characters, and tries to exec the command directly if none are found. To force make to exec the shell, add a ';' somewhere in the command line (or some other shell meta-character). [The actual meta-characters make checks for probably vary from site to site, and version to version.] Dave Olson, Fortune Systems