Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Oct 2011 06:01:44 +0000 (UTC)
From:      Doug Barton <dougb@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r226555 - user/dougb/portmaster
Message-ID:  <201110200601.p9K61inM059758@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dougb
Date: Thu Oct 20 06:01:44 2011
New Revision: 226555
URL: http://svn.freebsd.org/changeset/base/226555

Log:
  Improve the handling of the -F option with packages, especially with
  --packages-only:
  
  In update_port() do better at saying what we're launching a child to do
  
  In post_first_pass() make clear that we are fetch'ing, not building,
  installing, etc.
  
  In multiport() call check_fetch_only when we're done
  
  In the main body add fetch'ed ports to the CUR_DEPS list so that they
  are only fetched once.

Modified:
  user/dougb/portmaster/portmaster

Modified: user/dougb/portmaster/portmaster
==============================================================================
--- user/dougb/portmaster/portmaster	Wed Oct 19 23:48:15 2011	(r226554)
+++ user/dougb/portmaster/portmaster	Thu Oct 20 06:01:44 2011	(r226555)
@@ -2260,14 +2260,18 @@ update_port () {
 	if [ -n "$2" ]; then
 		echo "===>>> Launching child to update $1 to $2"
 	else
-		case "$1" in
-		*/*)	echo "===>>> Launching child to install ${1#$pd/}" ;;
-		*)	if [ -z "$FETCH_ONLY" ]; then
-				echo "===>>> Launching child to reinstall $1"
-			else
+		if [ -z "$FETCH_ONLY" ]; then
+			case "$1" in
+			*/*)	echo "===>>> Launching child to install ${1#$pd/}" ;;
+			*)	echo "===>>> Launching child to reinstall $1" ;;
+			esac
+		else
+			if [ "$PM_PACKAGES" != 'only' ]; then
 				echo "===>>> Launching child to check distfiles for $1"
-			fi ;;
-		esac
+			else
+				echo "===>>> Launching child to check package files for $1"
+			fi
+		fi
 	fi
 
 	dep_of_deps=$(( $dep_of_deps + 1 ))
@@ -2565,7 +2569,9 @@ post_first_pass () {
 	[ "$PM_NEEDS_UPDATE" = ' ' ] && return
 
 	action=build
-	if [ "$PM_PACKAGES" = only ]; then
+	if [ -n "$FETCH_ONLY" ]; then
+		action='fetch'
+	elif [ "$PM_PACKAGES" = only ]; then
 		action=install
 	elif [ -n "$PM_PACKAGES" ]; then
 		action='build and/or install'
@@ -2821,6 +2827,11 @@ multiport () {
 		urb_update urb_update_after_build
 	fi
 
+	if [ "$PM_PACKAGES" != 'only' ]; then
+		check_fetch_only
+	else
+		check_fetch_only Package
+	fi
 	safe_exit
 }
 
@@ -3668,6 +3679,8 @@ if [ -z "$PM_THOROUGH" -a -z "$NO_DEP_UP
 fi
 
 if [ -n "$FETCH_ONLY" ]; then		# Only reached here if using packages
+	CUR_DEPS="${CUR_DEPS}${new_port}:${portdir}:"
+
 	if [ "$$" -eq "$PM_PARENT_PID" ]; then
 		check_fetch_only Package
 	else



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201110200601.p9K61inM059758>