Speaking of trivial tools
Kris Kennaway
kris at obsecurity.org
Thu Aug 31 03:22:29 UTC 2006
On Mon, Aug 28, 2006 at 09:01:13PM -0400, Mike Meyer wrote:
> I realized today that this one was possible. I suspect it would be
> useful to lots of people working on ports, as well as for the sysadmin
> stuff I do with it. I'm just not sure where it should goes.
>
> -------------------- checkdeps.sh
> #!/bin/sh
>
> TMPFILE=/tmp/checkdeps.$$
>
> pkg_info -r $1 | sed -n 's/Dependency: //p' | sort -u > $TMPFILE
>
> ldd $(pkg_info -L $1) 2>/dev/null | \
> sed -e '/^\//d' -e 's/.*=> //' -e 's/(.*)//' | \
> sort -u | \
> xargs -n 1 pkg_info -W | \
> sed 's/.* //' | \
> grep -v $1 | \
> sort -u | \
> comm -23 - $TMPFILE
>
> rm $TMPFILE
> --------------------
>
> Hand it a package name as an argument, and it'll print out the names
> of any packages providing libraries used by binaries in the package
> given as an argument that aren't listed as a dependency for that
> package. I fed it my complete list of packages, and it turned up some
> interesting things - like a package that had a dependency on a newer
> version of itself(!).
>
> This is just a QAD hack. It certainly got a lot of rough edges yet.
See also the sysutils/libchk port. It's also great for finding stale
leftover files from e.g. earlier versions of the port that had a
broken pkg-plist, ports that were not updated correctly, etc.
Kris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20060831/7785986d/attachment.pgp
More information about the freebsd-hackers
mailing list