[SCM] libav/experimental: Improve version.h generation

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:03:59 UTC 2013


The following commit has been merged in the experimental branch:
commit 6a53fffd77b3b89d33159126659c07529e391e5b
Author: Måns Rullgård <mans at mansr.com>
Date:   Wed Mar 10 02:56:56 2010 +0000

    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

diff --git a/Makefile b/Makefile
index 70d23af..2c046ea 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)
 
diff --git a/common.mak b/common.mak
index 36788e5..e868a28 100644
--- a/common.mak
+++ b/common.mak
@@ -54,14 +54,6 @@ CFLAGS   += $(ECFLAGS)
 
 %.c %.h: MSG = GEN
 
-SVN_ENTRIES = $(SRC_PATH_BARE)/.svn/entries
-ifeq ($(wildcard $(SVN_ENTRIES)),$(SVN_ENTRIES))
-$(BUILD_ROOT_REL)/version.h: $(SVN_ENTRIES)
-endif
-
-$(BUILD_ROOT_REL)/version.h: $(SRC_PATH_BARE)/version.sh config.mak
-	$(M)$< $(SRC_PATH) $@ $(EXTRA_VERSION)
-
 install: install-libs install-headers
 install-libs: install-libs-yes
 

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list