dc4928f26f
- add "-M metalog". if metalog starts with "${DESTDIR}/", it will be skipped in the flist check, to prevent unnecessary warnings about extraneous ./METALOG - if the diff returned a non-zero exit code, print a warning message, and for the default diff output, print a blurb describing the meaning of the output. Makefile: - call checkflist with "-M ${METALOG}" if UNPRIVED - run "${MAKE} checkflist" if ${DESTDIR} != "" NOTE: this change will prevent maketars from running if the sets lists are out of date. This is intentional. Better to fail than to build tar files with missing files.
88 lines
1.3 KiB
Bash
Executable File
88 lines
1.3 KiB
Bash
Executable File
#! /bin/sh --
|
|
#
|
|
# $NetBSD: checkflist,v 1.15 2002/07/09 16:08:38 lukem Exp $
|
|
#
|
|
# Verify output of makeflist against contents of $DESTDIR.
|
|
|
|
if [ -z "$DESTDIR" ]; then
|
|
echo "DESTDIR must be set"
|
|
exit 1
|
|
fi
|
|
|
|
prog=${0##*/}
|
|
|
|
origin=.
|
|
tmpname=/tmp/_CHECK.$$
|
|
|
|
xargs=""
|
|
dargs=""
|
|
diffargs=""
|
|
findargs=
|
|
metalog=
|
|
|
|
# handle args
|
|
while : ; do
|
|
case $1 in
|
|
-x11)
|
|
xargs="-x"
|
|
origin=./usr/X11R6
|
|
;;
|
|
-both)
|
|
xargs="-b"
|
|
;;
|
|
-u)
|
|
diffargs="-u"
|
|
;;
|
|
-c)
|
|
diffargs="-c"
|
|
;;
|
|
-M*)
|
|
metalog=$2; shift
|
|
;;
|
|
-*)
|
|
cat 1>&2 <<USAGE
|
|
Usage: ${prog} [-x11|-both] [-u|-c] [-M metalog]
|
|
-x11 check only x11 lists
|
|
-both check netbsd + x11 lists
|
|
-u output differences in "unified diff" style
|
|
-c output differences in "context diff" style
|
|
-M metalog metalog file
|
|
USAGE
|
|
exit 1
|
|
;;
|
|
*)
|
|
break
|
|
;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
if [ -n "$metalog" ]; then
|
|
case "$metalog" in
|
|
${DESTDIR}/*)
|
|
findargs="! -path ./${metalog#${DESTDIR}/} -a"
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
|
|
sh makeflist $xargs $dargs > $tmpname
|
|
|
|
(
|
|
cd $DESTDIR
|
|
find $origin $findargs \( -type d -o -type f -o -type l \)
|
|
) | sort | diff $diffargs $tmpname -
|
|
rv=$?
|
|
|
|
/bin/rm -f $tmpname
|
|
|
|
if [ $rv -ne 0 ]; then
|
|
echo "${prog}: flist inconsistencies found"
|
|
if [ -z "$diffargs" ]; then
|
|
echo "${prog}: key to output:"
|
|
echo " < file in flist but missing from DESTDIR"
|
|
echo " > file in DESTDIR but missing from flist"
|
|
fi
|
|
fi
|
|
exit $rv
|