Subject: CVS commit: pkgsrc/pkgtools/pkgdepgraph
To: None <pkgsrc-changes@netbsd.org>
From: Andrew Brown <atatat@netbsd.org>
List: pkgsrc-changes
Date: 03/06/2003 23:13:14
Module Name:	pkgsrc
Committed By:	atatat
Date:		Thu Mar  6 21:13:14 UTC 2003

Modified Files:
	pkgsrc/pkgtools/pkgdepgraph: INSTALL Makefile
	pkgsrc/pkgtools/pkgdepgraph/files: pkgdepgraph.1 pkgdepgraph.pl

Log Message:
Jump to pkgdepgraph v2.0.

New features (excerpts from the man page, not in proper order, so that
you can better see how it fits together):

     -L       Limit the graph to those packages that are out of date or ulti-
              mately depend on some package that is.

     -D       Instead of the standard graph output, pkgdepgraph lists the
              packages that need to be deleted, in ``least required first''
              order, so that they can be deleted without any dependency prob-
              lems.

     -R       Instead of the standard graph output, emits a series of sh(1)
              commands that will rebuild all the out of date packages by re-
              building all the deleted leaf packages.

     -U package
              Generates a graph with only the out of date dependencies of
              package marked in red (ie, packages that are out of date but not
              dependencies of package will not be considered out of date).

     -f       Force a rebuild of all dependent packages.  This option is for
              use in conjunction with the -U option to force a rebuild of all
              the dependencies of a package to be updated.

     -O package
              Marks package as out of date so that you can see the impact of
              deleting dependent packages and rebuilding everything.

     -t target
              Changes the target of the -R output from ``install'' to target
              in case you want to ``make package'' or some other target.

     -c       Inserts a ``make clean'' command in the set of instructions to
              rebuild packages (see the -R option) after they are installed.

     -C       Asserts -c and adds ``CLEANDEPENDS=YES'' so that all rebuilt de-
              pendencies are cleaned as well.

The code was also cleaned up a bit, some unused or otherwise useless
variables were culled, the "multiple box" phenomenon of subgroups is
fixed, and the examples were all cleaned up to take advantage of all
the new features.

	Hey ma!  Now I can update my pkgs in four easy steps!

           $ lintpkgsrc -i > pkgdepgraph.in
           $ pkgdepgraph -R pkgdepgraph.in > rebuild.sh
           $ pkg_delete `pkgdepgraph -D pkgdepgraph.in`
           $ sh rebuild.sh


To generate a diff of this commit:
cvs rdiff -r1.1 -r1.2 pkgsrc/pkgtools/pkgdepgraph/INSTALL
cvs rdiff -r1.4 -r1.5 pkgsrc/pkgtools/pkgdepgraph/Makefile
cvs rdiff -r1.3 -r1.4 pkgsrc/pkgtools/pkgdepgraph/files/pkgdepgraph.1
cvs rdiff -r1.2 -r1.3 pkgsrc/pkgtools/pkgdepgraph/files/pkgdepgraph.pl

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.