Fri May 2 19:10:26 2008 UTC ()
Bump version to	pkg_chk-1.91:
* Look for $MAKECONF in @MAKECONF@, @PREFIX@/etc/mk.conf,
  and /etc/mk.conf, in that order.
* Look for $PKGSRCDIR in the Makefile referred to by $MAKECONF,
  ".", "..", "../..", and "/usr/pkgsrc", in that order.
* Convert the Makefil to use the SUBST framework.

Proposed in tech-pkg; OK (in principle) David Brownlee


(apb)
diff -r1.60 -r1.61 pkgsrc/pkgtools/pkg_chk/Makefile
diff -r1.25 -r1.26 pkgsrc/pkgtools/pkg_chk/files/pkg_chk.8
diff -r1.56 -r1.57 pkgsrc/pkgtools/pkg_chk/files/pkg_chk.sh

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

--- pkgsrc/pkgtools/pkg_chk/Makefile 2008/04/23 21:55:29 1.60
+++ pkgsrc/pkgtools/pkg_chk/Makefile 2008/05/02 19:10:26 1.61
@@ -1,55 +1,46 @@ @@ -1,55 +1,46 @@
1# $NetBSD: Makefile,v 1.60 2008/04/23 21:55:29 abs Exp $ 1# $NetBSD: Makefile,v 1.61 2008/05/02 19:10:26 apb Exp $
2 2
3DISTNAME= pkg_chk-1.91 3DISTNAME= pkg_chk-1.91
4CATEGORIES= pkgtools 4CATEGORIES= pkgtools
5MASTER_SITES= # empty 5MASTER_SITES= # empty
6DISTFILES= # empty 6DISTFILES= # empty
7 7
8MAINTAINER= abs@NetBSD.org 8MAINTAINER= 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
13 13
14WRKSRC= ${WRKDIR} 14WRKSRC= ${WRKDIR}
15EXTRACT_ONLY= # empty 15EXTRACT_ONLY= # empty
16USE_LANGUAGES= # empty 16USE_LANGUAGES= # empty
17USE_TOOLS+= mktemp:run 17USE_TOOLS+= mktemp:run
18USE_TOOLS+= gzip:run 18USE_TOOLS+= gzip:run
19NO_CHECKSUM= YES 19NO_CHECKSUM= YES
 20NO_BUILD= yes
20 21
21CONFLICTS= pkgchk-[0-9]* 22CONFLICTS= pkgchk-[0-9]*
22 23
23INSTALLATION_DIRS= sbin ${PKGMANDIR}/man8 24INSTALLATION_DIRS= sbin ${PKGMANDIR}/man8
24 25
25.include "../../mk/bsd.prefs.mk" 26.include "../../mk/bsd.prefs.mk"
26 27
27# Avoid changing any the actual value of MAKECONF 28SUBST_CLASSES+= vars
28TMP_MAKECONF=${MAKECONF:U/etc/mk.conf} 29SUBST_STAGE.vars= pre-configure
29 30SUBST_MESSAGE.vars= Configuring sources.
30do-build: 31SUBST_FILES.vars= pkg_chk.sh pkg_chk.8
31 ${SED} -e 's#@AWK@#${AWK}#g' \ 32SUBST_VARS.vars= AWK GREP GZIP_CMD ID MAKE MAKECONF MKTEMP \
32 -e 's#@GREP@#${GREP}#g' \ 33 PKG_ADD PKG_ADMIN PKG_DELETE PKG_INFO \
33 -e 's#@GZIP_CMD@#${GZIP_CMD}#g' \ 34 SED SH SORT TSORT PREFIX PKG_DBDIR XARGS
34 -e 's#@ID@#${ID}#g' \ 35
35 -e 's#@MAKE@#${MAKE}#g' \ 36REPLACE_SH+= pkg_chk.sh
36 -e 's#@MAKECONF@#${TMP_MAKECONF}#g' \ 37
37 -e 's#@MKTEMP@#${MKTEMP}#g' \ 38do-extract:
38 -e 's#@PKG_ADD@#${PKG_ADD}#g' \ 39 cp ${FILESDIR}/pkg_chk.sh ${WRKSRC}
39 -e 's#@PKG_ADMIN@#${PKG_ADMIN}#g' \ 40 cp ${FILESDIR}/pkg_chk.8 ${WRKSRC}
40 -e 's#@PKG_DELETE@#${PKG_DELETE}#g' \ 
41 -e 's#@PKG_INFO@#${PKG_INFO}#g' \ 
42 -e 's#@SED@#${SED}#g' \ 
43 -e 's#@SH@#${SH}#g' \ 
44 -e 's#@SORT@#${SORT}#g' \ 
45 -e 's#@TSORT@#${TSORT}#g' \ 
46 -e 's#@PREFIX@#${PREFIX}#g' \ 
47 -e 's#@PKG_DBDIR@#${PKG_DBDIR}#g' \ 
48 -e 's#@XARGS@#${XARGS}#g' \ 
49 ${FILESDIR}/pkg_chk.sh >${WRKSRC}/pkg_chk.sh 
50 41
51do-install: 42do-install:
52 ${INSTALL_SCRIPT} ${WRKSRC}/pkg_chk.sh ${PREFIX}/sbin/pkg_chk 43 ${INSTALL_SCRIPT} ${WRKSRC}/pkg_chk.sh ${PREFIX}/sbin/pkg_chk
53 ${INSTALL_MAN} ${FILESDIR}/pkg_chk.8 ${PREFIX}/${PKGMANDIR}/man8/pkg_chk.8 44 ${INSTALL_MAN} ${WRKSRC}/pkg_chk.8 ${PREFIX}/${PKGMANDIR}/man8/pkg_chk.8
54 45
55.include "../../mk/bsd.pkg.mk" 46.include "../../mk/bsd.pkg.mk"

cvs diff -r1.25 -r1.26 pkgsrc/pkgtools/pkg_chk/files/pkg_chk.8 (expand / switch to unified diff)

--- pkgsrc/pkgtools/pkg_chk/files/pkg_chk.8 2007/08/27 15:28:54 1.25
+++ pkgsrc/pkgtools/pkg_chk/files/pkg_chk.8 2008/05/02 19:10:26 1.26
@@ -1,19 +1,19 @@ @@ -1,19 +1,19 @@
1.\" $NetBSD: pkg_chk.8,v 1.25 2007/08/27 15:28:54 abs Exp $ 1.\" $NetBSD: pkg_chk.8,v 1.26 2008/05/02 19:10:26 apb Exp $
2.\" 2.\"
3.\" Copyright (c) 2001 by David Brownlee (abs@NetBSD.org) 3.\" Copyright (c) 2001 by David Brownlee (abs@NetBSD.org)
4.\" Absolutely no warranty. 4.\" Absolutely no warranty.
5.\" 5.\"
6.Dd September 29, 2006 6.Dd May 2, 2008
7.Dt PKG_CHK 8 7.Dt PKG_CHK 8
8.Sh NAME 8.Sh NAME
9.Nm pkg_chk 9.Nm pkg_chk
10.Nd check, and optionally update, installed packages 10.Nd check, and optionally update, installed packages
11.Sh SYNOPSIS 11.Sh SYNOPSIS
12.Nm 12.Nm
13.Op Fl aBbcfhiklNnpqrsuv 13.Op Fl aBbcfhiklNnpqrsuv
14.Op Fl C Ar conf 14.Op Fl C Ar conf
15.Op Fl D Ar tags 15.Op Fl D Ar tags
16.Op Fl L Ar file 16.Op Fl L Ar file
17.Op Fl P Ar path 17.Op Fl P Ar path
18.Op Fl U Ar tags 18.Op Fl U Ar tags
19.Sh DESCRIPTION 19.Sh DESCRIPTION
@@ -258,40 +258,47 @@ or @@ -258,40 +258,47 @@ or
258is present, 258is present,
259.Em x11 259.Em x11
260is added to the list of tags. 260is added to the list of tags.
261Tags should not contain the - or + characters. 261Tags should not contain the - or + characters.
262To see tags for the current machine, run 262To see tags for the current machine, run
263.Nm 263.Nm
264with the 264with the
265.Fl v 265.Fl v
266option. 266option.
267.Sh ENVIRONMENT 267.Sh ENVIRONMENT
268.Nm 268.Nm
269uses the following environment variables. 269uses the following environment variables.
270.Bl -tag -width xxxx 270.Bl -tag -width xxxx
271.It Ev PKGSRCDIR 271.It Ev MAKECONF
272Base of pkgsrc tree. 272Path to
273If not set in environment then read from 273.Pa mk.conf .
274.Pa ${MAKECONF} 274Defaults to
 275.Pa @MAKECONF@ , @PREFIX@/etc/mk.conf ,
275or 276or
276.Pa /etc/mk.conf . 277.Pa /etc/mk.conf .
277Defaults to 278.It Ev PKGSRCDIR
 279Base of pkgsrc tree.
 280If not set in the environment, then this variable is read from
 281.Pa ${MAKECONF} .
 282If it is still not set, and if the current working directory
 283appears to be inside a pkgsrc tree, then this variable
 284is set to the base of that pkgsrc tree.
 285Finally, if
278.Pa /usr/pkgsrc 286.Pa /usr/pkgsrc
 287appears to contain a pkgsrc tree, then that is used as a last resort.
279.It Ev PKG_DBDIR 288.It Ev PKG_DBDIR
280pkgsrc database directory. 289pkgsrc database directory.
281If not set in environment then read from 290If not set in environment then read from
282.Pa ${MAKECONF} 291.Pa ${MAKECONF} .
283or 
284.Pa /etc/mk.conf . 
285Defaults to 292Defaults to
286.Pa /var/db/pkg 293.Pa /var/db/pkg
287.It Ev PACKAGES 294.It Ev PACKAGES
288Location of binary packages. 295Location of binary packages.
289If not set in environment then read from 296If not set in environment then read from
290.Pa /etc/mk.conf . 297.Pa /etc/mk.conf .
291Defaults to 298Defaults to
292.Pa ${PKGSRCDIR}/packages . 299.Pa ${PKGSRCDIR}/packages .
293.Pp 300.Pp
294Unless in a completely homogeneous environment (every machine running 301Unless in a completely homogeneous environment (every machine running
295exactly the same OS version and architecture) setting 302exactly the same OS version and architecture) setting
296.Ev ${PACKAGES} 303.Ev ${PACKAGES}
297in 304in

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

--- pkgsrc/pkgtools/pkg_chk/files/pkg_chk.sh 2008/04/23 21:55:29 1.56
+++ pkgsrc/pkgtools/pkg_chk/files/pkg_chk.sh 2008/05/02 19:10:26 1.57
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1#!@SH@ -e 1#!@SH@ -e
2# 2#
3# $Id: pkg_chk.sh,v 1.56 2008/04/23 21:55:29 abs Exp $ 3# $Id: pkg_chk.sh,v 1.57 2008/05/02 19:10:26 apb Exp $
4# 4#
5# TODO: Make -g check dependencies and tsort 5# TODO: Make -g check dependencies and tsort
6# TODO: Variation of -g which only lists top level packages 6# TODO: Variation of -g which only lists top level packages
7# TODO: List top level packages installed but not in config 7# TODO: List top level packages installed but not in config
8 8
9PATH=${PATH}:/usr/sbin:/usr/bin 9PATH=${PATH}:/usr/sbin:/usr/bin
10 10
11SUMMARY_FILE=pkg_summary.gz 11SUMMARY_FILE=pkg_summary.gz
12OLD_SUMMARY_FILE=pkg_chk-summary 12OLD_SUMMARY_FILE=pkg_chk-summary
13 13
14is_binary_available() 14is_binary_available()
15 { 15 {
16 if [ -n "$PKGDB" ]; then 16 if [ -n "$PKGDB" ]; then
@@ -148,29 +148,40 @@ extract_pkg_vars() @@ -148,29 +148,40 @@ extract_pkg_vars()
148 if [ ! -f $PKGSRCDIR/$pkgdir/Makefile ];then 148 if [ ! -f $PKGSRCDIR/$pkgdir/Makefile ];then
149 msg "WARNING: No $pkgdir/Makefile - package moved or obsolete?" 149 msg "WARNING: No $pkgdir/Makefile - package moved or obsolete?"
150 return 150 return
151 fi 151 fi
152 cd $PKGSRCDIR/$PKGDIR 152 cd $PKGSRCDIR/$PKGDIR
153 extract_make_vars Makefile "$@" 153 extract_make_vars Makefile "$@"
154 if [ -z "$PKGNAME" ]; then 154 if [ -z "$PKGNAME" ]; then
155 fatal "Unable to extract PKGNAME for $pkgdir" 155 fatal "Unable to extract PKGNAME for $pkgdir"
156 fi 156 fi
157 } 157 }
158 158
159extract_variables() 159extract_variables()
160 { 160 {
161 extract_mk_var PKGSRCDIR /usr/pkgsrc 161 extract_mk_var PKGSRCDIR ''
162 if [ ! -d $PKGSRCDIR -a -z "$opt_b" ] ; then 162 if [ -z "$PKGSRCDIR" ] ; then
163 fatal "Unable to locate PKGSRCDIR ($PKGSRCDIR)" 163 for dir in . .. ../.. /usr/pkgsrc ; do
 164 if [ -f "${dir}/mk/bsd.pkg.mk" ]; then
 165 case "${dir}" in
 166 /*) PKGSRCDIR="${dir}" ;;
 167 *) PKGSRCDIR="$( cd "${dir}" >/dev/null 2>&1 && pwd )" ;;
 168 esac
 169 break
 170 fi
 171 done
 172 fi
 173 if [ ! -d $PKGSRCDIR -a \( -z "$opt_b" -o -n "$opt_s" \) ] ; then
 174 fatal "Unable to locate PKGSRCDIR (${PKGSRCDIR:-not set})"
164 fi 175 fi
165 176
166 # Now we have PKGSRCDIR, use it to determine PACKAGES, and PKGCHK_CONF 177 # Now we have PKGSRCDIR, use it to determine PACKAGES, and PKGCHK_CONF
167 # as well as AWK, GREP, SED, PKGCHK_TAGS and PKGCHK_NOTAGS 178 # as well as AWK, GREP, SED, PKGCHK_TAGS and PKGCHK_NOTAGS
168 # 179 #
169 180
170 if [ -n "$opt_g" ]; then 181 if [ -n "$opt_g" ]; then
171 : 182 :
172 elif [ -z "$opt_b" -o -n "$opt_s" -o -d $PKGSRCDIR/pkgtools/pkg_chk ] ; then 183 elif [ -z "$opt_b" -o -n "$opt_s" -o -d $PKGSRCDIR/pkgtools/pkg_chk ] ; then
173 cd $PKGSRCDIR/pkgtools/pkg_chk 184 cd $PKGSRCDIR/pkgtools/pkg_chk
174 extract_make_vars Makefile \ 185 extract_make_vars Makefile \
175 AWK GREP GZIP_CMD ID PACKAGES PKGCHK_CONF PKGCHK_NOTAGS \ 186 AWK GREP GZIP_CMD ID PACKAGES PKGCHK_CONF PKGCHK_NOTAGS \
176 PKGCHK_TAGS PKGCHK_UPDATE_CONF PKG_ADD PKG_DBDIR PKG_DELETE \ 187 PKGCHK_TAGS PKGCHK_UPDATE_CONF PKG_ADD PKG_DBDIR PKG_DELETE \
@@ -740,34 +751,36 @@ test -n "$PKG_ADD" || PKG_ADD="@PKG_A @@ -740,34 +751,36 @@ test -n "$PKG_ADD" || PKG_ADD="@PKG_A
740test -n "$PKG_ADMIN" || PKG_ADMIN="@PKG_ADMIN@" 751test -n "$PKG_ADMIN" || PKG_ADMIN="@PKG_ADMIN@"
741test -n "$PKG_DBDIR" || PKG_DBDIR="@PKG_DBDIR@" 752test -n "$PKG_DBDIR" || PKG_DBDIR="@PKG_DBDIR@"
742test -n "$PKG_DELETE" || PKG_DELETE="@PKG_DELETE@" 753test -n "$PKG_DELETE" || PKG_DELETE="@PKG_DELETE@"
743test -n "$PKG_INFO" || PKG_INFO="@PKG_INFO@" 754test -n "$PKG_INFO" || PKG_INFO="@PKG_INFO@"
744test -n "$SED" || SED="@SED@" 755test -n "$SED" || SED="@SED@"
745test -n "$SORT" || SORT="@SORT@" 756test -n "$SORT" || SORT="@SORT@"
746test -n "$TSORT" || TSORT="@TSORT@" 757test -n "$TSORT" || TSORT="@TSORT@"
747test -n "$XARGS" || XARGS="@XARGS@" 758test -n "$XARGS" || XARGS="@XARGS@"
748 759
749MY_TMPDIR=`${MKTEMP} -d ${TMPDIR-/tmp}/${0##*/}.XXXXXX` 760MY_TMPDIR=`${MKTEMP} -d ${TMPDIR-/tmp}/${0##*/}.XXXXXX`
750test -n "$MY_TMPDIR" || fatal "Couldn't create temporary directory." 761test -n "$MY_TMPDIR" || fatal "Couldn't create temporary directory."
751MY_TMPFILE=$MY_TMPDIR/tmp 762MY_TMPFILE=$MY_TMPDIR/tmp
752 763
 764if [ -z "$MAKECONF" ] ; then
 765 for mkconf in "@MAKECONF@" "@PREFIX@/etc/mk.conf" /etc/mk.conf ; do
 766 if [ -f "$mkconf" ] ; then
 767 MAKECONF="$mkconf"
 768 break
 769 fi
 770 done
 771fi
753if [ -z "$MAKECONF" -o ! -f "$MAKECONF" ] ; then 772if [ -z "$MAKECONF" -o ! -f "$MAKECONF" ] ; then
754 if [ -f @PREFIX@/etc/mk.conf ] ; then 773 MAKECONF=/dev/null
755 MAKECONF=@PREFIX@/etc/mk.conf 
756 elif [ -f /etc/mk.conf ] ; then 
757 MAKECONF=/etc/mk.conf 
758 else 
759 MAKECONF=/dev/null 
760 fi 
761fi 774fi
762verbose_var MAKECONF 775verbose_var MAKECONF
763 776
764# grabbed from GNU configure 777# grabbed from GNU configure
765if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then 778if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
766 # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. 779 # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
767 if (echo -n testing; echo 1,2,3) | ${SED} s/-n/xn/ | grep xn >/dev/null; then 780 if (echo -n testing; echo 1,2,3) | ${SED} s/-n/xn/ | grep xn >/dev/null; then
768 ac_n= ac_c=' 781 ac_n= ac_c='
769' ac_t=' ' 782' ac_t=' '
770 else 783 else
771 ac_n=-n ac_c= ac_t= 784 ac_n=-n ac_c= ac_t=
772 fi 785 fi
773else 786else