Sun Jan 17 20:18:42 2021 UTC ()
Remove "mismatch" flag also in the other place.

Also, remove check for empty +INSTALLED_INFO which seems no longer needed.


(rhialto)
diff -r1.7 -r1.8 pkgsrc/mk/pkgformat/pkg/replace.mk

cvs diff -r1.7 -r1.8 pkgsrc/mk/pkgformat/pkg/replace.mk (expand / switch to unified diff)

--- pkgsrc/mk/pkgformat/pkg/replace.mk 2021/01/09 19:10:05 1.7
+++ pkgsrc/mk/pkgformat/pkg/replace.mk 2021/01/17 20:18:42 1.8
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: replace.mk,v 1.7 2021/01/09 19:10:05 rhialto Exp $ 1# $NetBSD: replace.mk,v 1.8 2021/01/17 20:18:42 rhialto Exp $
2# 2#
3 3
4# _pkgformat-destdir-replace: 4# _pkgformat-destdir-replace:
5# Updates a package in-place on the system. 5# Updates a package in-place on the system.
6# 6#
7# See also: 7# See also:
8# replace 8# replace
9# 9#
10# XXX: The whole replacement, from deinstalling the old package up 10# XXX: The whole replacement, from deinstalling the old package up
11# to installing the new package, should be one transaction. 11# to installing the new package, should be one transaction.
12# 12#
13_pkgformat-replace: \ 13_pkgformat-replace: \
14 replace-tarup \ 14 replace-tarup \
@@ -155,35 +155,32 @@ replace-fixup-required-by: .PHONY @@ -155,35 +155,32 @@ replace-fixup-required-by: .PHONY
155 { print "@pkgdep " ENVIRON["NEWNAME"]; next } \ 155 { print "@pkgdep " ENVIRON["NEWNAME"]; next } \
156 { print }' \ 156 { print }' \
157 $$contents > $$newcontents; \ 157 $$contents > $$newcontents; \
158 ${MV} -f $$newcontents $$contents; \ 158 ${MV} -f $$newcontents $$contents; \
159 ${PKG_ADMIN} set unsafe_depends_strict=YES $$pkg; \ 159 ${PKG_ADMIN} set unsafe_depends_strict=YES $$pkg; \
160 if ${TEST} "$$oldname" != "$$newname"; then \ 160 if ${TEST} "$$oldname" != "$$newname"; then \
161 ${PKG_ADMIN} set unsafe_depends=YES $$pkg; \ 161 ${PKG_ADMIN} set unsafe_depends=YES $$pkg; \
162 fi; \ 162 fi; \
163 done; \ 163 done; \
164 ${MV} ${_REQUIRED_BY_FILE} ${_PKG_DBDIR}/$$newname/+REQUIRED_BY 164 ${MV} ${_REQUIRED_BY_FILE} ${_PKG_DBDIR}/$$newname/+REQUIRED_BY
165 165
166# Removes unsafe_depends*, rebuild and mismatch tags from this package. 166# Removes unsafe_depends*, rebuild and mismatch tags from this package.
167# 167#
168# XXX: pkg_admin should not complain on unset with no +INSTALLED_INFO. 
169# 
170replace-fixup-installed-info: .PHONY 168replace-fixup-installed-info: .PHONY
171 @${STEP_MSG} "Removing unsafe_depends and rebuild tags." 169 @${STEP_MSG} "Removing unsafe_depends and rebuild tags."
172 ${RUN} ${_REPLACE_NEWNAME_CMD}; \ 170 ${RUN} ${_REPLACE_NEWNAME_CMD}; \
173 [ ! -f ${_INSTALLED_INFO_FILE} ] || \ 171 [ ! -f ${_INSTALLED_INFO_FILE} ] || \
174 ${MV} ${_INSTALLED_INFO_FILE} ${_PKG_DBDIR}/$$newname/+INSTALLED_INFO; \ 172 ${MV} ${_INSTALLED_INFO_FILE} ${_PKG_DBDIR}/$$newname/+INSTALLED_INFO; \
175 for var in unsafe_depends unsafe_depends_strict rebuild mismatch; do \ 173 for var in unsafe_depends unsafe_depends_strict rebuild mismatch; do \
176 ${TEST} ! -f ${_PKG_DBDIR}/$$newname/+INSTALLED_INFO || \ 
177 ${PKG_ADMIN} unset $$var $$newname; \ 174 ${PKG_ADMIN} unset $$var $$newname; \
178 done 175 done
179 176
180# Removes the state files for the "replace" target, so that it may be re-invoked. 177# Removes the state files for the "replace" target, so that it may be re-invoked.
181# 178#
182replace-clean: .PHONY 179replace-clean: .PHONY
183 ${RUN} ${_REPLACE_OLDNAME_CMD}; \ 180 ${RUN} ${_REPLACE_OLDNAME_CMD}; \
184 ${_REPLACE_NEWNAME_CMD}; \ 181 ${_REPLACE_NEWNAME_CMD}; \
185 ${RM} -f ${WRKDIR}/$$oldname${PKG_SUFX}; \ 182 ${RM} -f ${WRKDIR}/$$oldname${PKG_SUFX}; \
186 ${RM} -f ${WRKDIR}/$$newname${PKG_SUFX}; \ 183 ${RM} -f ${WRKDIR}/$$newname${PKG_SUFX}; \
187 ${RM} -f ${_REPLACE_OLDNAME_FILE} ${_REPLACE_NEWNAME_FILE} \ 184 ${RM} -f ${_REPLACE_OLDNAME_FILE} ${_REPLACE_NEWNAME_FILE} \
188 ${_COOKIE.replace} 185 ${_COOKIE.replace}
189 186
@@ -205,16 +202,16 @@ replace-destdir: .PHONY @@ -205,16 +202,16 @@ replace-destdir: .PHONY
205 @${SED} -e 's|@cwd ${_CROSS_DESTDIR}|@cwd |' ${_PKG_DBDIR}/${PKGNAME:Q}/+CONTENTS > ${_PKG_DBDIR}/${PKGNAME:Q}/+CONTENTS.tmp 202 @${SED} -e 's|@cwd ${_CROSS_DESTDIR}|@cwd |' ${_PKG_DBDIR}/${PKGNAME:Q}/+CONTENTS > ${_PKG_DBDIR}/${PKGNAME:Q}/+CONTENTS.tmp
206 @${MV} ${_PKG_DBDIR}/${PKGNAME:Q}/+CONTENTS.tmp ${_PKG_DBDIR}/${PKGNAME:Q}/+CONTENTS 203 @${MV} ${_PKG_DBDIR}/${PKGNAME:Q}/+CONTENTS.tmp ${_PKG_DBDIR}/${PKGNAME:Q}/+CONTENTS
207.else 204.else
208 ${SETENV} ${PKGTOOLS_ENV} ${PKG_ADD} -U -D ${STAGE_PKGFILE} 205 ${SETENV} ${PKGTOOLS_ENV} ${PKG_ADD} -U -D ${STAGE_PKGFILE}
209.endif 206.endif
210 ${RUN}${_REPLACE_OLDNAME_CMD}; \ 207 ${RUN}${_REPLACE_OLDNAME_CMD}; \
211 ${PKG_INFO} -qR ${PKGNAME:Q} | while read pkg; do \ 208 ${PKG_INFO} -qR ${PKGNAME:Q} | while read pkg; do \
212 [ -n "$$pkg" ] || continue; \ 209 [ -n "$$pkg" ] || continue; \
213 ${PKG_ADMIN} set unsafe_depends_strict=YES "$$pkg"; \ 210 ${PKG_ADMIN} set unsafe_depends_strict=YES "$$pkg"; \
214 if [ "$$oldname" != ${PKGNAME:Q} ]; then \ 211 if [ "$$oldname" != ${PKGNAME:Q} ]; then \
215 ${PKG_ADMIN} set unsafe_depends=YES "$$pkg"; \ 212 ${PKG_ADMIN} set unsafe_depends=YES "$$pkg"; \
216 fi; \ 213 fi; \
217 done 214 done
218 ${RUN}${PKG_ADMIN} unset unsafe_depends ${PKGNAME:Q} 215 ${RUN}for var in unsafe_depends unsafe_depends_strict rebuild mismatch; do \
219 ${RUN}${PKG_ADMIN} unset unsafe_depends_strict ${PKGNAME:Q} 216 ${PKG_ADMIN} unset $$var ${PKGNAME:Q}; \
220 ${RUN}${PKG_ADMIN} unset rebuild ${PKGNAME:Q} 217 done