rkxyv@mergvax (Rob Kedoin) (12/19/88)
I requested this information from comp.sources.wanted without any success. Can anyone from this newsgroup help ? --- Does anyone know of any Public Domain makefile generators for UNIX ? My problem is that programmers(myself included) occasionally forget to add dependencies into their Makefiles. I am looking for a tool that will somehow create/verify a Makefile so I can be confident that no dependencies have been forgotten. I would like information on non-public domain, UNIX, programs if anyone has it. Thanks in advance, -Rob Kedoin UUCP: ...{cpmain,icus,motown,philabs}\!mergvax\!rkxyv ARPA: rkxyv%mergvax.UUCP@uunet.uu.net BITNET: rkxyv%mergvax.UUCP@uunet.uu.net.BITNET SNAIL-mail: Linotype Company - R&D 425 Oser Avenue Hauppauge, NY 11788 VOICE: (516) 434 - 2729
collin@hpindda.HP.COM (Collin Park) (12/22/88)
'mkmf' (according to my manpages, was written by UC Berkeley) is non public domain i guess. the manpage i have also refers to an article called 'automated generation of make dependencies' in software practice and experience 14:6 pp 575-585 (June 1984). i don't know of any public domain ones. ------------------------------------------------------------------------------ Unless explicitly stated otherwise, opinions expressed above are my own and do not explicitly reflect those of the Hewlett-Packard Company or any other person or entity. collin park Hewlett-Packard Company collin%hpda@hplabs.hp.com 19420 Homestead Road -- MS 43LT Cupertino, CA 95014 USA
jerbil@cit-vax.Caltech.Edu (Joe Beckenbach) (12/23/88)
[Tried replying to the original article but mailer bounced it] The X windows system has a 'makedepend' command which parses like a C preprocessor to find dependencies which might be hidden by #defines, other #includes, and #if/#ifdef/#ifndef sequences. There are tradeoffs involved of course: 1- In building 'makedepend' in X windows, apparently a section of the cpp source code is needed to ensure proper decoding and handling of #if's. 2- Each file is processed once. If included multiple times, it simply reuses what information it has. This causes problems in the unfortunate case where a #if/#else clause selects one of two #includes in one file, and the other in another: the first time through will set the choice of dependencies in stone. The man page says that the algorithm assumes that all the source files for a given makefile use the roughly the same set of -I and -D flags. The mechanism is based at bottom on cobbling together a useful framework from a Berkeley kernel-building makefile which modifies itself to add appropriate dependencies. [Sorry, can't remember where it is. I think it's in a GENERIC directory somewhere. (And I call myself a system manager. :-) ] Joe Beckenbach [aka jerbil; use joe@cit-vax.caltech.edu for mail] -- Joe Beckenbach joe@csvax.caltech.edu Caltech 256-80, Pasadena CA 91125 PRINCIPLE OF LEAST ASTONISHMENT: a common-sense rule unknown to the worlds of systems and programming