diff --git a/lib/spack/spack/cmd/spec.py b/lib/spack/spack/cmd/spec.py index 6f987d96d7f..71bc12d6f50 100644 --- a/lib/spack/spack/cmd/spec.py +++ b/lib/spack/spack/cmd/spec.py @@ -46,15 +46,12 @@ def spec(parser, args): spec.normalize() print spec.tree(color=True, indent=2, cover='paths') - print - print spec.topological_sort(reverse=True) - print - print "Graph" - print "------------------------------" - print spec.graph() - return - print "Concretized" print "------------------------------" spec.concretize() print spec.tree(color=True, indent=2) + + print "Graph" + print "------------------------------" + spec.graph() + return diff --git a/lib/spack/spack/spec.py b/lib/spack/spack/spec.py index 3386af8d7f4..0720fe6212e 100644 --- a/lib/spack/spack/spec.py +++ b/lib/spack/spack/spec.py @@ -1343,7 +1343,6 @@ def ordered_deps(node): frontier = [] - debug = True debug = False def back_edge(end, start): @@ -1367,7 +1366,10 @@ def back_edge(end, start): out.write("| " * end) out.write("|/") out.write("| " * (start - end - 1)) - out.write(" /" * (len(frontier) - start)) + if (start - end) > 1: + out.write("| " * (len(frontier) - start)) + else: + out.write(" /" * (len(frontier) - start)) out.write("\n") @@ -1424,6 +1426,9 @@ def add_deps_to_frontier(node, i): deps = [name] connect_deps(i, deps) + if i+1 < len(frontier) and len(frontier[i+1]) == 1: + deps = frontier.pop(i+1) + connect_deps(i+1, deps) else: name = topo_order.pop() @@ -1452,15 +1457,6 @@ def add_deps_to_frontier(node, i): out.write("\n") - out.write("\n") - out.write("%s\n" % frontier) - - # Reverse the lines in the output - #return '\n'.join(reversed(out.getvalue().split('\n'))) - - return "" #out.getvalue() - - def topological_sort(self, **kwargs): """Return a list of dependency specs sorted topologically. This spec is not modified in the process."""