svn commit: r420323 - in head/Mk: . Scripts

Mathieu Arnold mat at FreeBSD.org
Wed Aug 17 08:54:44 UTC 2016


Author: mat
Date: Wed Aug 17 08:54:43 2016
New Revision: 420323
URL: https://svnweb.freebsd.org/changeset/ports/420323

Log:
  Unbreak make missing.
  
  Sponsored by:	Absolight
  Differential Revision:	https://reviews.freebsd.org/D7504

Modified:
  head/Mk/Scripts/depends-list.sh   (contents, props changed)
  head/Mk/bsd.port.mk   (contents, props changed)

Modified: head/Mk/Scripts/depends-list.sh
==============================================================================
--- head/Mk/Scripts/depends-list.sh	Wed Aug 17 08:23:37 2016	(r420322)
+++ head/Mk/Scripts/depends-list.sh	Wed Aug 17 08:54:43 2016	(r420323)
@@ -7,9 +7,14 @@ set -e
 . ${dp_SCRIPTSDIR}/functions.sh
 
 recursive=0
+missing=0
 requires_wrkdir=0
-while getopts "rw" FLAG; do
+while getopts "mrw" FLAG; do
 	case "${FLAG}" in
+		m)
+			missing=1
+			recursive=1
+			;;
 		r)
 			recursive=1
 			;;
@@ -38,6 +43,10 @@ fi
 
 set -u
 
+if [ ${missing} -eq 1 ]; then
+	existing=$(${dp_PKG_INFO} -aoq|paste -d ' ' -s -)
+fi
+
 check_dep() {
 	local _dep wrkdir show_dep
 
@@ -62,6 +71,13 @@ check_dep() {
 			continue
 		fi
 
+		# If only looking for missign, show if missing
+		if [ ${missing} -eq 1 ]; then
+			case " ${existing} " in
+				*\ ${d#${PORTSDIR}/}\ *) continue ;; # We have it, nothing to see
+			esac
+		fi
+
 		# Grab any needed vars from the port.
 
 		if [ ${requires_wrkdir} -eq 1 -a ${recursive} -eq 1 ]; then

Modified: head/Mk/bsd.port.mk
==============================================================================
--- head/Mk/bsd.port.mk	Wed Aug 17 08:23:37 2016	(r420322)
+++ head/Mk/bsd.port.mk	Wed Aug 17 08:54:43 2016	(r420323)
@@ -4007,10 +4007,12 @@ DEPENDS-LIST= \
 			PORTSDIR="${PORTSDIR}" \
 			dp_MAKE="${MAKE}" \
 			dp_PKGNAME="${PKGNAME}" \
+			dp_PKG_INFO="${PKG_INFO}" \
 			dp_SCRIPTSDIR="${SCRIPTSDIR}" \
 			${SH} ${SCRIPTSDIR}/depends-list.sh
 
 ALL-DEPENDS-LIST=			${DEPENDS-LIST} -r ${_UNIFIED_DEPENDS:Q}
+MISSING-DEPENDS-LIST=		${DEPENDS-LIST} -m ${_UNIFIED_DEPENDS:Q}
 TEST-DEPENDS-LIST=			${DEPENDS-LIST} ${TEST_DEPENDS:Q}
 CLEAN-DEPENDS-LIST=			${DEPENDS-LIST} -wr ${_UNIFIED_DEPENDS:Q} 
 CLEAN-DEPENDS-LIMITED-LIST=	${DEPENDS-LIST} -w ${_UNIFIED_DEPENDS:Q}
@@ -4290,12 +4292,8 @@ package-recursive: package
 
 # Show missing dependencies
 missing:
-	@_origins=$$(${PKG_INFO} -aoq); \
-	for dir in $$(${ALL-DEPENDS-LIST}); do \
-		_origin=$${dir##${PORTSDIR}/}; \
-		if ! $$(${ECHO_CMD} $${_origins} | ${GREP} -q $${_origin}); then \
-			${ECHO_CMD} $${_origin}; \
-		fi; \
+	@for dir in $$(${MISSING-DEPENDS-LIST}); do \
+		echo $${dir#${PORTSDIR}/}; \
 	done
 
 # Show missing dependencies by name


More information about the svn-ports-all mailing list