Automatically generate version.h
authorMark Tearle <[email protected]>
Fri, 20 Mar 2015 13:11:24 +0000 (21:11 +0800)
committerMark Tearle <[email protected]>
Fri, 20 Mar 2015 13:52:39 +0000 (21:52 +0800)
ROM2/.gitignore
ROM2/Makefile
ROM2/gen-version.pl [new file with mode: 0755]
ROM2/version.h [deleted file]
TODO

index 6e3d5b1..74113bc 100644 (file)
@@ -3,6 +3,7 @@ rom2.s19
 rom2.elf
 rom2.b
 romsrc.s
+version.h
 crctab.h
 crctest
 gencrctab
index e9f6e0c..11242d5 100644 (file)
@@ -43,7 +43,7 @@ rom2.elf: $(OBJS) memory.x check-romsrc.pl
        @perl -w check-romsrc.pl
 
 clean:
-       rm -f *.o *.elf *.s19 *.b *.a rom.tar.bz2 romsrc.s crctab.h m68hc11-gdb gencrctab crctest
+       rm -f *.o *.elf *.s19 *.b *.a rom.tar.bz2 romsrc.s crctab.h version.h m68hc11-gdb gencrctab crctest
 
 crctest: crctest.c crctab.h
        gcc -o $@ $<
@@ -64,6 +64,11 @@ rom.tar.bz2:
 romsrc.s: rom.tar.bz2 src2asm.pl
        perl -w src2asm.pl < $< > $@
 
+main_basic.c: version.h
+
+version.h: gen-version.pl
+       ./gen-version.pl > $@
+
 xmodem.c: crctab.h
 
 crctab.h: gencrctab
diff --git a/ROM2/gen-version.pl b/ROM2/gen-version.pl
new file mode 100755 (executable)
index 0000000..0ba0d5f
--- /dev/null
@@ -0,0 +1,21 @@
+#!/usr/bin/perl -w
+
+use POSIX qw(strftime);
+
+$revision = `git describe --long`;
+$datestring = strftime "%Y%m%d", localtime;
+
+chomp $revision;
+
+
+print <<EOT;
+#ifndef _VERSION_H_
+#define _VERSION_H_
+
+/* ROM version */
+
+#define DATEBUILT_STRING "$datestring"
+#define VERSION_STRING "$revision"
+
+#endif /* _VERSION_H_ */
+EOT
diff --git a/ROM2/version.h b/ROM2/version.h
deleted file mode 100644 (file)
index 28810e9..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef _VERSION_H_
-#define _VERSION_H_
-
-#include "vend.h"
-
-/* Snack machine ROM version */
-
-#define VERSION_STRING "Y 20150319"
-
-#endif /* _VERSION_H_ */
diff --git a/TODO b/TODO
index 56746d9..02f47f0 100644 (file)
--- a/TODO
+++ b/TODO
@@ -26,6 +26,8 @@ Modify main_basic.c as appropriate
 Partially done.
 
 git tag -a ROMY
+git push --tags
+
 git describe --long
 
 

UCC git Repository :: git.ucc.asn.au