From owner-svn-src-user@FreeBSD.ORG Sun Jul 22 22:37:21 2012 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 27C2D1065672; Sun, 22 Jul 2012 22:37:21 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id EE4E88FC08; Sun, 22 Jul 2012 22:37:20 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q6MMbKxU033674; Sun, 22 Jul 2012 22:37:20 GMT (envelope-from dougb@svn.freebsd.org) Received: (from dougb@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q6MMbKXj033672; Sun, 22 Jul 2012 22:37:20 GMT (envelope-from dougb@svn.freebsd.org) Message-Id: <201207222237.q6MMbKXj033672@svn.freebsd.org> From: Doug Barton Date: Sun, 22 Jul 2012 22:37:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r238706 - user/dougb/portmaster X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Jul 2012 22:37:21 -0000 Author: dougb Date: Sun Jul 22 22:37:20 2012 New Revision: 238706 URL: http://svn.freebsd.org/changeset/base/238706 Log: In check_dependency_files() unset the grep_deps var if we unlink the file In find_dl_distfiles() we only need to test -s $dist_list if we're looking at the old file, since the test for the new file already does this. Optimize determination of $new_port: * When first set, let it be global * Use a function to incorporate/optimize the various tests from the 2 different places that it was being set Modified: user/dougb/portmaster/portmaster Modified: user/dougb/portmaster/portmaster ============================================================================== --- user/dougb/portmaster/portmaster Sun Jul 22 21:43:46 2012 (r238705) +++ user/dougb/portmaster/portmaster Sun Jul 22 22:37:20 2012 (r238706) @@ -967,7 +967,7 @@ check_dependency_files () { check_regular_file $pdb/$iport/+REQUIRED_BY $PM_SU_CMD truncate -s0 $pdb/$iport/+REQUIRED_BY fi - /bin/unlink $grep_deps + /bin/unlink $grep_deps ; unset grep_deps fi } @@ -1806,9 +1806,9 @@ find_dl_distfiles () { # but do not take a chance with a possibly wrong answer dist_list="$port_dbdir/${1##*/}/distfiles" fi + [ -s "$dist_list" ] || { unset dist_list ; return 0; } fi - [ -s "$dist_list" ] || { unset dist_list ; return 0; } [ -n "$DONT_SCRUB_DISTFILES" ] && return 0 local line @@ -2289,8 +2289,21 @@ update_pm_nu () { PM_NEEDS_UPDATE="${PM_NEEDS_UPDATE}${1} " } +find_new_port () { + # Global: new_port + + [ -n "$new_port" ] && return + + if pm_cd_pd $1; then + new_port=`pm_make -V PKGNAME` + else + new_port=`parse_index $1 name` || + fail "No entry for $1 in $PM_INDEX" + fi +} + update_build_l () { - local origin iport new_port + local origin iport origin=$1 ; update_pm_nu $origin @@ -2305,12 +2318,7 @@ update_build_l () { case "$build_l" in *\ $iport\ *|*\ $iport\\*) return ;; esac fi - if pm_cd_pd $origin; then - new_port=`pm_make -V PKGNAME` - else - new_port=`parse_index $origin name` || - fail "No entry for $origin in $PM_INDEX" - fi + find_new_port $origin case `pkg_version -t $iport $new_port 2>/dev/null` in \<) build_l="${build_l}\tUpgrade $iport to $new_port\n" ;; @@ -3418,14 +3426,7 @@ if [ -n "$NO_ACTION" -a -z "$PM_FIRST_PA safe_exit fi -if [ -z "$new_port" ]; then - if [ -z "$PM_INDEX_ONLY" ]; then - new_port=`pm_make -V PKGNAME` - else - new_port=`parse_index $portdir name` || - fail "No entry for $origin in $PM_INDEX" - fi -fi +find_new_port $portdir if [ -n "$PM_PACKAGES" -o "$PM_PACKAGES_BUILD" = doing_build_only_dep ]; then case `pm_make_b -V PT_NO_INSTALL_PACKAGE` in