[121944] contrib/port-depgraph/port-depgraph
ryandesign at macports.org
ryandesign at macports.org
Fri Jul 11 17:00:30 PDT 2014
Revision: 121944
https://trac.macports.org/changeset/121944
Author: ryandesign at macports.org
Date: 2014-07-11 17:00:30 -0700 (Fri, 11 Jul 2014)
Log Message:
-----------
port-depgraph: add fetch and extract dependencies; change font; add legend
Modified Paths:
--------------
contrib/port-depgraph/port-depgraph
Modified: contrib/port-depgraph/port-depgraph
===================================================================
--- contrib/port-depgraph/port-depgraph 2014-07-11 23:57:25 UTC (rev 121943)
+++ contrib/port-depgraph/port-depgraph 2014-07-12 00:00:30 UTC (rev 121944)
@@ -23,13 +23,8 @@
puts " -v verbose output, includes dependency labels"
puts " -V show version and MacPorts version being used"
puts ""
- puts "port-name is the name of a port to show dependencies"
+ puts "port-name is the name of a port whose dependencies should be shown"
puts "variants is the list of variants to enable/disable: +one -two..."
- puts ""
- puts "Dependency types are represented as follows:"
- puts " depends_run is dashed"
- puts " depends_build is dotted"
- puts " depends_lib is solid"
}
@@ -45,7 +40,7 @@
array unset portInfo
array set portInfo [mportinfo $mport]
mportclose $mport
- array set dependencyDictionary {depends_build build depends_lib lib depends_run run}
+ array set dependencyDictionary {depends_fetch fetch depends_extract extract depends_build build depends_lib lib depends_run run}
foreach dependencyType [array names dependencyDictionary] {
if {[info exists portInfo($dependencyType)] && [string length $portInfo($dependencyType)] > 0} {
foreach dependency $portInfo($dependencyType) {
@@ -71,22 +66,26 @@
set aBy [lindex $aList 1]
set aPort [lindex $aList 2]
- set style "solid"
- if {$aType == "run"} {
- set style "dashed"
+ set color "black"
+ if {$aType == "lus"} {
+ set color "#666666"
+ } elseif {$aType == "fetch"} {
+ set color "#ff00007f"
+ } elseif {$aType == "extract"} {
+ set color "#00ff007f"
} elseif {$aType == "build"} {
- set style "dotted"
+ set color "#0000ff7f"
}
- set color "black"
- if {$aBy != "port"} {
- set color "#708090"
+ set style "solid"
+ if {$aBy == "bin" || $aBy == "lib"} {
+ set style "dashed"
}
if {!$verbose} {
- puts [format {"%s" -> "%s" [style="%s"]} $portName $aPort $style]
+ puts [format {"%s" -> "%s" [style="%s", color="%s"]} $portName $aPort $style $color]
} else {
- puts [format {"%s" -> "%s" [style="%s", label="%s", color="%s"]} $portName $aPort $style $aBy $color]
+ puts [format {"%s" -> "%s" [style="%s", color="%s", label="%s"]} $portName $aPort $style $color $aBy]
}
print_dependencies portDependencies $aPort $verbose
@@ -114,11 +113,63 @@
}
set caption [format {Dependencies of %s} ${portSpec}]
+ set font "Helvetica Neue"
+ set fontBold "$font Bold"
+
puts "strict digraph \"$portName\" \{"
- puts [format {graph [label="%s"]} ${caption}]
+ puts [format {graph [fontname="%s" fontsize="14" label="%s"]} $fontBold $caption]
+ puts [format {node [fontname="%s"]} $font]
+ puts [format {edge [fontname="%s"]} $font]
print_dependencies portDependencies $portName $verbose
+ puts [format {
+"graph legend" [shape=none fontsize="9" label=<
+ <table border="0" cellborder="1" cellpadding="6" cellspacing="0">
+ <tr>
+ <td colspan="2"><font face="%s">Legend</font></td>
+ </tr>
+ <tr>
+ <td>
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td><font color="#000000" point-size="18">─ </font></td>
+ <td align="left">depends_lib</td>
+ </tr>
+ <tr>
+ <td><font color="#666666" point-size="18">─ </font></td>
+ <td align="left">depends_run</td>
+ </tr>
+ <tr>
+ <td><font color="#ff00007f" point-size="18">─ </font></td>
+ <td align="left">depends_fetch</td>
+ </tr>
+ <tr>
+ <td><font color="#00ff007f" point-size="18">─ </font></td>
+ <td align="left">depends_extract</td>
+ </tr>
+ <tr>
+ <td><font color="#0000ff7f" point-size="18">─ </font></td>
+ <td align="left">depends_build</td>
+ </tr>
+ </table>
+ </td>
+ <td>
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td><font point-size="18">─ </font></td>
+ <td align="left" balign="left">port:<br/>path:</td>
+ </tr>
+ <tr>
+ <td><font point-size="18">┈ </font></td>
+ <td align="left" balign="left">bin:<br/>lib:</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+>]
+} $fontBold ]
puts "\}"
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20140711/8f6dc4f9/attachment-0001.html>
More information about the macports-changes
mailing list