svn commit: r415078 - in head: . Mk
Ed Maste
emaste at FreeBSD.org
Thu May 12 18:20:29 UTC 2016
Author: emaste (src committer)
Date: Thu May 12 18:20:27 2016
New Revision: 415078
URL: https://svnweb.freebsd.org/changeset/ports/415078
Log:
Record TIMESTAMP in make makesum
This is intended to support development and prototyping for ports
reproducible build efforts which require some concept of a "last
updated" time. It is being committed now so that timestamp entries
will be populated "for free" as port distfiles updates happen.
Submitted by: bapt (earlier version)
Reviewed by: bapt, bdrewery
Approved by: portmgr (bdrewery)
Differential Revision: https://reviews.freebsd.org/D6031
Modified:
head/CHANGES
head/Mk/bsd.port.mk
Modified: head/CHANGES
==============================================================================
--- head/CHANGES Thu May 12 17:59:43 2016 (r415077)
+++ head/CHANGES Thu May 12 18:20:27 2016 (r415078)
@@ -22,6 +22,16 @@ AUTHOR: mat at FreeBSD.org
WANT_BDB_VER=XX should be replaced by USES=bdb:XX.
+20160512:
+AUTHOR: emaste at FreeBSD.org
+
+ "make makesum" now writes the current timestamp to distinfo when it is run.
+ This is done to support development and prototyping efforts for reproducible
+ package builds, which require some concept of a "last updated" time.
+
+ The TIMESTAMP can currently be ignored for ports that have no distinfo, and
+ for updates done without using "make makesum."
+
20160414:
AUTHOR: mat at FreeBSD.org
Modified: head/Mk/bsd.port.mk
==============================================================================
--- head/Mk/bsd.port.mk Thu May 12 17:59:43 2016 (r415077)
+++ head/Mk/bsd.port.mk Thu May 12 18:20:27 2016 (r415078)
@@ -4161,7 +4161,11 @@ checksum_init=\
makesum: check-checksum-algorithms
@cd ${.CURDIR} && ${MAKE} fetch NO_CHECKSUM=yes \
DISABLE_SIZE=yes
- @if [ -f ${DISTINFO_FILE} ]; then ${CAT} /dev/null > ${DISTINFO_FILE}; fi
+ @if [ -f ${DISTINFO_FILE} ]; then \
+ if ${GREP} -q "^TIMESTAMP " ${DISTINFO_FILE}; then \
+ ${GREP} -v "^TIMESTAMP " ${DISTINFO_FILE} > ${DISTINFO_FILE}.sav; \
+ fi; \
+ fi
@( \
cd ${DISTDIR}; \
\
@@ -4172,11 +4176,16 @@ makesum: check-checksum-algorithms
eval alg_executable=\$$$$alg; \
\
if [ $$alg_executable != "NO" ]; then \
- $$alg_executable $$file >> ${DISTINFO_FILE}; \
+ $$alg_executable $$file >> ${DISTINFO_FILE}.new; \
fi; \
done; \
- ${ECHO_CMD} "SIZE ($$file) = `${STAT} -f \"%z\" $$file`" >> ${DISTINFO_FILE}; \
- done \
+ ${ECHO_CMD} "SIZE ($$file) = `${STAT} -f \"%z\" $$file`" >> ${DISTINFO_FILE}.new; \
+ done; \
+ if [ ! -f ${DISTINFO_FILE}.sav ] || ! cmp -s ${DISTINFO_FILE}.sav ${DISTINFO_FILE}.new; then \
+ ${ECHO_CMD} "TIMESTAMP = `date "+%s"`" > ${DISTINFO_FILE} ; \
+ ${CAT} ${DISTINFO_FILE}.new >> ${DISTINFO_FILE} ; \
+ fi ; \
+ rm -f ${DISTINFO_FILE}.new ${DISTINFO_FILE}.sav ; \
)
.endif
More information about the svn-ports-all
mailing list