[109649] trunk/base/src/macports1.0/macports.tcl
cal at macports.org
cal at macports.org
Mon Aug 19 03:49:49 PDT 2013
Revision: 109649
https://trac.macports.org/changeset/109649
Author: cal at macports.org
Date: 2013-08-19 03:49:48 -0700 (Mon, 19 Aug 2013)
Log Message:
-----------
rev-upgrade: upgrade dependencies before attempting rebuilds, #40150
Modified Paths:
--------------
trunk/base/src/macports1.0/macports.tcl
Modified: trunk/base/src/macports1.0/macports.tcl
===================================================================
--- trunk/base/src/macports1.0/macports.tcl 2013-08-19 10:20:28 UTC (rev 109648)
+++ trunk/base/src/macports1.0/macports.tcl 2013-08-19 10:49:48 UTC (rev 109649)
@@ -3463,10 +3463,16 @@
set is_revupgrade no
if {[info exists options(ports_revupgrade)] && $options(ports_revupgrade)} {
set is_revupgrade yes
+ # unset revupgrade options so we can upgrade dependencies with the same
+ # $options without also triggering a rebuild there, see #40150
+ unset options(ports_revupgrade)
}
set is_revupgrade_second_run no
if {[info exists options(ports_revupgrade_second_run)] && $options(ports_revupgrade_second_run)} {
set is_revupgrade_second_run yes
+ # unset revupgrade options so we can upgrade dependencies with the same
+ # $options without also triggering a rebuild there, see #40150
+ unset options(ports_revupgrade_second_run)
}
# check if the port is in tree
@@ -3730,7 +3736,7 @@
} elseif {$is_revupgrade} {
ui_debug "rev-upgrade override ... upgrading!"
# in the first run of rev-upgrade, only activate possibly already existing files and check for missing dependencies
- set will_install yes
+ # do nothing, just prevent will_install being set to no below
} else {
if {[info exists portinfo(canonical_active_variants)] && $portinfo(canonical_active_variants) != $oldvariant} {
if {[llength $variationslist] > 0} {
@@ -3756,9 +3762,9 @@
}
# first upgrade dependencies
- if {![info exists options(ports_nodeps)] && !$is_revupgrade} {
+ if {![info exists options(ports_nodeps)]} {
# the last arg is because we might have to build from source if a rebuild is being forced
- set status [_upgrade_dependencies portinfo depscache variationslist options [expr {$will_build && $already_installed}]]
+ set status [_upgrade_dependencies portinfo depscache variationslist options [expr {$will_build && $already_installed && !$is_revupgrade}]]
if {$status != 0 && $status != 2 && ![ui_isset ports_processall]} {
catch {mportclose $mport}
return $status
@@ -4542,11 +4548,9 @@
if {![info exists depscache(port:$portname)]} {
# set rev-upgrade options and nodeps if this is not the first run
set my_options(ports_revupgrade) yes
- unset -nocomplain my_options(ports_nodeps)
unset -nocomplain my_options(ports_revupgrade_second_run)
if {$broken_port_counts($portname) > 1} {
set my_options(ports_revupgrade_second_run) yes
- set my_options(ports_nodeps) yes
# build from source only until the buildbot has some method of rev-upgrade, too
set my_options(ports_source_only) yes
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130819/9e168439/attachment.html>
More information about the macports-changes
mailing list