aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorMåns Rullgård <mans@mansr.com>2010-03-10 02:56:56 +0000
committerMåns Rullgård <mans@mansr.com>2010-03-10 02:56:56 +0000
commit6a53fffd77b3b89d33159126659c07529e391e5b (patch)
tree5d8169c62aeb9cc02754b66e4e3df2399edec103 /Makefile
parent93bff1de770e95c79bcf2ec794d05ef6b64ec7af (diff)
downloadffmpeg-6a53fffd77b3b89d33159126659c07529e391e5b.tar.gz
Improve version.h generation
Force version.sh to run whenever the version might have changed, regardless of what is being built. This is done by attaching the dependencies to a dummy file (.version) which is included from the makefile. As make will always attempt to rebuild any included files before considering other rules, this ensures that the real version.h is (re-)created before it is required by any source file. Originally committed as revision 22420 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile13
1 files changed, 12 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 70d23af0dd..2c046ea8fb 100644
--- a/Makefile
+++ b/Makefile
@@ -85,7 +85,18 @@ tools/%.o: tools/%.c
ffplay.o ffplay.d: CFLAGS += $(SDL_CFLAGS)
-cmdutils.o cmdutils.d: version.h
+VERSION_SH = $(SRC_PATH_BARE)/version.sh
+SVN_ENTRIES = $(SRC_PATH_BARE)/.svn/entries
+
+.version: $(wildcard $(SVN_ENTRIES)) $(VERSION_SH) config.mak
+.version: M=@
+
+version.h .version:
+ $(M)$(VERSION_SH) $(SRC_PATH) $@ $(EXTRA_VERSION)
+ $(Q)touch .version
+
+# force version.sh to run whenever version might have changed
+-include .version
alltools: $(TOOLS)