Replace includes of build.h with version.h

As build.h is an auto-generated file it was necessary to add it as
an explicit prerequisite in the Makefiles. When this was forgotten
abuild would sometimes fail with following error:

   fatal error: build.h: No such file or directory

Fix this error by compiling version.c into all stages.

Change-Id: I342f341077cc7496aed279b00baaa957aa2af0db
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/7510
Tested-by: build bot (Jenkins)
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
diff --git a/src/lib/Makefile.inc b/src/lib/Makefile.inc
index 6faf28a..55e0fa8 100644
--- a/src/lib/Makefile.inc
+++ b/src/lib/Makefile.inc
@@ -54,7 +54,6 @@
 ramstage-y += delay.c
 ramstage-y += fallback_boot.c
 ramstage-y += compute_ip_checksum.c
-ramstage-y += version.c
 ramstage-y += cbfs.c cbfs_core.c
 ramstage-y += lzma.c lzmadecode.c
 ramstage-y += stack.c
@@ -92,7 +91,15 @@
 smm-y += cbfs.c cbfs_core.c memcmp.c
 smm-$(CONFIG_COMPILER_GCC) += gcc.c
 
+bootblock-y += version.c
+romstage-y += version.c
+ramstage-y += version.c
+smm-y += version.c
+
+$(obj)/lib/version.bootblock.o : $(obj)/build.h
+$(obj)/lib/version.romstage.o : $(obj)/build.h
 $(obj)/lib/version.ramstage.o : $(obj)/build.h
+$(obj)/lib/version.smm.o : $(obj)/build.h
 
 romstage-y += bootmode.c
 ramstage-y += bootmode.c
diff --git a/src/lib/version.c b/src/lib/version.c
index 027aea1..eb5bbb8 100644
--- a/src/lib/version.c
+++ b/src/lib/version.c
@@ -40,3 +40,13 @@
 const char coreboot_compile_by[]     = COREBOOT_COMPILE_BY;
 const char coreboot_compile_host[]   = COREBOOT_COMPILE_HOST;
 const char coreboot_compile_domain[] = COREBOOT_COMPILE_DOMAIN;
+
+const char coreboot_dmi_date[]       = COREBOOT_DMI_DATE;
+
+const struct bcd_date coreboot_build_date = {
+	.century = 0x20,
+	.year = COREBOOT_BUILD_YEAR_BCD,
+	.month = COREBOOT_BUILD_MONTH_BCD,
+	.day = COREBOOT_BUILD_DAY_BCD,
+	.weekday = COREBOOT_BUILD_WEEKDAY_BCD,
+};