Wed Mar 25 00:00:52 2009 UTC ()
Updated pkgtools/pkg_chk to 1.98

- Avoid using -. to pkg_info
- Indicate when using a pkg_summary.gz rather than running pkg_info -X on all
  binary packages


(abs)
diff -r1.70 -r1.71 pkgsrc/pkgtools/pkg_chk/Makefile
diff -r1.62 -r1.63 pkgsrc/pkgtools/pkg_chk/files/pkg_chk.sh

cvs diff -r1.70 -r1.71 pkgsrc/pkgtools/pkg_chk/Makefile (expand / switch to unified diff)

--- pkgsrc/pkgtools/pkg_chk/Makefile 2009/02/21 20:50:06 1.70
+++ pkgsrc/pkgtools/pkg_chk/Makefile 2009/03/25 00:00:52 1.71
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1# $NetBSD: Makefile,v 1.70 2009/02/21 20:50:06 abs Exp $ 1# $NetBSD: Makefile,v 1.71 2009/03/25 00:00:52 abs Exp $
2 2
3DISTNAME= pkg_chk-1.97 3DISTNAME= pkg_chk-1.98
4CATEGORIES= pkgtools 4CATEGORIES= pkgtools
5MASTER_SITES= # empty 5MASTER_SITES= # empty
6DISTFILES= # empty 6DISTFILES= # empty
7 7
8OWNER= abs@NetBSD.org 8OWNER= abs@NetBSD.org
9HOMEPAGE= ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc/doc/pkgsrc.html 9HOMEPAGE= ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc/doc/pkgsrc.html
10COMMENT= Check installed package versions against pkgsrc 10COMMENT= Check installed package versions against pkgsrc
11 11
12PKG_INSTALLATION_TYPES= overwrite pkgviews 12PKG_INSTALLATION_TYPES= overwrite pkgviews
13PKG_DESTDIR_SUPPORT= user-destdir 13PKG_DESTDIR_SUPPORT= user-destdir
14 14
15WRKSRC= ${WRKDIR} 15WRKSRC= ${WRKDIR}
16EXTRACT_ONLY= # empty 16EXTRACT_ONLY= # empty

cvs diff -r1.62 -r1.63 pkgsrc/pkgtools/pkg_chk/files/pkg_chk.sh (expand / switch to unified diff)

--- pkgsrc/pkgtools/pkg_chk/files/pkg_chk.sh 2009/02/21 20:50:06 1.62
+++ pkgsrc/pkgtools/pkg_chk/files/pkg_chk.sh 2009/03/25 00:00:52 1.63
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1#!@SH@ -e 1#!@SH@ -e
2# 2#
3# $Id: pkg_chk.sh,v 1.62 2009/02/21 20:50:06 abs Exp $ 3# $Id: pkg_chk.sh,v 1.63 2009/03/25 00:00:52 abs Exp $
4# 4#
5# TODO: Make -g check dependencies and tsort 5# TODO: Make -g check dependencies and tsort
6# TODO: Make -g list user-installed packages first, followed by commented 6# TODO: Make -g list user-installed packages first, followed by commented
7# out automatically installed packages 7# out automatically installed packages
8# TODO: List user-installed packages that are not in config 8# TODO: List user-installed packages that are not in config
9 9
10PATH=${PATH}:/usr/sbin:/usr/bin 10PATH=${PATH}:/usr/sbin:/usr/bin
11 11
12SUMMARY_FILE=pkg_summary.gz 12SUMMARY_FILE=pkg_summary.gz
13OLD_SUMMARY_FILE=pkg_chk-summary 13OLD_SUMMARY_FILE=pkg_chk-summary
14 14
15is_binary_available() 15is_binary_available()
16 { 16 {
@@ -247,59 +247,61 @@ generate_conf_from_installed() @@ -247,59 +247,61 @@ generate_conf_from_installed()
247 FILE=$1 247 FILE=$1
248 if [ -r $FILE ]; then 248 if [ -r $FILE ]; then
249 mv $FILE ${FILE}.old 249 mv $FILE ${FILE}.old
250 fi 250 fi
251 echo "# Generated automatically at $(date)" > $FILE 251 echo "# Generated automatically at $(date)" > $FILE
252 echo $(pkgdirs_from_installed) | tr ' ' '\n' >> $FILE 252 echo $(pkgdirs_from_installed) | tr ' ' '\n' >> $FILE
253 } 253 }
254 254
255get_bin_pkg_info() 255get_bin_pkg_info()
256 { 256 {
257 summary_file=$PACKAGES/$SUMMARY_FILE 257 summary_file=$PACKAGES/$SUMMARY_FILE
258 if [ -f $summary_file ] ; then 258 if [ -f $summary_file ] ; then
259 if [ -z "$(find $PACKAGES -type f -newer $summary_file -name '*.t[bg]z')" ] ; then 259 if [ -z "$(find $PACKAGES -type f -newer $summary_file -name '*.t[bg]z')" ] ; then
 260 msg_progress Reading $summary_file
260 zcat $summary_file 261 zcat $summary_file
261 return; 262 return;
262 fi 263 fi
263 echo "*** Ignoring $SUMMARY_FILE as PACKAGES contains newer files" >&2 264 echo "*** Ignoring $SUMMARY_FILE as PACKAGES contains newer files" >&2
264 fi 265 fi
 266 msg_progress Scan $PACKAGES
265 list_bin_pkgs | ${XARGS} ${PKG_INFO} -X 267 list_bin_pkgs | ${XARGS} ${PKG_INFO} -X
266 } 268 }
267 269
268get_build_ver() 270get_build_ver()
269 { 271 {
270 if [ -n "$opt_b" -a -z "$opt_s" ] ; then 272 if [ -n "$opt_b" -a -z "$opt_s" ] ; then
271 ${PKG_INFO} -. -q -b $PACKAGES/$PKGNAME$PKG_SUFX | ${GREP} . 273 ${PKG_INFO} -q -b $PACKAGES/$PKGNAME$PKG_SUFX | ${GREP} .
272 return 274 return
273 fi 275 fi
274 # Unfortunately pkgsrc always outputs to a file, but it does helpfully 276 # Unfortunately pkgsrc always outputs to a file, but it does
275 # allows # us to specify the name 277 # helpfully allows us to specify the name
276 rm -f $MY_TMPFILE 278 rm -f $MY_TMPFILE
277 ${MAKE} _BUILD_VERSION_FILE=$MY_TMPFILE $MY_TMPFILE 279 ${MAKE} _BUILD_VERSION_FILE=$MY_TMPFILE $MY_TMPFILE
278 cat $MY_TMPFILE 280 cat $MY_TMPFILE
279 } 281 }
280 282
281list_bin_pkgs () 283list_bin_pkgs ()
282 { 284 {
283 ls -t $PACKAGES | grep "$PKG_SUFX_RE"'$' | ${SED} "s|^|$PACKAGES/|" 285 ls -t $PACKAGES | grep "$PKG_SUFX_RE"'$' | ${SED} "s|^|$PACKAGES/|"
284 } 286 }
285 287
286# Given a binary package filename as the first argumennt, return a list 288# Given a binary package filename as the first argumennt, return a list
287# of exact package versions against which it was built and on which it 289# of exact package versions against which it was built and on which it
288# depends 290# depends
289# 291#
290list_dependencies() 292list_dependencies()
291 { 293 {
292 ${PKG_INFO} -. -q -n $1 | ${GREP} .. || true 294 ${PKG_INFO} -q -n $1 | ${GREP} .. || true
293 } 295 }
294 296
295# Pass a list of pkgdirs, outputs a tsorted list including any dependencies 297# Pass a list of pkgdirs, outputs a tsorted list including any dependencies
296# 298#
297list_packages() 299list_packages()
298 { 300 {
299 # Convert passed in list of pkgdirs to a list of binary package files 301 # Convert passed in list of pkgdirs to a list of binary package files
300 pkglist='' 302 pkglist=''
301 for pkgdir in $* ; do 303 for pkgdir in $* ; do
302 pkgname=`pkgdir2pkgname $pkgdir` 304 pkgname=`pkgdir2pkgname $pkgdir`
303 if [ -z "$pkgname" ]; then 305 if [ -z "$pkgname" ]; then
304 fatal_later "$pkgdir - Unable to extract pkgname" 306 fatal_later "$pkgdir - Unable to extract pkgname"
305 continue 307 continue
@@ -829,27 +831,26 @@ fi @@ -829,27 +831,26 @@ fi
829AWK_PARSE_SUMMARY='$1=="PKGNAME"{pkgname=$2} $1=="PKGPATH"{pkgpath=$2} NF==0{if (pkgpath && pkgname) print pkgpath ":" pkgname; pkgpath=""; pkgname=""} END{if (pkgpath && pkgname) print pkgpath ":" pkgname}' 831AWK_PARSE_SUMMARY='$1=="PKGNAME"{pkgname=$2} $1=="PKGPATH"{pkgpath=$2} NF==0{if (pkgpath && pkgname) print pkgpath ":" pkgname; pkgpath=""; pkgname=""} END{if (pkgpath && pkgname) print pkgpath ":" pkgname}'
830 832
831if [ -n "$opt_b" -a -z "$opt_s" ] ; then 833if [ -n "$opt_b" -a -z "$opt_s" ] ; then
832 case $PACKAGES in 834 case $PACKAGES in
833 http://*|ftp://*) 835 http://*|ftp://*)
834 PKGDB=`ftp -o - $PACKAGES/$SUMMARY_FILE | ${GZIP_CMD} -cd \ 836 PKGDB=`ftp -o - $PACKAGES/$SUMMARY_FILE | ${GZIP_CMD} -cd \
835 | ${AWK} -F= "$AWK_PARSE_SUMMARY"` 837 | ${AWK} -F= "$AWK_PARSE_SUMMARY"`
836 if [ -z "$PKGDB" ] 838 if [ -z "$PKGDB" ]
837 then 839 then
838 PKGDB=`ftp -o - $PACKAGES/$OLD_SUMMARY_FILE` 840 PKGDB=`ftp -o - $PACKAGES/$OLD_SUMMARY_FILE`
839 fi;; 841 fi;;
840 *) 842 *)
841 if [ -d "$PACKAGES" ] ; then 843 if [ -d "$PACKAGES" ] ; then
842 msg_progress Scan $PACKAGES 
843 PKGDB=$(get_bin_pkg_info | bin_pkg_info2pkgdb) 844 PKGDB=$(get_bin_pkg_info | bin_pkg_info2pkgdb)
844 PKGSRCDIR=NONE 845 PKGSRCDIR=NONE
845 fi;; 846 fi;;
846 esac 847 esac
847fi 848fi
848 849
849if [ -n "$opt_g" ]; then 850if [ -n "$opt_g" ]; then
850 verbose "Write $PKGCHK_CONF based on installed packages" 851 verbose "Write $PKGCHK_CONF based on installed packages"
851 generate_conf_from_installed $PKGCHK_CONF 852 generate_conf_from_installed $PKGCHK_CONF
852fi 853fi
853 854
854if [ -n "$opt_r" -o -n "$opt_u" ];then 855if [ -n "$opt_r" -o -n "$opt_u" ];then
855 verbose "Enumerate PKGDIRLIST from installed packages" 856 verbose "Enumerate PKGDIRLIST from installed packages"