Path: utzoo!attcan!uunet!cs.utexas.edu!tut.cis.ohio-state.edu!ucbvax!ulysses!ggs From: ggs@ulysses.homer.nj.att.com (Griff Smith) Newsgroups: comp.unix.wizards Subject: Re: 'nmake' Summary: brief case history, request for comments Message-ID: <11593@ulysses.homer.nj.att.com> Date: 25 May 89 14:16:44 GMT References: <1989@internal.Apple.COM> <11570@ulysses.homer.nj.att.com> <2066@unisoft.UUCP> Organization: AT&T Bell Laboratories, Murray Hill Lines: 48 In article <2066@unisoft.UUCP>, sparker@unisoft.UUCP (Steve Parker) writes: ... > > First of all, you can turn off source scanning if you want. And, anyway, > > source files are rescanned only if they've changed since the last time > > they were compiled, so you're clearly exaggerating the overhead. > > Sorry, it makes it slightly slower. And wrong. I haven't noticed any slowdown caused by this. But that's not the point; in practice, this feature saves me a lot of effort. I tried to use `make' to direct compilation of about 80 C++ source files, plus associated function prototype headers. I could not reliably keep the header references up to date. I realize that I could have stolen a `make depend' script from some of the BSD source, but my headers were changing so frequently that I would have had to `make depend' before most compilations. The default nmake rules did the right thing. I will add any flames that `you should have done it this way, you dolt' to my bag of tricks. I haven't seen any better ones than what I get from nmake. > Nmake isn't simple. Putting features like scanning C source files for > dependencies is a poor cost/benefit decision. Nmake's design reflects > an attempt to design with _all_ possible customers in mind. > > In my opinion, nmake is a poorer tool even than make. And other new > makes have a less confusing, more sensible view of the world. (e.g., > mk and GNUmake) I share many of your concerns; I don't care for the `slices, dices, chops and grates' syndrome either. My dependence on nmake is similar to that of an addict for drugs. I can do without it for most C compilations, but when I try to use `make' for building C++ systems I get withdrawal symptoms. The automatic maintenance of source dependencies eliminates a major headache. Perhaps this means that I should also discard C++ because it also attempts to address too many problems without delegation. I'm sorry that the Toolchest version of nmake has caused you so much grief. I have been using the new version for about a year now, and it has usually served me well (it also helps to know Glenn's phone number). I doubt that it will ever overcome your philosophical objections, but it is considerably more polished than it was three years ago. -- Griff Smith AT&T (Bell Laboratories), Murray Hill Phone: 1-201-582-7736 UUCP: {most AT&T sites}!ulysses!ggs Internet: ggs@ulysses.att.com