#!/usr/bin/perl use warnings; use strict; my $item = $ARGV[0] or die "Usage: $0 \n"; my $debug = 0; open my $dot,'<', "depends.dot" or die "Cannot open database: $!\n"; while (<$dot>) { chomp; next unless (m/(.*)\ \-\>\ (.*)/); print "Got one! $_\n" if $debug; my ($lh, $rh) = ($1, $2); if ($item eq $lh) { print "$rh depends upon $item\n" if $debug;; push(@depends_upon, $rh); } elsif ($item eq $rh) { print "$lh is a dependency of $item\n" if $debug; push(@dependency_of, $lh); } } print "$item is a dependency of ", join(',', sort(@dependency_of)), "\n"; print "$item depends upon ", join(',', sort(@depends_upon)), "\n"; 0; # digraph depends { # "patch-native" -> ERROR # "quilt-native" [label="quilt-native\n0.45-r0"] # "quilt-native" -> "patch-native" # "ipkg-utils-native" [label="ipkg-utils-native\n1.6+cvs20050404-r8"] # "ipkg-utils-native" -> "quilt-native"