checkflist revision 1.16
11.3Smikel#! /bin/sh -- 21.3Smikel# 31.16Slukem# $NetBSD: checkflist,v 1.16 2002/08/29 04:19:36 lukem Exp $ 41.3Smikel# 51.3Smikel# Verify output of makeflist against contents of $DESTDIR. 61.1Scgd 71.15Slukemif [ -z "$DESTDIR" ]; then 81.15Slukem echo "DESTDIR must be set" 91.1Scgd exit 1 101.15Slukemfi 111.15Slukem 121.15Slukemprog=${0##*/} 131.1Scgd 141.9Srossorigin=. 151.9Srosstmpname=/tmp/_CHECK.$$ 161.10Sperry 171.10Sperryxargs="" 181.10Sperrydargs="" 191.12Sabsdiffargs="" 201.15Slukemfindargs= 211.15Slukemmetalog= 221.10Sperry 231.10Sperry# handle args 241.10Sperrywhile : ; do 251.10Sperry case $1 in 261.10Sperry -x11) 271.10Sperry xargs="-x" 281.10Sperry origin=./usr/X11R6 291.10Sperry ;; 301.10Sperry -both) 311.10Sperry xargs="-b" 321.10Sperry ;; 331.12Sabs -u) 341.12Sabs diffargs="-u" 351.12Sabs ;; 361.12Sabs -c) 371.12Sabs diffargs="-c" 381.12Sabs ;; 391.15Slukem -M*) 401.15Slukem metalog=$2; shift 411.15Slukem ;; 421.10Sperry -*) 431.10Sperry cat 1>&2 <<USAGE 441.15SlukemUsage: ${prog} [-x11|-both] [-u|-c] [-M metalog] 451.10Sperry -x11 check only x11 lists 461.10Sperry -both check netbsd + x11 lists 471.12Sabs -u output differences in "unified diff" style 481.12Sabs -c output differences in "context diff" style 491.15Slukem -M metalog metalog file 501.10SperryUSAGE 511.10Sperry exit 1 521.10Sperry ;; 531.10Sperry *) 541.10Sperry break 551.10Sperry ;; 561.10Sperry esac 571.10Sperry shift 581.10Sperrydone 591.10Sperry 601.15Slukemif [ -n "$metalog" ]; then 611.15Slukem case "$metalog" in 621.15Slukem ${DESTDIR}/*) 631.15Slukem findargs="! -path ./${metalog#${DESTDIR}/} -a" 641.15Slukem ;; 651.15Slukem esac 661.15Slukemfi 671.15Slukem 681.15Slukem 691.10Sperrysh makeflist $xargs $dargs > $tmpname 701.10Sperry 711.15Slukem( 721.15Slukem cd $DESTDIR 731.15Slukem find $origin $findargs \( -type d -o -type f -o -type l \) 741.15Slukem) | sort | diff $diffargs $tmpname - 751.15Slukemrv=$? 761.15Slukem 771.9Sross/bin/rm -f $tmpname 781.15Slukem 791.15Slukemif [ $rv -ne 0 ]; then 801.15Slukem echo "${prog}: flist inconsistencies found" 811.15Slukem if [ -z "$diffargs" ]; then 821.15Slukem echo "${prog}: key to output:" 831.16Slukem echo " < file is in flist but missing from DESTDIR" 841.16Slukem echo " (file wasn't installed ?)" 851.16Slukem echo " > file is in DESTDIR but missing from flist" 861.16Slukem echo " (file is obsolete or flist is out of date ?)" 871.15Slukem fi 881.15Slukemfi 891.15Slukemexit $rv 90