summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbin/depsdot47
1 files changed, 45 insertions, 2 deletions
diff --git a/bin/depsdot b/bin/depsdot
index 1e31fcf..b898f5d 100755
--- a/bin/depsdot
+++ b/bin/depsdot
@@ -1,5 +1,11 @@
#!/usr/bin/perl
+=head1 NAME
+
+depsdot - Generate graph of ProteanOS source package dependencies
+
+=cut
+
use strict;
use warnings;
no indirect;
@@ -9,6 +15,7 @@ use English qw(-no_match_vars);
use LWP::Simple;
use POSIX qw(strftime);
+my $SOURCE_URL = 'http://git.proteanos.com/depsdot/depsdot.git/';
my $BASE_URL = 'http://files.proteanos.com/pub/proteanos/feeds/dev/trunk';
my @DEP_FIELDS = qw(Depends Recommends Suggests Pre-Depends);
my @IGNORE_DEPS = qw(libc.6);
@@ -73,8 +80,9 @@ sub main
}
}
}
- STDOUT->print("/*\n * ProteanOS source package dependencies\n */\n\n" .
- "strict digraph deps {\n" .
+ STDOUT->print("/*\n * ProteanOS source package dependencies\n" .
+ " * Generated by depsdot, (C) 2019 Patrick McDermott, GPLv3+:" .
+ "\n<" . $SOURCE_URL . ">\n */\n\nstrict digraph deps {\n" .
"\toverlap = false;\n\tsplines = true;\n\tlayout = neato;\n" .
"\tlabel = <<B>ProteanOS Source Package Dependencies as of " .
strftime('%Y-%m-%d at %H:%M:%S %Z', localtime()) . "</B><BR/>" .
@@ -108,3 +116,38 @@ sub main
}
exit(main());
+
+__END__
+
+=head1 SYNOPSIS
+
+B<depsdot>
+
+=head1 DESCRIPTION
+
+B<depsdot> generates a DOT-language graph of build- and run-time dependencies
+between ProteanOS source packages. Graphviz is recommended for rendering the
+graph.
+
+=head1 OUTPUT
+
+B<depsdot> writes a DOT-language graph to standard output.
+
+=head1 COPYRIGHT
+
+Copyright (C) 2019 Patrick McDermott
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+=cut