Description: Allow LSOF_CCDATE to be overriden by an environment variable
 Capturing the current time as part of the build process does not make it
 deterministic. By allowing the LSOF_CCDATE to be externally set, the current
 time can be removed or preset.
Author: Jrmy Bobbio <lunar@debian.org>
Last-Update: 2014-09-22

--- a/dialects/aix/Makefile
+++ b/dialects/aix/Makefile
@@ -84,7 +84,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@echo '#define	LSOF_CINFO	"${CINFO}"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
--- a/dialects/darwin/kmem/Makefile
+++ b/dialects/darwin/kmem/Makefile
@@ -88,7 +88,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@echo '#define  LSOF_CINFO      "${CINFO}"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
--- a/dialects/darwin/libproc/Makefile
+++ b/dialects/darwin/libproc/Makefile
@@ -97,7 +97,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@echo '#define  LSOF_CINFO      "${CINFO}"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
--- a/dialects/du/Makefile
+++ b/dialects/du/Makefile
@@ -76,7 +76,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
 	  echo '#define	LSOF_HOST	"'`uname -n`'"' >> version.h; \
--- a/dialects/freebsd/Makefile
+++ b/dialects/freebsd/Makefile
@@ -76,7 +76,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
 	  echo '#define	LSOF_HOST	"'`uname -n`'"' >> version.h; \
--- a/dialects/hpux/kmem/Makefile
+++ b/dialects/hpux/kmem/Makefile
@@ -78,7 +78,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@echo '#define	LSOF_CINFO	"${CINFO}"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
--- a/dialects/hpux/pstat/Makefile
+++ b/dialects/hpux/pstat/Makefile
@@ -75,7 +75,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@echo '#define	LSOF_CINFO	"${CINFO}"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
--- a/dialects/linux/Makefile
+++ b/dialects/linux/Makefile
@@ -78,7 +78,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@echo '#define	LSOF_CINFO	"${CINFO}"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
--- a/dialects/n+obsd/Makefile
+++ b/dialects/n+obsd/Makefile
@@ -81,7 +81,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
 	  echo '#define	LSOF_HOST	"'`uname -n`'"' >> version.h; \
--- a/dialects/n+os/Makefile
+++ b/dialects/n+os/Makefile
@@ -87,7 +87,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@echo '#define	LSOF_LDFLAGS	"${CFGL}"' >> version.h
 	@if [ "X${LSOF_LOGNAME}" = "X" ]; then \
--- a/dialects/osr/Makefile
+++ b/dialects/osr/Makefile
@@ -87,7 +87,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@echo '#define	LSOF_LDFLAGS	"${CFGL}"' >> version.h
 	@if [ "X${LSOF_LOGNAME}" = "X" ]; then \
--- a/dialects/sun/Makefile
+++ b/dialects/sun/Makefile
@@ -75,7 +75,15 @@ version.h:	FRC
 	@echo '#define	LSOF_BLDCMT	"${LSOF_BLDCMT}"' > version.h;
 	@echo '#define	LSOF_CC		"${CC}"' >> version.h
 	@echo '#define	LSOF_CCV	"${CCV}"' >> version.h
-	@echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h
+	@if [ "X${LSOF_CCDATE}" = "X" ]; then \
+	  echo '#define	LSOF_CCDATE	"'`date`'"' >> version.h; \
+	else \
+	  if [ "${LSOF_CCDATE}" = "none" ]; then \
+	    echo '#define	LSOF_CCDATE	""' >> version.h; \
+	  else \
+	    echo '#define	LSOF_CCDATE	"${LSOF_CCDATE}"' >> version.h; \
+	  fi \
+	fi
 	@echo '#define	LSOF_CCFLAGS	"'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
 	@echo '#define	LSOF_CINFO	"${CINFO}"' >> version.h
 	@if [ "X${LSOF_HOST}" = "X" ]; then \
