Subject: visualize DEPENDS/REQUIRED
To: None <tech-pkg@netbsd.org>
From: Kazuki Sakamoto <sakamoto@cec.co.jp>
List: tech-pkg
Date: 06/14/1999 11:35:25
Hi,

I wrote scripts to visualize DEPENDS/REQUIRED of each package
by using vcg(pkgsrc/graphics/vcg).

Example: dependent graph of graphics/imlib,
<ftp://ftp.cec.co.jp/usr/sakamoto/NetBSD/experiment/imlib_dep.gif>

% ./lintpkgsrc.pl -g
	(Scan Makefiles in pkgsrc, and generate list.{pkg,dep,req}.)
% ./depvcg.pl graphics/imlib | xvcg -
	(Read list.{pkg,dep,req}, and show dependent graph of graphics/imlib.)
% ./depvcg.pl -a x11/gtk | xvcg -
	(Show widely dependent graph of x11/gtk.)

Have fun,

Kazuki Sakamoto
--
begin 644 dep.tgz
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
*?P.&B#!=`%```+MI
`
end