svn commit: r236868 - user/dougb/portmaster

Doug Barton dougb at FreeBSD.org
Mon Jun 11 04:11:47 UTC 2012


Author: dougb
Date: Mon Jun 11 04:11:46 2012
New Revision: 236868
URL: http://svn.freebsd.org/changeset/base/236868

Log:
  In iport_from_origin() work around pkg_info returning 0 even if there is
  no match
  
  In clean_build_only_list() remove ports that are already installed to
  prevent them from being spuriously removed. [1]
  
  Reported by:	avilla [1]

Modified:
  user/dougb/portmaster/portmaster

Modified: user/dougb/portmaster/portmaster
==============================================================================
--- user/dougb/portmaster/portmaster	Mon Jun 11 03:10:15 2012	(r236867)
+++ user/dougb/portmaster/portmaster	Mon Jun 11 04:11:46 2012	(r236868)
@@ -897,7 +897,7 @@ iport_from_origin () {
 
 	if ! dir=`grep -l "@comment ORIGIN:${1}$" $pdb/${sn}*/+CONTENTS 2>/dev/null`; then
 		if ! dir=`grep -l "@comment ORIGIN:${1}$" $pdb/*/+CONTENTS 2>/dev/null`; then
-			dir=`pkg_info -q -O $1` || return 1
+			dir=`pkg_info -q -O $1` ; [ -n "$dir" ] || return 1
 		fi
 	fi
 
@@ -2351,6 +2351,15 @@ clean_build_only_list () {
 	done
 
 	build_only_dl_g=" `uniquify_list $temp_bodlg` "
+	unset temp_bodlg
+
+	# We do not want already installed ports to end up on this list
+	for dep in $build_only_dl_g; do
+		iport_from_origin ${dep#$pd/} >/dev/null && continue
+		temp_bodlg="$temp_bodlg $dep"
+	done
+
+	build_only_dl_g="$temp_bodlg "
 }
 
 gen_dep_list () {


More information about the svn-src-user mailing list