1 #!/bin/sh 2 # 3 # $NetBSD: makeflist,v 1.8 1998/06/15 14:45:06 lukem Exp $ 4 # 5 # Print out the files in some or all lists. 6 # Usage: makeflist [-b] [-x] [-a arch] [-m machine] [-s setsdir] [setname ...] 7 # 8 9 # set defaults 10 machine=${MACHINE:-`printf 'xxx:\n\techo ${MACHINE}' | make -s -f-`} 11 arch=${MACHINE_ARCH:-`printf 'xxx:\n\techo ${MACHINE_ARCH}' | make -s -f-`} 12 setd=`pwd` 13 nlists="base comp etc games man misc text" 14 xlists="xbase xcomp xcontrib xfont xserver" 15 lists=$nlists 16 17 # handle args 18 while : ; do 19 case $1 in 20 -b*) 21 lists="$xlists $nlists" 22 ;; 23 -x*) 24 lists=$xlists 25 ;; 26 -a*) 27 arch=$2; shift 28 ;; 29 -m*) 30 machine=$2; shift 31 ;; 32 -s*) 33 setd=$2; shift 34 ;; 35 -*) 36 cat 1>&2 <<USAGE 37 Usage: $0 [-b] [-x] [-a arch] [-m machine] [-s setsdir] [setname ...] 38 -b make netbsd + x11 lists 39 -x only make x11 lists 40 -a arch set arch (e.g, m68k, mips, powerpc) [$arch] 41 -m machine set machine (e.g, amiga, i386, macppc) [$machine] 42 -s setsdir directory to find sets [$setd] 43 [setname ...] sets to build [$lists] 44 USAGE 45 exit 1 46 ;; 47 *) 48 break 49 ;; 50 esac 51 shift 52 done 53 if [ -n "$1" ]; then 54 lists="$@" 55 fi 56 57 # EXTRA SPECIAL (not done here): secr 58 59 for setname in $lists; do 60 cat $setd/lists/$setname/mi 61 if [ "$machine" != "$cpu" -a -f $setd/lists/$setname/ad.${arch} ]; then 62 cat $setd/lists/$setname/ad.${arch} 63 fi 64 if [ -f $setd/lists/$setname/md.${machine} ]; then 65 cat $setd/lists/$setname/md.${machine} 66 fi 67 68 # Split man/md_share into: this machine, other machine 69 if [ $setname = man ]; then 70 grep ${machine} $setd/lists/man/md_share 71 fi 72 if [ $setname = misc ]; then 73 grep -v ${machine} $setd/lists/man/md_share 74 fi 75 done | sort -u 76