From: "Jeremiah Zanin" Newsgroups: comp.os.msdos.djgpp Subject: Automatic dependancies and header files, help! Date: Sat, 4 Jul 1998 16:57:55 -0600 Organization: University of New Mexico, Albuquerque Lines: 77 Message-ID: <6nmcd3$11ai$1@lynx.unm.edu> NNTP-Posting-Host: ppp-019.unm.edu To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Ok, I looked at the old mail archives and found messages on 'makedepend' and the solution: DEPS := $(wildcard *.d) ifneq ($(DEPS),) include $(DEPS) endif The only problem is that when I change a header file, the C files that depend on it don't get recompiled. What's going on? Here's the makefile: CC = gcc CFLAGS = -MMD -O2 LFLAGS = -s -lgpp EXE = Upheaval.exe COMPRESS = djp -q OBJDIR = ../objs OBJDIR2 = ..\objs EXEDIR = .. OBJECTS = $(OBJDIR)/Dma.o \ $(OBJDIR)/Graphics.o \ $(OBJDIR)/Keyboard.o \ $(OBJDIR)/main.o \ $(OBJDIR)/Mouse.o \ $(OBJDIR)/Pcx.o \ $(OBJDIR)/PhysicalObject.o \ $(OBJDIR)/SoundBlaster.o \ $(OBJDIR)/Vector.o \ $(OBJDIR)/Vga.o \ $(OBJDIR)/Wav.o $(EXEDIR)/$(EXE) : $(OBJECTS) $(CC) $(OBJECTS) -o $(EXEDIR)/$(EXE) $(CFLAGS) $(LFLAGS) $(COMPRESS) $(EXEDIR)/$(EXE) $(OBJDIR)/%.o : %.C $(CC) -c $< -o $(OBJDIR)/$(<:.C=.o) $(CFLAGS) clean : del $(EXEDIR)\$(EXE) del $(OBJDIR2)\*.o del *.d DEPS := $(wildcard *.d) ifneq ($(DEPS),) include $(DEPS) endif Thanks. Jeremiah Zanin Email: jzanin AT cs DOT unm DOT edu Webpage: http://www.unm.edu/~strider7 ------------------------------------------------------------------------ Problem-Solving Algorithm I: 1) Write down the problem 2) Think real hard 3) Write down the answer. -- Richard Feynman, Nobel Prize Winner in Physics Problem-Solving Algorithm II: 1) Write down the problem 2) Start Hacking 3) Debug 4) Goto 2 -- Matthew Bauer, aka CodeZilla ------------------------------------------------------------------------