replace at build time version and date from changelog data
authorCédric Boutillier <cedric.boutillier@gmail.com>
Wed, 19 Oct 2011 00:04:41 +0000 (02:04 +0200)
committerCédric Boutillier <cedric.boutillier@gmail.com>
Wed, 19 Oct 2011 00:04:41 +0000 (02:04 +0200)
debian/rules

index 3e55246..00ca42c 100755 (executable)
@@ -1,17 +1,33 @@
 #!/usr/bin/make -f
 
+#extract version number and date from Debian changelog
+VERSION := $(shell dpkg-parsechangelog | grep "^Version:" | cut -d\  -f2)
+YEAR    := $(shell dpkg-parsechangelog | grep "^Date:" | cut -d\  -f2-5 | date +"%Y")
+MONTH   := $(shell dpkg-parsechangelog | grep "^Date:" | cut -d\  -f2-5 | date +"%m")
+DAY    := $(shell dpkg-parsechangelog | grep "^Date:" | cut -d\  -f2-5 | date +"%d")
+
 %:
        dh $@ 
 
-#translate source files before building pdf
 override_dh_auto_build:
+       #move the original source file in a safe place for replacement
+       mv packaging-tutorial.tex packaging-tutorial.tex.tmp
+       #insert version and date into the source
+       sed -e "s/_VERSION_/$(VERSION)/" -e "s/_YEAR_/$(YEAR)/" \
+               -e "s/_MONTH_/$(MONTH)/" -e "s/_DAY_/$(DAY)/" \
+               < packaging-tutorial.tex.tmp > packaging-tutorial.tex
+               
+       #translate source files before building pdf
        po4a po4a/po4a.cfg --verbose
        dh_auto_build
 
-#remove translated source files
 override_dh_clean:
        dh_clean
-       rm -f packaging-tutorial.*.tex debiantutorial.*.sty 
+       #remove translated source files
+       rm -f packaging-tutorial.*.tex debiantutorial.*.sty
+       #restore the original source file
+       [ -f packaging-tutorial.tex.tmp ] && rm packaging-tutorial.tex || true
+       [ -f packaging-tutorial.tex.tmp ] && mv packaging-tutorial.tex.tmp packaging-tutorial.tex || true
 
 override_dh_compress:
        dh_compress -X.pdf