From owner-freebsd-hackers Sun Apr 23 20:48:26 2000 Delivered-To: freebsd-hackers@freebsd.org Received: from localhost (localhost [127.0.0.1]) by hub.freebsd.org (Postfix) with ESMTP id 6F15F37B800; Sun, 23 Apr 2000 20:48:20 -0700 (PDT) (envelope-from green@FreeBSD.org) Date: Sun, 23 Apr 2000 23:48:18 -0400 (EDT) From: Brian Fundakowski Feldman X-Sender: green@green.dyndns.org To: Chuck Robey Cc: hackers@FreeBSD.ORG Subject: Re: commit MAKE_SHELL? In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Sun, 23 Apr 2000, Chuck Robey wrote: > in general, it's a good idea, but the problem, is, it gives a lot more > freedom without any real gain. It only allows one to write Makefiles that > use your private choice of shell, and you can do anything you want, I > think, as it is now. That's not the purpouse, though. Yes, anyone can do that now, as they're perfectly free to modify the source as they please. And, yes, csh was in the source already (!) which is only why I put it there. > Your next paragraph, where you give "csh" as an example, it (I think) a > perfect counter-example, because (as we all know) csh is a horrible > scripting language, but I bet it gets used. Not only that, but one will > end up having hav have 15 different shells installed on machines, just to > build things that require odd shells. > > Just so you don't have to use sh. This is more than about freedom of shells for make(1). Noone is going to write proprietary Makefiles simply because noone is going to accept the heat for trying to make people recompile their make(1) just to build their program. Don't put the idea off because of this, as I really feel that this is unrealistic. > The idea of being able to use your own shell is great, until you think > about how you're opening the door to abuse of it. The door's already open. Go to src/usr.bin/make. for i in *.[ch]; do perl -pi 's:/bin/sh:/bin/bash:g' $i; done And you can rebuild make(1) to use bash. It's extremely simple to make it use the shell of the day. The idea here is that our /bin/sh is not nearly as fast for many things as other Bourne shells. There should be the option to allow a user to enable a faster shell. I can easily disable the csh logic, and anyone can easily reenable it. What do you have against enabling people to use another Bourne-compatible shell if it makes things faster? I'm only criticizing the logic that it will make people want to use various shells to make Makefiles nonstandard. There's GNU make for that, anyway. > ---------------------------------------------------------------------------- > Chuck Robey | Interests include C & Java programming, FreeBSD, > chuckr@picnic.mat.net | electronics, communications, and signal processing. > > New Year's Resolution: I will not sphroxify gullible people into looking up > fictitious words in the dictionary. > ---------------------------------------------------------------------------- -- Brian Fundakowski Feldman \ FreeBSD: The Power to Serve! / green@FreeBSD.org `------------------------------' To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message