From: =?utf-8?b?Su+/vXLvv71teSBCb2JiaW8=?= <lunar@debian.org>
Date: Sat, 14 May 2022 01:46:44 +0800
Subject: 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.
Last-Update: 2014-09-22
---
 dialects/aix/Makefile            | 10 +++++++++-
 dialects/darwin/kmem/Makefile    | 10 +++++++++-
 dialects/darwin/libproc/Makefile | 10 +++++++++-
 dialects/du/Makefile             | 10 +++++++++-
 dialects/freebsd/Makefile        | 10 +++++++++-
 dialects/hpux/kmem/Makefile      | 10 +++++++++-
 dialects/hpux/pstat/Makefile     | 10 +++++++++-
 dialects/linux/Makefile          | 10 +++++++++-
 dialects/n+obsd/Makefile         | 10 +++++++++-
 dialects/n+os/Makefile           | 10 +++++++++-
 dialects/osr/Makefile            | 10 +++++++++-
 dialects/sun/Makefile            | 10 +++++++++-
 12 files changed, 108 insertions(+), 12 deletions(-)

diff --git a/dialects/aix/Makefile b/dialects/aix/Makefile
index 830a25f..4fe5583 100644
--- 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 \
diff --git a/dialects/darwin/kmem/Makefile b/dialects/darwin/kmem/Makefile
index 47ebfee..61dd18b 100644
--- 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 \
diff --git a/dialects/darwin/libproc/Makefile b/dialects/darwin/libproc/Makefile
index a3bdc3c..c6461ea 100644
--- 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 \
diff --git a/dialects/du/Makefile b/dialects/du/Makefile
index 3da0c04..f4a12b1 100644
--- 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; \
diff --git a/dialects/freebsd/Makefile b/dialects/freebsd/Makefile
index 632bc06..87aeafc 100644
--- 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; \
diff --git a/dialects/hpux/kmem/Makefile b/dialects/hpux/kmem/Makefile
index e71696b..e1f604b 100644
--- 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 \
diff --git a/dialects/hpux/pstat/Makefile b/dialects/hpux/pstat/Makefile
index a5fea79..eda6ded 100644
--- 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 \
diff --git a/dialects/linux/Makefile b/dialects/linux/Makefile
index 2bea108..dca5011 100644
--- 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 \
diff --git a/dialects/n+obsd/Makefile b/dialects/n+obsd/Makefile
index 29f88a6..2ef712d 100644
--- 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; \
diff --git a/dialects/n+os/Makefile b/dialects/n+os/Makefile
index 8049a88..4781e4a 100644
--- 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 \
diff --git a/dialects/osr/Makefile b/dialects/osr/Makefile
index d9e1591..7468d47 100644
--- 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 \
diff --git a/dialects/sun/Makefile b/dialects/sun/Makefile
index 49dac14..aac14aa 100644
--- 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 \
