From owner-svn-src-user@FreeBSD.ORG Tue Mar 29 01:17:30 2011 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6F10F106564A; Tue, 29 Mar 2011 01:17:30 +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 537F78FC0A; Tue, 29 Mar 2011 01:17:30 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id p2T1HUYB012453; Tue, 29 Mar 2011 01:17:30 GMT (envelope-from dougb@svn.freebsd.org) Received: (from dougb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id p2T1HU1F012451; Tue, 29 Mar 2011 01:17:30 GMT (envelope-from dougb@svn.freebsd.org) Message-Id: <201103290117.p2T1HU1F012451@svn.freebsd.org> From: Doug Barton Date: Tue, 29 Mar 2011 01:17:30 +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: r220121 - 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: Tue, 29 Mar 2011 01:17:30 -0000 Author: dougb Date: Tue Mar 29 01:17:30 2011 New Revision: 220121 URL: http://svn.freebsd.org/changeset/base/220121 Log: Add --update-if-newer which will operate on a list of ports given on the command line. If the port list is already up to date, it will be skipped. Modified: user/dougb/portmaster/portmaster Modified: user/dougb/portmaster/portmaster ============================================================================== --- user/dougb/portmaster/portmaster Tue Mar 29 00:47:00 2011 (r220120) +++ user/dougb/portmaster/portmaster Tue Mar 29 01:17:30 2011 (r220121) @@ -360,8 +360,8 @@ usage () { echo "${0##*/} [Common flags] " echo "${0##*/} [Common flags] " echo "${0##*/} [Common flags] " - echo "${0##*/} [Common flags] Multiple full names/paths from $pdb|$pd" - echo " and/or multiple globs from $pdb" + echo "${0##*/} [Common flags] [--update-if-newer] Multiple full names/paths" + echo " from $pdb|$pd and/or multiple globs from $pdb" echo '' echo "${0##*/} [Common flags] . [Use in $pd/foo/bar to build that port]" echo '' @@ -424,6 +424,9 @@ usage () { echo '--delete-build-only delete ports that are build-only dependencies' echo ' after a successful run, only if installed this run' echo '' + echo '--update-if-newer (only for multiple ports listed on command line)' + echo ' do not rebuild/reinstall if the installed version is up to date' + echo '' echo '-P|--packages use packages, but build port if not available' echo '-PP|--packages-only fail if no package is available' echo '--packages-build use packages for all build dependencies' @@ -585,6 +588,8 @@ for var in "$@" ; do --delete-packages) PM_DELETE_PACKAGES=pm_delete_packages export PM_DELETE_PACKAGES ;; -[A-Za-z0-9]*) newopts="$newopts $var" ;; + --update-if-newer) PM_UPDATE_IF_NEWER=pm_update_if_newer + export PM_UPDATE_IF_NEWER ;; --delete-build-only) PM_DEL_BUILD_ONLY=pm_dbo export PM_DEL_BUILD_ONLY ;; --no-confirm) PM_NO_CONFIRM=pm_no_confirm @@ -1512,9 +1517,10 @@ check_force_multi () { check_for_updates () { # Global: num_updates - local nf iport origin port_ver do_update skip + local multi nf iport origin port_ver do_update skip [ "$1" = 'list' ] && { nf=nonfatal; shift; } + [ "$1" = 'multi' ] && { multi=multi; nf=nonfatal; shift; } iport=$1 ; origin=${2:-`origin_from_pdb $iport`} || return 0 @@ -1604,6 +1610,8 @@ check_for_updates () { unset moved_npd fi return 0 + elif [ -n "$multi" ]; then + return 1 elif [ "$PM_RBP" = "$iport" ]; then PM_RBP_NEEDS_UPGRADE=pm_rbp_needs_upgrade return 0 @@ -2623,6 +2631,16 @@ multiport () { check_exclude $port || continue check_interactive $port || continue + if [ -n "$PM_UPDATE_IF_NEWER" ]; then + if check_for_updates multi $port; then + if [ -n "$PM_VERBOSE" ]; then + echo '' + echo "===>>> $port is up to date, skipping" + fi + continue + fi + fi + worklist="$worklist $port" portlist="${portlist}\t${port}\n" PM_MULTI_PORTS="${PM_MULTI_PORTS}${port}:" From owner-svn-src-user@FreeBSD.ORG Tue Mar 29 03:42:47 2011 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id ED3C51065670; Tue, 29 Mar 2011 03:42:47 +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 DE3F08FC13; Tue, 29 Mar 2011 03:42:47 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id p2T3gl32015711; Tue, 29 Mar 2011 03:42:47 GMT (envelope-from dougb@svn.freebsd.org) Received: (from dougb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id p2T3glCh015709; Tue, 29 Mar 2011 03:42:47 GMT (envelope-from dougb@svn.freebsd.org) Message-Id: <201103290342.p2T3glCh015709@svn.freebsd.org> From: Doug Barton Date: Tue, 29 Mar 2011 03:42:47 +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: r220122 - 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: Tue, 29 Mar 2011 03:42:48 -0000 Author: dougb Date: Tue Mar 29 03:42:47 2011 New Revision: 220122 URL: http://svn.freebsd.org/changeset/base/220122 Log: Handle ports specified by origin for --update-if-newer Modified: user/dougb/portmaster/portmaster Modified: user/dougb/portmaster/portmaster ============================================================================== --- user/dougb/portmaster/portmaster Tue Mar 29 01:17:30 2011 (r220121) +++ user/dougb/portmaster/portmaster Tue Mar 29 03:42:47 2011 (r220122) @@ -2599,7 +2599,7 @@ multiport () { # Global PM_MULTI_PORTS=':' ; export PM_MULTI_PORTS - local port worklist_temp worklist portlist numports origin num + local port worklist_temp iport worklist portlist numports origin num # Expand globs and check that the directories exist for port in "$@"; do @@ -2632,12 +2632,19 @@ multiport () { check_interactive $port || continue if [ -n "$PM_UPDATE_IF_NEWER" ]; then - if check_for_updates multi $port; then - if [ -n "$PM_VERBOSE" ]; then - echo '' - echo "===>>> $port is up to date, skipping" + case "$port" in + */*) iport=`iport_from_origin $port` ;; + *) iport=$port ;; + esac + + if [ -n "$iport" ]; then + if check_for_updates multi $port; then + if [ -n "$PM_VERBOSE" ]; then + echo '' + echo "===>>> $port is up to date, skipping" + fi + continue fi - continue fi fi From owner-svn-src-user@FreeBSD.ORG Tue Mar 29 05:58:09 2011 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DEC78106564A; Tue, 29 Mar 2011 05:58:09 +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 CEC898FC14; Tue, 29 Mar 2011 05:58:09 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id p2T5w9lo018444; Tue, 29 Mar 2011 05:58:09 GMT (envelope-from dougb@svn.freebsd.org) Received: (from dougb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id p2T5w9iU018442; Tue, 29 Mar 2011 05:58:09 GMT (envelope-from dougb@svn.freebsd.org) Message-Id: <201103290558.p2T5w9iU018442@svn.freebsd.org> From: Doug Barton Date: Tue, 29 Mar 2011 05:58:09 +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: r220123 - 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: Tue, 29 Mar 2011 05:58:10 -0000 Author: dougb Date: Tue Mar 29 05:58:09 2011 New Revision: 220123 URL: http://svn.freebsd.org/changeset/base/220123 Log: Actually use iport as the argument to check_for_updates Modified: user/dougb/portmaster/portmaster Modified: user/dougb/portmaster/portmaster ============================================================================== --- user/dougb/portmaster/portmaster Tue Mar 29 03:42:47 2011 (r220122) +++ user/dougb/portmaster/portmaster Tue Mar 29 05:58:09 2011 (r220123) @@ -2638,7 +2638,7 @@ multiport () { esac if [ -n "$iport" ]; then - if check_for_updates multi $port; then + if check_for_updates multi $iport; then if [ -n "$PM_VERBOSE" ]; then echo '' echo "===>>> $port is up to date, skipping" From owner-svn-src-user@FreeBSD.ORG Thu Mar 31 21:21:07 2011 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C07A3106564A; Thu, 31 Mar 2011 21:21:07 +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 AE0428FC19; Thu, 31 Mar 2011 21:21:07 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id p2VLL7uL023064; Thu, 31 Mar 2011 21:21:07 GMT (envelope-from dougb@svn.freebsd.org) Received: (from dougb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id p2VLL7AK023062; Thu, 31 Mar 2011 21:21:07 GMT (envelope-from dougb@svn.freebsd.org) Message-Id: <201103312121.p2VLL7AK023062@svn.freebsd.org> From: Doug Barton Date: Thu, 31 Mar 2011 21:21:07 +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: r220225 - 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: Thu, 31 Mar 2011 21:21:07 -0000 Author: dougb Date: Thu Mar 31 21:21:07 2011 New Revision: 220225 URL: http://svn.freebsd.org/changeset/base/220225 Log: Minor whitespace twiddle to avoid --update-if-newer related messages from coming too close to the multiport banner Modified: user/dougb/portmaster/portmaster Modified: user/dougb/portmaster/portmaster ============================================================================== --- user/dougb/portmaster/portmaster Thu Mar 31 21:01:10 2011 (r220224) +++ user/dougb/portmaster/portmaster Thu Mar 31 21:21:07 2011 (r220225) @@ -2653,6 +2653,7 @@ multiport () { PM_MULTI_PORTS="${PM_MULTI_PORTS}${port}:" done + echo '' echo "===>>> Working on multiple ports:" echo -e $portlist