Respect SOURCE_DATE_EPOCH when building FIT images.

Embedding timestamps in FIT images results in unreproducible builds
for targets that generate a fit image, such as dra7xx_evm.

This patch uses the SOURCE_DATE_EPOCH environment variable, when set,
to use specified value for the date.

Thanks to HW42 for debugging the issue and providing the patch:

  https://lists.alioth.debian.org/pipermail/reproducible-builds/Week-of-Mon-20160606/005722.html

For more information about reproducible builds and the
SOURCE_DATE_EPOCH specification:

  https://reproducible-builds.org/specs/source-date-epoch/
  https://reproducible-builds.org/

Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
diff --git a/tools/default_image.c b/tools/default_image.c
index 3ed7014..6e4ae14 100644
--- a/tools/default_image.c
+++ b/tools/default_image.c
@@ -88,7 +88,6 @@
 				struct image_tool_params *params)
 {
 	uint32_t checksum;
-	char *source_date_epoch;
 	time_t time;
 
 	image_header_t * hdr = (image_header_t *)ptr;
@@ -98,18 +97,7 @@
 				sizeof(image_header_t)),
 			sbuf->st_size - sizeof(image_header_t));
 
-	source_date_epoch = getenv("SOURCE_DATE_EPOCH");
-	if (source_date_epoch != NULL) {
-		time = (time_t) strtol(source_date_epoch, NULL, 10);
-
-		if (gmtime(&time) == NULL) {
-			fprintf(stderr, "%s: SOURCE_DATE_EPOCH is not valid\n",
-				__func__);
-			time = 0;
-		}
-	} else {
-		time = sbuf->st_mtime;
-	}
+	time = imagetool_get_source_date(params, sbuf->st_mtime);
 
 	/* Build new header */
 	image_set_magic(hdr, IH_MAGIC);