TLIMONCE@DREW.BITNET.UUCP (07/01/88)
I have just found a bug in Manx's MAKE program. I have a makefile that has a pre-compiled include file called "app.pre". Certain modules need it. Others don't. "app.pre" is a file that includes a series of header files. The definition to create app.pre was like: APPH = app.h this.h that.h foo.h bar.h thing.h APPO = this.o that.o foo.o bar.o thing.o $(APPO) : app.pre app.pre : $(APPH) cc $(PFLAGS) +Happ.pre app.h Now, each time I added a module to the program, I would add an include for its header into app.h and then the makefile lines APPH and APPO would get newguy.h and newguy.o added. I hope I'm understood. NOTE: I know there are easier ways to do this by using $*.o, or $(APP).o or etc but the makefile is much more complex than the above and it required the above form. Now, the problem (which I didn't see) was that I had: APPH = app.h this.h that.h foo.h bar.h thing.o APPO = this.o that.o foo.o bar.o thing.o (Notice that thing.o in the first line should be thing.h.) This creates a recursive definition and makes MAKE bomb. Can someone report this to Manx? (Hey guys, I turn on stack-checking... why don't they?) Thanks, Tom P.S. The bug isn't too bad since the right macros would prevent stupid operator errors like the above :-). The problem here was that Sunday (June 25th) there was: My Amiga started guruing for "no reason" while using "make". My disks developed serious errors (bless you DiskSalv! Fuck you cheap 3.5" disks. I'll never buy no-names from a mail-order company again!) A new wave of solar flares. (Heard it on "The Sky Report" on WDHA.) A full moon. It serves me right for planning on getting work done over a weekend! :-) A // Tom Limoncelli -- TLimonce@Drew.Bitnet \ M // "Never trust a person that doesn't know machine language!" \ I \\// /\ G XX "Have you hugged your SO today?" / \ A -------------------------------------------------------------------------- "The above are my views, not those of Drew University or my employer" See ya in Philly for the 4th of July, right?