Radish alpha
H
HardenedBSD Package Manager
Radicle
Git (anonymous pull)
Log in to clone via SSH
deinstall is now supported
Baptiste Daroussin committed 15 years ago
commit 4fd2bd43a063a817a7c3db46dca2b6d63331316b
parent d127ea189935d086b46f021d1a47b7692edbc680
1 file changed +25 -0
modified ports/bsd.pkgng.mk
@@ -87,3 +87,28 @@ fake-pkg:
	@${DO_NADA}
.endif
.endif
+

+
.if !target(deinstall)
+
deinstall:
+
.if ${UID} != 0 && !defined(INSTALL_AS_USER)
+
	@${ECHO_MSG} "===>  Switching to root credentials for '${.TARGET}' target"
+
	@cd ${.CURDIR} && \
+
		 ${SU_CMD} "${MAKE} ${__softMAKEFLAGS} ${.TARGET}"
+
	@${ECHO_MSG} "===>  Returning to user credentials"
+
.else
+
	@${ECHO_MSG} "===>  Deinstalling for ${PKGORIGIN}"
+
	@prfx=`${PKG_INFO} -q -O ${PKGORIGIN}`; \
+
	@pkgname=`${PKG_INFO} -q -O ${PKGORIGIN}`; \
+
	if [ -z "$${prfx}" ]; then \
+
		${ECHO_MSG} "===>   ${PKGBASE} not installed, skipping"; \
+
	else \
+
		if [ "x${PREFIX}" = "x$${prfx}" ]; then \
+
			${ECHO_MSG} "===>   Deinstalling $${pkgname}"; \
+
			${PKG_DELETE} -f $${pkgname}; \
+
		else \
+
			${ECHO_MSG} "===>   $${pkgname} has a different PREFIX: $${prfx}, skipping"; \
+
		fi; \
+
	fi
+
	@${RM} -f ${INSTALL_COOKIE} ${PACKAGE_COOKIE}
+
.endif
+
.endif