aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Somers <asomers@FreeBSD.org>2026-05-07 18:18:29 +0000
committerAlan Somers <asomers@FreeBSD.org>2026-05-08 15:17:57 +0000
commitbd1e789b8452a8c2f166a3b4defb95330c71dadd (patch)
treee2d335fc8af192450708b4221deba08aab0c2dc6
parent076e44839160f74f96fda83fa81c3acb41b9ebc8 (diff)
Make "make update-packages" idempotent
If the user runs "make update-packages" without bumping BRANCH, then it isn't possible to copy packages from the old location to the new one (because the two locations are the same). So just skip that step. Sponsored by: ConnectWise PR: 295085 MFC after: 1 week Reviewed by: ivy, emaste Differential Revision: https://reviews.freebsd.org/D56872
-rw-r--r--Makefile.inc14
1 files changed, 3 insertions, 1 deletions
diff --git a/Makefile.inc1 b/Makefile.inc1
index b07b5f9c1a65..2927054c2e83 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -2128,7 +2128,7 @@ real-packages: stage-packages create-packages sign-packages .PHONY
real-update-packages: stage-packages .PHONY
${_+_}${MAKE} -C ${.CURDIR} PKG_VERSION=${PKG_VERSION} create-packages
-.if defined(PKG_VERSION_FROM_DIR)
+.if defined(PKG_VERSION_FROM_DIR) && ${PKG_VERSION} != ${PKG_VERSION_FROM}
@echo "==> Checking for new packages (comparing ${PKG_VERSION} to ${PKG_VERSION_FROM})"
@for pkg in ${PKG_VERSION_FROM_DIR}/${PKG_NAME_PREFIX}-*; do \
pkgname=$$(${PKG_CMD} query -F $${pkg} '%n' | sed 's/${PKG_NAME_PREFIX}-\(.*\)/\1/') ; \
@@ -2146,6 +2146,8 @@ real-update-packages: stage-packages .PHONY
echo "==> New package $${newpkgname}" ; \
fi ; \
done
+.elif defined(PKG_VERSION_FROM_DIR)
+ @echo "==> Package version ${PKG_VERSION} unchanged, keeping old package set"
.else
@echo "==> Bootstrapping repository, not checking for new packages"
.endif