Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!emory!mephisto!udel!rochester!pt.cs.cmu.edu!o.gp.cs.cmu.edu!andrew.cmu.edu!jh4o+ From: jh4o+@andrew.cmu.edu (Jeffrey T. Hutzelman) Newsgroups: comp.lang.c Subject: Re: C + Make Message-ID: Date: 16 Sep 90 18:39:25 GMT References: <0949@sheol.UUCP>, <26567@mimsy.umd.edu> Organization: Carnegie Mellon, Pittsburgh, PA Lines: 33 In-Reply-To: <26567@mimsy.umd.edu> Chris Torek@mimsy.umd.ed writes: > (Too, it has the drawback of requiring that there be room in every > output file for the information needed by `make', or else that output > files come in pairs: foo.o and .depend.foo.o, or some such. Which is > `better' is to some extent a matter of taste. One can argue that every > `object' file should in fact be a directory: foo.o/text, foo.o/data, > foo.o/symbols, foo.o/debug, foo.o/depend.... Let the file system work > for you.) On a non-unix system, I use a derivation of this mechanism regularly. I create a driectory OBJECTS (not a case-sensitive filesystem) in which all my objects are placed. So my makefile looks somethng like this: objects/foo1.o : foo1.c foo1.h cc foo1.c keep=objects/foo1 objects/foo2.o : foo2.c foo2.h cc foo2.c keep=objects/foo2 objects/foo3.o : foo3.c foo3.h cc foo3.c keep=objects/foo3 foo : objects link objects/* keep=foo and the last line does all the work for me. ----------------- Jeffrey Hutzelman America Online: JeffreyH11 Internet/BITNET:jh4o+@andrew.cmu.edu, jhutz@drycas.club.cc.cmu.edu >> Apple // Forever!!! <<