aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip Gladstone <philipjsg@users.sourceforge.net>2003-01-14 15:30:42 +0000
committerPhilip Gladstone <philipjsg@users.sourceforge.net>2003-01-14 15:30:42 +0000
commit77b71ddc11cef98fce54e56dc7a7d26c213a6b6d (patch)
tree9b129f08eba5ac817c75ac9b0bc577ed3d54d9a8
parentcb7c98d6e2277e4ea370aa23926820899bfcd181 (diff)
downloadffmpeg-77b71ddc11cef98fce54e56dc7a7d26c213a6b6d.tar.gz
AUtomatic dependency generation. Runs on Linux (at least). Probably should
update .cvsignore (somehere) to exclude .d files Originally committed as revision 1459 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--Makefile9
-rw-r--r--libavcodec/Makefile9
-rw-r--r--libavformat/Makefile10
-rw-r--r--vhook/Makefile11
4 files changed, 34 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index 4d6f3664e6..1c68273f99 100644
--- a/Makefile
+++ b/Makefile
@@ -54,9 +54,12 @@ endif
OBJS = ffmpeg.o ffserver.o
SRCS = $(OBJS:.o=.c) $(ASM_OBJS:.o=.s)
+DEPS = $(OBJS:.o=.d)
all: lib $(PROG) $(VHOOK)
+-include $(DEPS)
+
lib:
$(MAKE) -C libavcodec all
$(MAKE) -C libavformat all
@@ -80,6 +83,10 @@ ffplay: ffmpeg$(EXE)
%.o: %.c
$(CC) $(CFLAGS) -c -o $@ $<
+%.d: %.c
+ @echo $@ \\ > $@
+ $(CC) $(CFLAGS) -MM $< >> $@
+
videohook:
$(MAKE) -C vhook all
@@ -108,7 +115,7 @@ clean: $(CLEANVHOOK)
$(MAKE) -C libavcodec clean
$(MAKE) -C libavformat clean
$(MAKE) -C tests clean
- rm -f *.o *~ .depend gmon.out TAGS ffmpeg_g$(EXE) $(PROG)
+ rm -f *.o *.d *~ .depend gmon.out TAGS ffmpeg_g$(EXE) $(PROG)
clean-vhook:
$(MAKE) -C vhook clean
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index d68422ed92..bf6aecda98 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -89,6 +89,7 @@ OBJS += ppc/dsputil_altivec.o ppc/mpegvideo_altivec.o ppc/idct_altivec.o \
endif
SRCS := $(OBJS:.o=.c) $(ASM_OBJS:.o=.S)
+DEPS := $(OBJS:.o=.d)
OBJS := $(OBJS) $(ASM_OBJS)
LIB= $(LIBPREF)avcodec$(LIBSUF)
@@ -116,6 +117,12 @@ dsputil.o: dsputil.c dsputil.h
%.o: %.c
$(CC) $(CFLAGS) -c -o $@ $<
+%.d: %.c
+ @echo $@ \\ > $@
+ $(CC) $(CFLAGS) -MM $< >> $@
+
+-include $(DEPS)
+
%.o: %.S
$(CC) $(CFLAGS) -c -o $@ $<
@@ -137,7 +144,7 @@ depend:
$(CC) -MM $(CFLAGS) $(SRCS) 1>.depend
clean:
- rm -f *.o *~ .depend $(LIB) $(SLIB) *.so i386/*.o i386/*~ \
+ rm -f *.o *.d *~ .depend $(LIB) $(SLIB) *.so i386/*.o i386/*~ \
armv4l/*.o armv4l/*~ \
mlib/*.o mlib/*~ \
alpha/*.o alpha/*~ \
diff --git a/libavformat/Makefile b/libavformat/Makefile
index 9ff067c531..0ecdcc2cc7 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -50,6 +50,8 @@ endif
LIB= $(LIBPREF)avformat$(LIBSUF)
+DEPS= $(OBJS:.o=.d)
+
all: $(LIB)
$(LIB): $(OBJS)
@@ -70,9 +72,15 @@ installlib: all
%.o: %.c
$(CC) $(CFLAGS) -c -o $@ $<
+%.d: %.c
+ @echo $@ \\ > $@
+ $(CC) $(CFLAGS) -MM $< >> $@
+
+-include $(DEPS)
+
# BeOS: remove -Wall to get rid of all the "multibyte constant" warnings
%.o: %.cpp
g++ $(subst -Wall,,$(CFLAGS)) -c -o $@ $<
clean:
- rm -f *.o *~ *.a $(LIB)
+ rm -f *.o *.d *~ *.a $(LIB)
diff --git a/vhook/Makefile b/vhook/Makefile
index 898dbb4b6b..5e9023a6ef 100644
--- a/vhook/Makefile
+++ b/vhook/Makefile
@@ -15,18 +15,25 @@ endif
all: $(HOOKS)
+DEPS= $(HOOKS:.so=.d)
+
install:
install -s -m 755 $(HOOKS) $(INSTDIR)
imlib2.so: imlib2.o
$(CC) -g -o $@ $(SHFLAGS) $< -lImlib2
- rm $<
%.so: %.o
$(CC) -g -o $@ $(SHFLAGS) $<
+%.d: %.c
+ @echo $@ \\ > $@
+ $(CC) $(CFLAGS) -MM $< >> $@
+
+-include $(DEPS)
+
%.html: %.texi
texi2html -monolithic -number $<
clean:
- rm -f *.o *.so *~
+ rm -f *.o *.d *.so *~