[PATCH] Fix typos in bsd.port.mk and minor logic improvements

Garrett Cooper yanegomi at gmail.com
Fri Jul 9 15:11:35 UTC 2010


This is a change I made locally that I figured would be helpful because it:
    a. Fixes typos.
    b. Improves branch flow in a few spots.
    c. Doesn't assume that all strings that come back from pkg_install
are empty (this is what's assumed today).
Thanks,
-Garrett

--- /usr/ports/Mk/bsd.port.mk	2010-06-04 01:09:17.000000000 -0700
+++ bsd.port.mk	2010-07-09 08:01:08.000000000 -0700
@@ -20,7 +20,7 @@
 #
 # DO NOT COMMIT CHANGES TO THIS FILE BY YOURSELF, EVEN IF YOU DID NOT GET
 # A RESPONSE FROM THE MAINTAINER(S) WITHIN A REASONABLE TIMEFRAME! ALL
-# UNAUTHORISED CHANGES WILL BE UNCONDITIONALLY REVERTED!
+# UNAUTHORIZED CHANGES WILL BE UNCONDITIONALLY REVERTED!

 FreeBSD_MAINTAINER=	portmgr at FreeBSD.org

@@ -3968,7 +3968,7 @@
 						prfx=`${PKG_INFO} -q -p $${p} 2> /dev/null | ${SED} -ne
'1s|^@cwd ||p'`; \
 						if [ "x${PREFIX}" = "x$${prfx}" ]; then \
 								df=`${PKG_INFO} -q -f $${p} 2> /dev/null | ${GREP} -v "^@" |
${COMM} -12 - ${TMPPLIST}`; \
-								if [ -n "$${df}" ]; then \
+								if [ -n "$${df:-}" ]; then \
 										found_package=$${p}; \
 										break; \
 								fi; \
@@ -4551,7 +4551,7 @@
 			check_name=`${ECHO_CMD} $${p} | ${SED} -e 's/-[^-]*$$//'`; \
 			if [ "$${check_name}" = "${PKGBASE}" ]; then \
 					prfx=`${PKG_INFO} -q -p $${p} 2> /dev/null | ${SED} -ne '1s|^@cwd ||p'`; \
-					if [ "x${PREFIX}" = "x$${prfx}" ]; then \
+					if [ "x${PREFIX}" = "x$${prfx:-}" ]; then \
 							${ECHO_MSG} "===>   Deinstalling $${p}"; \
 							${PKG_DELETE} -f $${p}; \
 					else \
@@ -4583,7 +4583,7 @@
 	for oldpkgorigin in $$(${GREP} "|${PKGORIGIN}|" ${PORTSDIR}/MOVED |
${CUT} -f 1 -d '|' | ${SORT} -u); do \
 		deinstall_names="$${deinstall_names} $$(${PKG_INFO} -q -O
$${oldpkgorigin})"; \
 	done; \
-	if [ -n "$${deinstall_names}" ]; then \
+	if [ -n "$${deinstall_names:-}" ]; then \
 		for d in $${deinstall_names}; do \
 			${ECHO_MSG} "===>   Deinstalling $${d}"; \
 			${PKG_DELETE} -f $${d}; \
@@ -5129,7 +5129,7 @@
 						-e 's/<=/=gt=/; s/</=ge=/; s/>=/=lt=/; s/>/=le=/' \
 						-e 's/=gt=/>/; s/=ge=/>=/; s/=lt=/</; s/=le=/<=/'`; \
 					pkg_info=`${PKG_INFO} -E "$$inverse_dep" || ${TRUE}`; \
-					if [ "$$pkg_info" != "" ]; then \
+					if [ "$${pkg_info:-}" != "" ]; then \
 						${ECHO_MSG} "===>   Found $$pkg_info, but you need to upgrade
to $$prog."; \
 						exit 1; \
 					fi; \
@@ -5465,10 +5465,9 @@
 	if [ "${CHILD_DEPENDS}" ]; then \
 		installed=$$(${PKG_INFO} -qO ${PKGORIGIN} 2>/dev/null || \
 			${TRUE}); \
-		if [ "$$installed" ]; then \
+		if [ -n "$${installed:-}" ]; then \
 			break; \
-		fi; \
-		if [ -z "$$installed" ]; then \
+		else \
 			installed="${PKGNAME}"; \
 		fi; \
 		for pkgname in $$installed; do \
@@ -5511,16 +5510,15 @@
 			while [ $$\# -gt 1 ]; do \
 				if [ ! -d "${PORTSDIR}/$$2" ]; then \
 					shift; \
-					continue; \
-				fi; \
-				if [ "$$dir" = "$$2" ]; then \
+				elif [ "$$dir" = "$$2" ]; then \
 					${ECHO_CMD} $$1:$$dir; \
 					if [ -e ${PKG_DBDIR}/$$1/+CONTENTS -a -z
"${EXPLICIT_PACKAGE_DEPENDS}" ]; then \
 						packagelist="$$packagelist ${PKG_DBDIR}/$$1/+CONTENTS"; \
 					fi; \
 					break; \
+				else \
+				    shift 2; \
 				fi; \
-				shift 2; \
 			done; \
 		done; \
 		[ -z "$$packagelist" ] || ${AWK} -F '( |:)' 'BEGIN {
pkgname="broken_contents" } /@pkgdep / { pkgname=$$2 } /@comment
DEPORIGIN:/ { printf "%s:%s\n", pkgname, $$3;
pkgname="broken_contents" }' $$packagelist; \
@@ -5541,7 +5539,7 @@
 		(cd $$dir; ${MAKE} package-noinstall); \
 	done

-# Show missing dependiencies
+# Show missing dependencies
 missing:
 	@_origins=$$(${PKG_INFO} -aoq); \
 	for dir in $$(${ALL-DEPENDS-LIST}); do \
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bsd_dot_port_dot_mk-fix-typos-and-minor-improvements.diff
Type: application/octet-stream
Size: 3377 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20100709/aecb5517/bsd_dot_port_dot_mk-fix-typos-and-minor-improvements.obj


More information about the freebsd-hackers mailing list