aboutsummaryrefslogtreecommitdiffhomepage
path: root/Makefile
diff options
context:
space:
mode:
authorGravatar uau <uau@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-08-01 14:44:07 +0000
committerGravatar uau <uau@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-08-01 14:44:07 +0000
commit56aebde80e6ebca3108e6acc0ff6fb6908ee8bf4 (patch)
treeeb9ad3ff39079356d0c8262e604247727ab6cce1 /Makefile
parentb35260f6b22ef7d3ae98de2a4c38bb9f2bda4c1e (diff)
Change toplevel Makefile to invoke subdirectory Makefiles
unconditionally by default. Ensures that dependencies outside the subdirectory (such as header dependencies recorded by "make depend") aren't ignored. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19289 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile76
1 files changed, 42 insertions, 34 deletions
diff --git a/Makefile b/Makefile
index b6e7167268..6ef9e8fba0 100644
--- a/Makefile
+++ b/Makefile
@@ -541,40 +541,48 @@ $(MPLAYER_DEP) $(MENCODER_DEP): help_mp.h
# has changed. ideally this will be replaced with a single
# nonrecursive makefile for the whole project.
#
-
-libvo/libvo.a: $(wildcard libvo/*.[ch])
-libao2/libao2.a: $(wildcard libao2/*.[ch])
-osdep/libosdep.a: $(wildcard osdep/*.[ch])
-input/libinput.a: $(wildcard input/*.[ch])
-
-libmenu/libmenu.a: $(wildcard libmenu/*.[ch])
-libaf/libaf.a: $(wildcard libaf/*.[ch])
-libmpdvdkit2/libmpdvdkit.a: $(wildcard libmpdvdkit2/*.[ch])
-
-libmpdemux/libmpdemux.a: $(wildcard libmpdemux/*.[ch] libmpdemux/*/*.[ch])
-stream/stream.a: $(wildcard stream/*.[ch] stream/*/*.[ch])
-libmpcodecs/libmpcodecs.a: $(wildcard libmpcodecs/*.[ch]) $(wildcard libmpcodecs/native/*.[ch])
-libmpcodecs/libmpencoders.a: $(wildcard libmpcodecs/*.[ch])
-
-libavutil/libavutil.a: $(wildcard libavutil/*.[ch])
-libavcodec/libavcodec.a: $(wildcard libavcodec/*.[ch] libavcodec/*/*.[chS])
-libavformat/libavformat.a: $(wildcard libavformat/*.[ch])
-libswscale/libswscale.a: $(wildcard libswscale/*.[ch])
-
-libmpeg2/libmpeg2.a: $(wildcard libmpeg2/*.[ch])
-liba52/liba52.a: $(wildcard liba52/*.[ch])
-mp3lib/libMP3.a: $(wildcard mp3lib/*.[ch])
-libfaad2/libfaad2.a: $(wildcard libfaad2/*.[ch] libfaad2/*/*.[ch])
-
-loader/libloader.a: $(wildcard loader/*.[chSs])
-loader/dmo/libDMO_Filter.a: $(wildcard loader/dmo/*.[ch])
-loader/dshow/libDS_Filter.a: $(wildcard loader/dshow/*.[ch])
-
-libdha/libdha.so: $(wildcard libdha/*.[ch])
-vidix/libvidix.a: $(wildcard vidix/*.[ch])
-Gui/libgui.a: $(wildcard Gui/*.[ch] Gui/*/*.[ch] Gui/*/*/*.[ch])
-
-libass/libass.a: $(wildcard libass/*.[ch])
+# Now all directories are recursed by default because these rules do not
+# consider dependencies on files in other directories, while the recursively
+# invoked Makefiles do. Conditional recursion only to the directories with
+# changed files can be enabled by creating a file named ".norecurse" and
+# optionally giving it a timestamp in the past. Directories whose .a files
+# are newer than the timestamp and newer than other files in the directory
+# will not be recursed.
+.norecurse:
+
+libvo/libvo.a: .norecurse $(wildcard libvo/*.[ch])
+libao2/libao2.a: .norecurse $(wildcard libao2/*.[ch])
+osdep/libosdep.a: .norecurse $(wildcard osdep/*.[ch])
+input/libinput.a: .norecurse $(wildcard input/*.[ch])
+
+libmenu/libmenu.a: .norecurse $(wildcard libmenu/*.[ch])
+libaf/libaf.a: .norecurse $(wildcard libaf/*.[ch])
+libmpdvdkit2/libmpdvdkit.a: .norecurse $(wildcard libmpdvdkit2/*.[ch])
+
+libmpdemux/libmpdemux.a: .norecurse $(wildcard libmpdemux/*.[ch] libmpdemux/*/*.[ch])
+stream/stream.a: .norecurse $(wildcard stream/*.[ch] stream/*/*.[ch])
+libmpcodecs/libmpcodecs.a: .norecurse $(wildcard libmpcodecs/*.[ch]) $(wildcard libmpcodecs/native/*.[ch])
+libmpcodecs/libmpencoders.a: .norecurse $(wildcard libmpcodecs/*.[ch])
+
+libavutil/libavutil.a: .norecurse $(wildcard libavutil/*.[ch])
+libavcodec/libavcodec.a: .norecurse $(wildcard libavcodec/*.[ch] libavcodec/*/*.[chS])
+libavformat/libavformat.a: .norecurse $(wildcard libavformat/*.[ch])
+libswscale/libswscale.a: .norecurse $(wildcard libswscale/*.[ch])
+
+libmpeg2/libmpeg2.a: .norecurse $(wildcard libmpeg2/*.[ch])
+liba52/liba52.a: .norecurse $(wildcard liba52/*.[ch])
+mp3lib/libMP3.a: .norecurse $(wildcard mp3lib/*.[ch])
+libfaad2/libfaad2.a: .norecurse $(wildcard libfaad2/*.[ch] libfaad2/*/*.[ch])
+
+loader/libloader.a: .norecurse $(wildcard loader/*.[chSs])
+loader/dmo/libDMO_Filter.a: .norecurse $(wildcard loader/dmo/*.[ch])
+loader/dshow/libDS_Filter.a: .norecurse $(wildcard loader/dshow/*.[ch])
+
+libdha/libdha.so: .norecurse $(wildcard libdha/*.[ch])
+vidix/libvidix.a: .norecurse $(wildcard vidix/*.[ch])
+Gui/libgui.a: .norecurse $(wildcard Gui/*.[ch] Gui/*/*.[ch] Gui/*/*/*.[ch])
+
+libass/libass.a: .norecurse $(wildcard libass/*.[ch])
#
# include dependency files if they exist