<pre style='margin:0'>
Jackson Isaac (JacksonIsaac) pushed a commit to branch gsoc15-dependency
in repository macports-base.
</pre>
<p><a href="https://github.com/macports/macports-base/commit/cd2cc7490ffa0ebc7ae01f0c18295d0fe6d1c367">https://github.com/macports/macports-base/commit/cd2cc7490ffa0ebc7ae01f0c18295d0fe6d1c367</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit cd2cc7490ffa0ebc7ae01f0c18295d0fe6d1c367
</span>Merge: d8ef7c5 701e7b2
Author: Jackson Isaac <jacksonisaac2008@gmail.com>
AuthorDate: Mon Dec 5 08:11:24 2016 +0530
<span style='display:block; white-space:pre;color:#404040;'> Merge branch 'master' into gsoc15-dependency
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Merge commit 701e7b2 from master into gsoc15-dependency
</span><span style='display:block; white-space:pre;color:#404040;'> branch.
</span>
.gitattributes | 3 +
.gitignore | 43 +
.mailmap | 4 +
ChangeLog | 72 +-
LICENSE | 4 +-
Makefile.in | 46 +-
NEWS | 267 -----
regen.sh => autogen.sh | 0
config/README.TXT | 2 +-
config/RELEASE_URL | 2 +-
configure | 30 +-
configure.ac | 23 +-
doc/Makefile.in | 2 +-
doc/archive_sites.conf | 2 -
doc/asciidoc.conf | 2 +-
doc/base.mtree.in | 2 +
doc/macports.conf.5 | 7 +-
doc/macports.conf.5.txt | 12 +-
doc/macports.conf.in | 4 +-
doc/port-activate.1 | 4 +-
doc/port-activate.1.txt | 1 -
doc/port-archive.1 | 4 +-
doc/port-archive.1.txt | 1 -
doc/port-archivefetch.1 | 4 +-
doc/port-archivefetch.1.txt | 1 -
doc/port-cat.1 | 2 +-
doc/port-cat.1.txt | 1 -
doc/port-cd.1 | 2 +-
doc/port-cd.1.txt | 1 -
doc/port-clean.1 | 2 +-
doc/port-clean.1.txt | 1 -
doc/port-contents.1 | 2 +-
doc/port-contents.1.txt | 1 -
doc/port-dependents.1 | 2 +-
doc/port-dependents.1.txt | 1 -
doc/port-deps.1 | 2 +-
doc/port-deps.1.txt | 1 -
doc/port-diagnose.1 | 2 +-
doc/port-diagnose.1.txt | 1 -
doc/port-dir.1 | 2 +-
doc/port-dir.1.txt | 1 -
doc/port-distcheck.1 | 2 +-
doc/port-distcheck.1.txt | 1 -
doc/port-distfiles.1 | 2 +-
doc/port-distfiles.1.txt | 1 -
doc/port-dmg.1 | 4 +-
doc/port-dmg.1.txt | 1 -
doc/port-echo.1 | 2 +-
doc/port-echo.1.txt | 1 -
doc/port-edit.1 | 4 +-
doc/port-edit.1.txt | 1 -
doc/port-exit.1 | 2 +-
doc/port-exit.1.txt | 1 -
doc/port-fetch.1 | 2 +-
doc/port-fetch.1.txt | 1 -
doc/port-gohome.1 | 2 +-
doc/port-gohome.1.txt | 1 -
doc/port-help.1 | 4 +-
doc/port-help.1.txt | 1 -
doc/port-info.1 | 2 +-
doc/port-info.1.txt | 1 -
doc/port-install.1 | 2 +-
doc/port-install.1.txt | 1 -
doc/port-installed.1 | 4 +-
doc/port-installed.1.txt | 1 -
doc/port-lint.1 | 2 +-
doc/port-lint.1.txt | 1 -
doc/port-list.1 | 2 +-
doc/port-list.1.txt | 1 -
doc/port-livecheck.1 | 6 +-
doc/port-livecheck.1.txt | 3 +-
doc/port-load.1 | 2 +-
doc/port-load.1.txt | 1 -
doc/port-log.1 | 2 +-
doc/port-log.1.txt | 1 -
doc/port-mirror.1 | 2 +-
doc/port-mirror.1.txt | 1 -
doc/port-notes.1 | 2 +-
doc/port-notes.1.txt | 1 -
doc/port-outdated.1 | 2 +-
doc/port-outdated.1.txt | 1 -
doc/port-platform.1 | 2 +-
doc/port-platform.1.txt | 1 -
doc/port-provides.1 | 2 +-
doc/port-provides.1.txt | 1 -
doc/port-reclaim.1 | 2 +-
doc/port-reclaim.1.txt | 1 -
doc/port-rev-upgrade.1 | 2 +-
doc/port-rev-upgrade.1.txt | 1 -
doc/port-search.1 | 2 +-
doc/port-search.1.txt | 1 -
doc/port-select.1 | 2 +-
doc/port-select.1.txt | 1 -
doc/port-selfupdate.1 | 2 +-
doc/port-selfupdate.1.txt | 1 -
doc/port-setrequested.1 | 2 +-
doc/port-setrequested.1.txt | 1 -
doc/port-space.1 | 4 +-
doc/port-space.1.txt | 1 -
doc/port-sync.1 | 2 +-
doc/port-sync.1.txt | 1 -
doc/port-unarchive.1 | 2 +-
doc/port-unarchive.1.txt | 1 -
doc/port-uninstall.1 | 2 +-
doc/port-uninstall.1.txt | 1 -
doc/port-upgrade.1 | 4 +-
doc/port-upgrade.1.txt | 7 +-
doc/port-usage.1 | 2 +-
doc/port-usage.1.txt | 1 -
doc/port-variants.1 | 2 +-
doc/port-variants.1.txt | 1 -
doc/port-version.1 | 2 +-
doc/port-version.1.txt | 1 -
doc/port.1 | 76 +-
doc/port.1.txt | 31 +-
doc/portfile.7 | 4 +-
doc/portgroup.7 | 5 +-
doc/portgroup.7.txt | 1 -
doc/portstyle.7 | 6 +-
doc/portstyle.7.txt | 1 -
doc/portundocumented.7 | 4 +-
doc/portundocumented.7.txt | 1 -
doc/pubkeys.conf.5 | 2 +-
doc/pubkeys.conf.5.txt | 1 -
doc/pubkeys.conf.in | 2 -
doc/sources.conf | 4 +-
doc/sources.conf.5 | 6 +-
doc/sources.conf.5.txt | 5 +-
doc/variants.conf | 2 -
doc/variants.conf.5 | 2 +-
doc/variants.conf.5.txt | 1 -
install-sh | 501 +++++++++
install.sh | 119 --
portmgr/ReleaseProcess | 247 -----
portmgr/ReleaseProcess.md | 296 +++++
portmgr/dmg/License.html | 2 +-
portmgr/dmg/ReadMe.rtf | 2 +-
portmgr/dmg/postflight.in | 97 +-
src/Makefile.in | 3 +-
src/config.h.in | 7 +
src/cregistry/sql.c | 9 +
src/darwintracelib1.0/Makefile.in | 59 +-
src/darwintracelib1.0/access.c | 2 +-
src/darwintracelib1.0/close.c | 2 +-
src/darwintracelib1.0/darwintrace.c | 1 +
src/darwintracelib1.0/dup2.c | 2 +-
src/darwintracelib1.0/mkdir.c | 2 +-
src/darwintracelib1.0/open.c | 2 +-
src/darwintracelib1.0/proc.c | 7 +-
src/darwintracelib1.0/readdir.c | 4 +-
src/darwintracelib1.0/readlink.c | 2 +-
src/darwintracelib1.0/rename.c | 2 +-
src/darwintracelib1.0/rmdir.c | 2 +-
src/darwintracelib1.0/stat.c | 2 +-
src/darwintracelib1.0/unlink.c | 2 +-
src/macports1.0/Makefile.in | 3 +-
src/macports1.0/diagnose.tcl | 2 +-
src/macports1.0/macports.tcl | 860 +++++++--------
src/macports1.0/macports_dlist.tcl | 46 +-
src/macports1.0/macports_test_autoconf.tcl.in | 2 +-
src/macports1.0/macports_util.tcl | 211 ++--
src/macports1.0/reclaim.tcl | 227 ++--
src/macports1.0/selfupdate.tcl | 233 ++++
src/macports1.0/tests/library.tcl | 23 +
src/macports1.0/tests/macports.test | 104 +-
src/macports1.0/tests/macports_util.test | 81 +-
src/macports1.0/tests/reclaim.test | 58 +-
src/macports1.0/tests/sources.conf | 2 +-
src/macports1.0/tests/test.tcl | 147 ---
src/{package1.0 => mpcommon1.0}/Makefile.in | 17 +-
src/mpcommon1.0/mpcommon.tcl | 2 +
src/mpcommon1.0/signalcatch.tcl | 27 +
src/package1.0/Makefile.in | 2 +-
src/package1.0/package_test_autoconf.tcl.in | 2 +-
src/package1.0/portarchivefetch.tcl | 6 +-
src/package1.0/portpkg.tcl | 2 +
src/package1.0/tests/Portfile | 2 +-
src/package1.0/tests/portarchivefetch.test | 6 +-
src/package1.0/tests/test.tcl | 147 ---
src/pextlib1.0/Makefile.in | 31 +-
src/pextlib1.0/Pextlib.c | 15 +-
src/pextlib1.0/sip_copy_proc.c | 513 +++++++++
src/pextlib1.0/{uid.h => sip_copy_proc.h} | 49 +-
src/pextlib1.0/system.c | 80 +-
src/pextlib1.0/tracelib.c | 599 ++++++----
src/pextlib1.0/uid.c | 101 ++
src/pextlib1.0/uid.h | 1 +
src/pextlib1.0/xinstall.c | 12 +-
src/pkg_mkindex.sh.in | 3 +-
src/port/port.tcl | 1154 +++++++++++---------
src/port/portindex.tcl | 22 +-
src/port1.0/Makefile.in | 2 +-
src/port1.0/fetch_common.tcl | 31 +-
src/port1.0/port.tcl | 4 +
src/port1.0/port_autoconf.tcl.in | 1 +
src/port1.0/port_test_autoconf.tcl.in | 2 +-
src/port1.0/portactivate.tcl | 10 +-
src/port1.0/portbuild.tcl | 16 +-
src/port1.0/portchecksum.tcl | 63 +-
src/port1.0/portclean.tcl | 12 +-
src/port1.0/portconfigure.tcl | 62 +-
src/port1.0/portdepends.tcl | 5 +-
src/port1.0/portdestroot.tcl | 6 +-
src/port1.0/portdistcheck.tcl | 16 +-
src/port1.0/portfetch.tcl | 25 +-
src/port1.0/portinstall.tcl | 2 +
src/port1.0/portlint.tcl | 52 +-
src/port1.0/portlivecheck.tcl | 13 +-
src/port1.0/portsandbox.tcl | 3 +-
src/port1.0/portstartupitem.tcl | 1 -
src/port1.0/porttrace.tcl | 840 +++++++-------
src/port1.0/portutil.tcl | 89 +-
src/port1.0/tests/portactivate.test | 82 +-
src/port1.0/tests/portbuild.test | 139 +++
src/port1.0/tests/portdistcheck.test | 4 +
src/port1.0/tests/porttrace.test | 42 +
src/port1.0/tests/portutil.test | 55 +-
src/registry2.0/portimage.tcl | 3 +-
src/registry2.0/portuninstall.tcl | 4 +-
src/{port1.0 => }/tests/test.tcl | 8 +-
tests/test-macports.conf | 5 +-
tests/test/case-insensitive-deactivate/Portfile.in | 2 +-
tests/test/checksums-1/Portfile | 2 +-
tests/test/dependencies-a/Portfile | 2 +-
tests/test/dependencies-b/Portfile | 2 +-
tests/test/dependencies-c/Portfile | 2 +-
tests/test/dependencies-d/Portfile | 2 +-
tests/test/dependencies-e/Portfile | 2 +-
tests/test/envvariables/Portfile | 2 +-
tests/test/library.tcl.in | 2 +-
tests/test/site-tags/Portfile | 29 +-
tests/test/statefile-unknown-version/Portfile | 2 +-
tests/test/statefile-version1-outdated/Portfile | 2 +-
tests/test/statefile-version1/Portfile | 2 +-
tests/test/statefile-version2-invalid/Portfile | 2 +-
tests/test/statefile-version2-outdated/Portfile | 2 +-
tests/test/statefile-version2/Portfile | 2 +-
tests/test/svn-and-patchsites/Portfile | 2 +-
tests/test/trace/Makefile | 7 +-
tests/test/trace/Portfile | 4 +-
tests/test/trace/master | 34 +-
tests/test/universal/Portfile.in | 2 +-
tests/test/variants/Portfile | 2 +-
tests/test/xcodeversion/Portfile | 2 +-
vendor/Makefile.in | 7 +-
vendor/tcl8.5.15-src.tar.gz | Bin 4536117 -> 0 bytes
vendor/tcl8.5.18-src.tar.gz | Bin 0 -> 4534628 bytes
vendor/tcllib-1.15.tar.gz | Bin 6175150 -> 0 bytes
vendor/tcllib-1.17.tar.gz | Bin 0 -> 8183228 bytes
vendor/tclsh.in | 19 +
vendor/thread2.7.0.tar.gz | Bin 293785 -> 0 bytes
vendor/thread2.7.3.tar.gz | Bin 0 -> 291332 bytes
252 files changed, 5234 insertions(+), 3519 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --cc src/macports1.0/Makefile.in
</span><span style='display:block; white-space:pre;color:#808080;'>index bc3a471,efff040..2309d3b
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/macports1.0/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/macports1.0/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@@ -4,7 -4,7 +4,8 @@@ VPATH = @srcdir
</span> include ../../Mk/macports.autoconf.mk
SRCS= macports.tcl macports_dlist.tcl macports_util.tcl \
- macports_autoconf.tcl diagnose.tcl reclaim.tcl selfupdate.tcl
+ macports_autoconf.tcl diagnose.tcl reclaim.tcl macports_libsolv.tcl
<span style='display:block; white-space:pre;background:#e0ffe0;'>++ selfupdate.tcl
</span> OBJS= macports.o get_systemconfiguration_proxies.o sysctl.o
SHLIB_NAME= MacPorts${SHLIB_SUFFIX}
<span style='display:block; white-space:pre;color:#808080;'>diff --cc src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index a02c37b,a46ea70..52a234b
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@@ -38,9 -38,12 +38,13 @@@ package require macports_dlist 1.
</span> package require macports_util 1.0
package require diagnose 1.0
package require reclaim 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ package require selfupdate 1.0
</span> package require Tclx
+package require macports_libsolv 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ # catch wrapper shared with port1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ package require mpcommon 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> namespace eval macports {
namespace export bootstrap_options user_options portinterp_options open_mports ui_priorities
variable bootstrap_options "\
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@@ -2741,115 -2815,104 +2841,118 @@@ proc mportsearch {pattern {case_sensiti
</span> set matches [list]
set easy [expr {$field eq "name"}]
- set found 0
- foreach source $sources {
- set source [lindex $source 0]
- set protocol [macports::getprotocol $source]
- try -pass_signal {
- set fd [open [macports::getindex $source] r]
-
+ ## Use libsolv search if -l is passed
+ if {[info exists macports::global_options(ports_depengine)]} {
+ if {$macports::global_options(ports_depengine) eq "libsolv"} {
+ # macports::libsolv::print
+ set search_res [macports::libsolv::search $pattern \
+ $case_sensitive $matchstyle $field]
+ # macports::libsolv::create_installed_pool
+ return $search_res
+ }
+ } else {
+ ## Use builtin search algorithm.
+ set found 0
+ foreach source $sources {
+ set source [lindex $source 0]
+ set protocol [macports::getprotocol $source]
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[catch {set fd [open [macports::getindex $source] r]} result]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ui_warn "Can't open index file for source: $source"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- try {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ try -pass_signal {
</span> - incr found 1
- while {[gets $fd line] >= 0} {
- array unset portinfo
- set name [lindex $line 0]
- set len [lindex $line 1]
- set line [read $fd $len]
-
- if {$easy} {
- set target $name
- } else {
- array set portinfo $line
- if {![info exists portinfo($field)]} {
- continue
- }
- set target $portinfo($field)
- }
<span style='display:block; white-space:pre;background:#e0ffe0;'>++ set fd [open [macports::getindex $source] r]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ try -pass_signal {
</span> + incr found 1
+ while {[gets $fd line] >= 0} {
+ array unset portinfo
+ set name [lindex $line 0]
+ set len [lindex $line 1]
+ set line [read $fd $len]
- switch -- $matchstyle {
- exact {
- if {$case_sensitive} {
- set compres [string compare $pattern $target]
- } else {
- set compres [string compare -nocase $pattern $target]
+ if {$easy} {
+ set target $name
+ } else {
+ array set portinfo $line
+ if {![info exists portinfo($field)]} {
+ continue
}
- set matchres [expr {0 == $compres}]
+ set target $portinfo($field)
}
- glob {
- if {$case_sensitive} {
- set matchres [string match $pattern $target]
- } else {
- set matchres [string match -nocase $pattern $target]
+
+ switch -- $matchstyle {
+ exact {
+ if {$case_sensitive} {
+ set compres [string compare $pattern $target]
+ } else {
+ set compres [string compare -nocase $pattern $target]
+ }
+ set matchres [expr {0 == $compres}]
}
- }
- regexp {
- if {$case_sensitive} {
- set matchres [regexp -- $pattern $target]
- } else {
- set matchres [regexp -nocase -- $pattern $target]
+ glob {
+ if {$case_sensitive} {
+ set matchres [string match $pattern $target]
+ } else {
+ set matchres [string match -nocase $pattern $target]
+ }
+ }
+ regexp {
+ if {$case_sensitive} {
+ set matchres [regexp -- $pattern $target]
+ } else {
+ set matchres [regexp -nocase -- $pattern $target]
+ }
+ }
+ default {
+ return -code error "mportsearch: Unsupported matching style: ${matchstyle}."
}
}
- default {
- return -code error "mportsearch: Unsupported matching style: ${matchstyle}."
- }
- }
- if {$matchres == 1} {
- if {$easy} {
- array set portinfo $line
- }
- switch -- $protocol {
- rsync {
- # Rsync files are local
- set source_url file://[macports::getsourcepath $source]
+ if {$matchres == 1} {
+ if {$easy} {
+ array set portinfo $line
}
- https -
- http -
- ftp {
- # daily snapshot tarball
- set source_url file://[macports::getsourcepath $source]
+ switch -- $protocol {
+ rsync {
+ # Rsync files are local
+ set source_url file://[macports::getsourcepath $source]
+ }
+ https -
+ http -
+ ftp {
+ # daily snapshot tarball
+ set source_url file://[macports::getsourcepath $source]
+ }
+ default {
+ set source_url $source
+ }
}
- default {
- set source_url $source
+ if {[info exists portinfo(portdir)]} {
+ set porturl ${source_url}/$portinfo(portdir)
+ lappend line porturl $porturl
+ ui_debug "Found port in $porturl"
+ } else {
+ ui_debug "Found port info: $line"
}
+ lappend matches $name
+ lappend matches $line
}
- if {[info exists portinfo(portdir)]} {
- set porturl ${source_url}/$portinfo(portdir)
- lappend line porturl $porturl
- ui_debug "Found port in $porturl"
- } else {
- ui_debug "Found port info: $line"
- }
- lappend matches $name
- lappend matches $line
}
+ } catch * {
+ ui_warn "It looks like your PortIndex file for $source may be corrupt."
+ throw
+ } finally {
+ close $fd
}
- } catch * {
- ui_warn "It looks like your PortIndex file for $source may be corrupt."
- throw
- } finally {
- close $fd
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ } catch {*} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_warn "Can't open index file for source: $source"
</span> }
- }
- if {!$found} {
- return -code error "No index(es) found! Have you synced your port definitions? Try running 'port selfupdate'."
- }
+
+ if {!$found} {
+ return -code error "No index(es) found! Have you synced your port definitions? Try running 'port selfupdate'."
+ }
- return $matches
+ return $matches
+ }
}
##
<span style='display:block; white-space:pre;color:#808080;'>diff --cc src/port/port.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 2d2e148,5312e5a..511f5b9
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port/port.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port/port.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@@ -4052,103 -4029,89 +4029,104 @@@ proc action_target { action portlist op
</span> if {($action eq "install" || $action eq "archive") && ![macports::global_option_isset ports_dryrun] && [prefix_unwritable]} {
return 1
}
- foreachport $portlist {
- array unset portinfo
- # If we have a url, use that, since it's most specific
- # otherwise try to map the portname to a url
- if {$porturl eq ""} {
- # Verify the portname, getting portinfo to map to a porturl
- if {[catch {set res [mportlookup $portname]} result]} {
- global errorInfo
- ui_debug "$errorInfo"
- break_softcontinue "lookup of portname $portname failed: $result" 1 status
- }
- if {[llength $res] < 2} {
- # don't error for ports that are installed but not in the tree
- if {[registry::entry_exists_for_name $portname]} {
- ui_warn "Skipping $portname (not in the ports tree)"
- continue
- } else {
- break_softcontinue "Port $portname not found" 1 status
+
+ ## Use libsolv Dependency Calculation if -l is passed
+ if {[info exists macports::global_options(ports_depengine)]} {
+ if {$macports::global_options(ports_depengine) eq "libsolv"} {
+ if {$action eq "install"} {
+ if {![info exists options(ports_install_unrequested)]} {
+ set options(ports_requested) 1
}
+ # we actually activate as well
+ set target activate
+ set dep_res [mportinstall $portlist $target]
}
- array set portinfo [lindex $res 1]
- set porturl $portinfo(porturl)
}
+ } else {
+ foreachport $portlist {
+ array unset portinfo
+ # If we have a url, use that, since it's most specific
+ # otherwise try to map the portname to a url
+ if {$porturl eq ""} {
+ # Verify the portname, getting portinfo to map to a porturl
+ if {[catch {set res [mportlookup $portname]} result]} {
+ global errorInfo
+ ui_debug "$errorInfo"
+ break_softcontinue "lookup of portname $portname failed: $result" 1 status
+ }
+ if {[llength $res] < 2} {
+ # don't error for ports that are installed but not in the tree
+ if {[registry::entry_exists_for_name $portname]} {
+ ui_warn "Skipping $portname (not in the ports tree)"
+ continue
+ } else {
+ break_softcontinue "Port $portname not found" 1 status
+ }
+ }
+ array set portinfo [lindex $res 1]
+ set porturl $portinfo(porturl)
+ }
- # use existing variants iff none were explicitly requested
- if {[array get requested_variations] eq "" && [array get variations] ne ""} {
- array unset requested_variations
- array set requested_variations [array get variations]
- }
+ # use existing variants iff none were explicitly requested
+ if {[array get requested_variations] eq "" && [array get variations] ne ""} {
+ array unset requested_variations
+ array set requested_variations [array get variations]
+ }
- # Add any global_variations to the variations
- # specified for the port
- foreach { variation value } [array get global_variations] {
- if { ![info exists requested_variations($variation)] } {
- set requested_variations($variation) $value
+ # Add any global_variations to the variations
+ # specified for the port
+ foreach { variation value } [array get global_variations] {
+ if { ![info exists requested_variations($variation)] } {
+ set requested_variations($variation) $value
+ }
}
- }
- # If version was specified, save it as a version glob for use
- # in port actions (e.g. clean).
- if {[string length $portversion]} {
- set options(ports_version_glob) $portversion
- }
- # if installing, mark the port as explicitly requested
- if {$action eq "install"} {
- if {![info exists options(ports_install_unrequested)]} {
- set options(ports_requested) 1
+ # If version was specified, save it as a version glob for use
+ # in port actions (e.g. clean).
+ if {[string length $portversion]} {
+ set options(ports_version_glob) $portversion
}
- # we actually activate as well
- set target activate
- } elseif {$action eq "archive"} {
- set target install
- } else {
- set target $action
- }
- if {![info exists options(subport)]} {
- if {[info exists portinfo(name)]} {
- set options(subport) $portinfo(name)
+ # if installing, mark the port as explicitly requested
+ if {$action eq "install"} {
+ if {![info exists options(ports_install_unrequested)]} {
+ set options(ports_requested) 1
+ }
+ # we actually activate as well
+ set target activate
+ } elseif {$action eq "archive"} {
+ set target install
} else {
- set options(subport) $portname
+ set target $action
+ }
+ if {![info exists options(subport)]} {
+ if {[info exists portinfo(name)]} {
+ set options(subport) $portinfo(name)
+ } else {
+ set options(subport) $portname
+ }
+ }
+ if {[catch {set workername [mportopen $porturl [array get options] [array get requested_variations]]} result]} {
+ global errorInfo
+ ui_debug "$errorInfo"
+ break_softcontinue "Unable to open port: $result" 1 status
+ }
+ if {[catch {set result [mportexec $workername $target]} result]} {
+ global errorInfo
+ mportclose $workername
+ ui_debug "$errorInfo"
+ break_softcontinue "Unable to execute port: $result" 1 status
}
- }
- if {[catch {set workername [mportopen $porturl [array get options] [array get requested_variations]]} result]} {
- global errorInfo
- ui_debug "$errorInfo"
- break_softcontinue "Unable to open port: $result" 1 status
- }
- if {[catch {set result [mportexec $workername $target]} result]} {
- global errorInfo
- mportclose $workername
- ui_debug "$errorInfo"
- break_softcontinue "Unable to execute port: $result" 1 status
- }
-
- mportclose $workername
- # Process any error that wasn't thrown and handled already
- if {$result} {
- print_tickets_url
- break_softcontinue "Processing of port $portname failed" 1 status
+ mportclose $workername
+
+ # Process any error that wasn't thrown and handled already
+ if {$result} {
+ print_tickets_url
+ break_softcontinue "Processing of port $portname failed" 1 status
+ }
}
- }
+ }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> if {$status == 0 && $action eq "install" && ![macports::global_option_isset ports_dryrun]} {
array set options $opts
if {![info exists options(ports_nodeps)] && ![info exists options(ports_install_no-rev-upgrade)] && ${macports::revupgrade_autorun}} {
<span style='display:block; white-space:pre;color:#808080;'>diff --cc vendor/Makefile.in
</span><span style='display:block; white-space:pre;color:#808080;'>index bc82eb2,122b87c..d9f8bb7
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@@ -44,13 -41,12 +44,16 @@@ all-tclx: all-tc
</span>
%-tcllib:
@echo ===\> making $(@:%-tcllib=%) in ${DIRPRFX}@VENDOR_TCLLIB_SUBDIR@
<span style='display:block; white-space:pre;background:#ffe0e0;'>- @umask 0022; $(MAKE) -C @VENDOR_TCLLIB_SUBDIR@ $(@:%-tcllib=%)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @umask 0022; $(MAKE) -C @VENDOR_TCLLIB_SUBDIR@ TCLSH_PROG=@INTREE_TCLSH@ $(@:%-tcllib=%)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # tcllib requires a working tclsh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ all-tcllib: all-tcl
</span>
-destroot: destroot-tcl destroot-tclthread destroot-tclx destroot-tcllib
+%-libsolv:
+ @echo ===\> making $(@:%-libsolv=%) in ${DIRPRFX}@VENDOR_LIBSOLV_SUBDIR@
+ @umask 0022; $(MAKE) -C @VENDOR_LIBSOLV_SUBDIR@ $(@:%-libsolv=%)
+
+destroot: destroot-tcl destroot-tclthread destroot-tclx destroot-tcllib destroot-libsolv
destroot-tcl: all-tcl
@echo ===\> staging to destroot in ${DIRPRFX}@VENDOR_TCL_SUBDIR@
@umask 0022; $(MAKE) -C @VENDOR_TCL_SUBDIR@ DESTDIR=${DESTROOT} @VENDOR_TCL_INSTALL@
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@@ -65,13 -61,9 +68,13 @@@ destroot-tclx: all-tcl
</span>
destroot-tcllib: all-tcllib
@echo ===\> staging to destroot in ${DIRPRFX}@VENDOR_TCLLIB_SUBDIR@
<span style='display:block; white-space:pre;background:#ffe0e0;'>- @umask 0022; $(MAKE) -C @VENDOR_TCLLIB_SUBDIR@ DESTDIR=${DESTROOT} @VENDOR_TCLLIB_INSTALL@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @umask 0022; $(MAKE) -C @VENDOR_TCLLIB_SUBDIR@ DESTDIR=${DESTROOT} TCLSH_PROG=@INTREE_TCLSH@ @VENDOR_TCLLIB_INSTALL@
</span>
-install: install-tcl install-tclthread install-tclx install-tcllib
+destroot-libsolv: all-libsolv
+ @echo ===\> staging to destroot in ${DIRPRFX}@VENDOR_LIBSOLV_SUBDIR@
+ @umask 0022; $(MAKE) -C @VENDOR_LIBSOLV_SUBDIR@ DESTDIR=${DESTROOT} @VENDOR_LIBSOLV_INSTALL@
+
+install: install-tcl install-tclthread install-tclx install-tcllib install-libsolv
install-tcl:
@echo ===\> making $(@:%-tcl=%) in ${DIRPRFX}@VENDOR_TCL_SUBDIR@
@umask 0022; $(MAKE) -C @VENDOR_TCL_SUBDIR@ @VENDOR_TCL_INSTALL@
</pre><pre style='margin:0'>
</pre>