Subject: change to makepatchsum
To: None <tech-pkg@netbsd.org>
From: Simon Burge <simonb@netbsd.org>
List: tech-pkg
Date: 10/06/1999 14:58:19
Anyone not happy with the following change to makepatchsum, so that it
doesn't update the patchsum file if none of the sums change?
Simon.
--
Index: bsd.pkg.mk
===================================================================
RCS file: /cvsroot/pkgsrc/mk/bsd.pkg.mk,v
retrieving revision 1.339
diff -p -u -r1.339 bsd.pkg.mk
--- bsd.pkg.mk 1999/09/15 05:39:38 1.339
+++ bsd.pkg.mk 1999/10/06 04:56:27
@@ -1801,23 +1798,28 @@ makesum: fetch
.if !target(makepatchsum)
makepatchsum:
${_PKG_SILENT}${_PKG_DEBUG}${MKDIR} ${FILESDIR}
- ${_PKG_SILENT}${_PKG_DEBUG}${RM} -f ${PATCH_SUM_FILE}
${_PKG_SILENT}(${_PKG_DEBUG} \
if [ -d ${PATCHDIR} ]; then \
cd ${PATCHDIR}; \
- ${ECHO} -n "$$" > ${PATCH_SUM_FILE}; \
- ${ECHO} -n "NetBSD" >> ${PATCH_SUM_FILE}; \
- ${ECHO} "$$" >> ${PATCH_SUM_FILE}; \
- ${ECHO} "" >> ${PATCH_SUM_FILE}; \
+ ${ECHO} -n "$$" > ${PATCH_SUM_FILE}.new; \
+ ${ECHO} -n "NetBSD" >> ${PATCH_SUM_FILE}.new; \
+ ${ECHO} "$$" >> ${PATCH_SUM_FILE}.new; \
+ ${ECHO} "" >> ${PATCH_SUM_FILE}.new; \
for sumfile in "" patch-*; do \
if [ "X$$sumfile" = X"" ]; then continue; fi; \
case $$sumfile in \
patch-local-*) ;; \
*.orig) continue ;; \
*) \
- ${ECHO} "MD5 ($$sumfile) = `${SED} -e '/\$$NetBSD.*/d' $$sumfile | ${MD5}`" >> ${PATCH_SUM_FILE}; \
+ ${ECHO} "MD5 ($$sumfile) = `${SED} -e '/\$$NetBSD.*/d' $$sumfile | ${MD5}`" >> ${PATCH_SUM_FILE}.new; \
esac; \
done; \
+ tail +2 ${PATCH_SUM_FILE} > .patchsumold ; \
+ tail +2 ${PATCH_SUM_FILE}.new > .patchsumnew ; \
+ cmp -s .patchsumold .patchsumnew || mv ${PATCH_SUM_FILE}.new ${PATCH_SUM_FILE} ; \
+ rm -f .patchsumold .patchsumnew ${PATCH_SUM_FILE}.new ; \
+ else \
+ ${_PKG_SILENT}${_PKG_DEBUG}${RM} -f ${PATCH_SUM_FILE} ; \
fi)
.endif