Mail Archives: djgpp/1998/07/04/19:15:41
From: | "Jeremiah Zanin" <jzanin AT cs DOT unm DOT edu>
|
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
|
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
------------------------------------------------------------------------
- Raw text -