From 9818a95c589e6fce1f6a0d0d296f0fa3efae41e1 Mon Sep 17 00:00:00 2001 From: diego Date: Fri, 18 Apr 2008 22:49:17 +0000 Subject: per-file dependencies (for the non-recursive parts) git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26464 b3059339-0415-0410-9bf9-f77b7e298cf2 --- Makefile | 8 +++++--- mpcommon.mak | 11 +++++++++-- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 9988717fbc..8e90f8233c 100644 --- a/Makefile +++ b/Makefile @@ -234,9 +234,10 @@ DIRS = gui \ all: $(ALL_PRG) -.depend: help_mp.h version.h codecs.conf.h -dep depend: - for part in $(PARTS); do $(MAKE) -C $$part depend; done +DEPS = $(SRCS_COMMON:.c=.d) $(SRCS_MPLAYER:.c=.d) $(SRCS_MENCODER:.c=.d) +$(DEPS): help_mp.h version.h codecs.conf.h +dep depend: $(DEPS) + for part in $(PARTS); do $(MAKE) -C $$part .depend; done include mpcommon.mak @@ -395,6 +396,7 @@ distclean:: doxygen_clean for part in $(PARTS); do $(MAKE) -C $$part distclean; done $(MAKE) -C TOOLS distclean -rm -f configure.log config.mak config.h + rm -f $(foreach dir,$(DIRS),$(foreach suffix,/*.d, $(addsuffix $(suffix),$(dir)))) strip: strip -s $(ALL_PRG) diff --git a/mpcommon.mak b/mpcommon.mak index 3f348f9403..6845775da9 100644 --- a/mpcommon.mak +++ b/mpcommon.mak @@ -25,17 +25,24 @@ clean:: rm -f *.o *.a *.ho *~ distclean:: clean - rm -f .depend test test2 + rm -f *.d .depend test test2 .depend: $(SRCS_COMMON) $(SRCS_MPLAYER) $(SRCS_MENCODER) $(MPDEPEND_CMD) > $@ +%.d: %.c + $(MPDEPEND_CMD) > $@ + %.ho: %.h $(CC) $(CFLAGS) -Wno-unused -c -o $@ -x c $< ALLHEADERS = $(wildcard *.h) checkheaders: $(ALLHEADERS:.h=.ho) --include .depend +# Hack to keep .depend from being generated at the top level unnecessarily. +ifndef DEPS +DEPS = .depend +endif +-include $(DEPS) .PHONY: libs *clean dep depend -- cgit v1.2.3