Home | History | Annotate | Line # | Download | only in sets
makeflist revision 1.20
      1   1.2       gwr #!/bin/sh
      2   1.2       gwr #
      3  1.20     jwise # $NetBSD: makeflist,v 1.20 2000/01/23 20:31:17 jwise Exp $
      4   1.2       gwr #
      5   1.8     lukem # Print out the files in some or all lists.
      6   1.8     lukem # Usage: makeflist [-b] [-x] [-a arch] [-m machine] [-s setsdir] [setname ...]
      7   1.2       gwr #
      8   1.2       gwr 
      9   1.2       gwr # set defaults
     10  1.14     itohy : ${MAKE=make}
     11  1.14     itohy machine=${MACHINE:-`printf 'xxx:\n\techo ${MACHINE}' | $MAKE -s -f-`}
     12  1.14     itohy arch=${MACHINE_ARCH:-`printf 'xxx:\n\techo ${MACHINE_ARCH}' | $MAKE -s -f-`}
     13   1.2       gwr setd=`pwd`
     14   1.8     lukem nlists="base comp etc games man misc text"
     15   1.4     veego xlists="xbase xcomp xcontrib xfont xserver"
     16   1.8     lukem lists=$nlists
     17   1.2       gwr 
     18   1.2       gwr # handle args
     19   1.8     lukem while : ; do
     20   1.2       gwr 	case $1 in
     21  1.10     perry 	-d*)
     22  1.10     perry 		nlists="$nlists secr"
     23  1.10     perry 		lists=$nlists
     24  1.10     perry 		;;
     25  1.19       mrg 	-i*)
     26  1.19       mrg 		nlists="$nlists cryptint"
     27  1.19       mrg 		lists=$nlists
     28  1.19       mrg 		;;
     29   1.8     lukem 	-b*)
     30   1.8     lukem 		lists="$xlists $nlists"
     31   1.8     lukem 		;;
     32   1.8     lukem 	-x*)
     33   1.8     lukem 		lists=$xlists
     34   1.8     lukem 		;;
     35   1.8     lukem 	-a*)
     36   1.8     lukem 		arch=$2; shift
     37   1.8     lukem 		;;
     38   1.8     lukem 	-m*)
     39   1.8     lukem 		machine=$2; shift
     40   1.8     lukem 		;;
     41   1.8     lukem 	-s*)
     42   1.8     lukem 		setd=$2; shift
     43   1.8     lukem 		;;
     44   1.8     lukem 	-*)
     45   1.8     lukem 		cat 1>&2 <<USAGE
     46   1.8     lukem Usage: $0 [-b] [-x] [-a arch] [-m machine] [-s setsdir] [setname ...]
     47   1.8     lukem 	-b		make netbsd + x11 lists
     48  1.10     perry 	-d		do domestic ("secr") sets
     49  1.19       mrg 	-i		do international crypto ("cryptint") sets
     50   1.8     lukem 	-x		only make x11 lists
     51   1.8     lukem 	-a arch		set arch (e.g, m68k, mips, powerpc)	[$arch]
     52   1.8     lukem 	-m machine	set machine (e.g, amiga, i386, macppc)	[$machine]
     53   1.8     lukem 	-s setsdir	directory to find sets	[$setd]
     54   1.8     lukem 	[setname ...]	sets to build 	[$lists]
     55   1.8     lukem USAGE
     56   1.8     lukem 		exit 1
     57   1.8     lukem 		;;
     58   1.8     lukem 	*)
     59   1.8     lukem 		break
     60   1.8     lukem 		;;
     61   1.2       gwr 	esac
     62   1.2       gwr 	shift
     63   1.2       gwr done
     64   1.8     lukem if [ -n "$1" ]; then
     65   1.8     lukem 	lists="$@"
     66   1.8     lukem fi
     67  1.15    simonb 
     68  1.15    simonb # Convert mipse[lb] to mips after processing command line arguments.
     69  1.15    simonb arch=`echo $arch | sed s,^mipse.,mips,`
     70   1.1       cgd 
     71   1.9  jonathan # Compute toolchain  used on target cpu.
     72  1.18      fvdl if [ "$arch" = "mips" -o "$machine" = "alpha" -o "$arch" = "powerpc" -o "$arch" = "sparc" -o "$arch" = "i386" ]; then
     73   1.9  jonathan         shlib=elf
     74   1.9  jonathan else
     75   1.9  jonathan         shlib=aout
     76   1.9  jonathan fi
     77   1.1       cgd 
     78   1.8     lukem for setname in $lists; do
     79  1.20     jwise 	awk -- '{print $1}' $setd/lists/$setname/mi
     80   1.8     lukem 	if [ "$machine" != "$cpu" -a -f $setd/lists/$setname/ad.${arch} ]; then
     81  1.20     jwise 		awk -- '{print $1}' $setd/lists/$setname/ad.${arch}
     82   1.8     lukem 	fi
     83   1.8     lukem 	if [ -f $setd/lists/$setname/md.${machine} ]; then
     84  1.20     jwise 		awk -- '{print $1}' $setd/lists/$setname/md.${machine}
     85   1.9  jonathan 	fi
     86   1.9  jonathan 	if [ "$shlib" != "" ]; then
     87   1.9  jonathan 		if [ -f $setd/lists/$setname/shl.mi ]; then
     88  1.20     jwise 			awk -- '{print $1}' $setd/lists/$setname/shl.mi
     89   1.9  jonathan 		fi
     90   1.9  jonathan 		if [ -f $setd/lists/$setname/shl.${shlib} ]; then
     91  1.20     jwise 			awk -- '{print $1}' $setd/lists/$setname/shl.${shlib}
     92   1.9  jonathan 		fi
     93   1.8     lukem 	fi
     94   1.8     lukem 
     95   1.8     lukem 	# Split man/md_share into: this machine, other machine
     96   1.2       gwr 	if [ $setname = man ]; then
     97   1.8     lukem 		grep ${machine} $setd/lists/man/md_share
     98   1.2       gwr 	fi
     99   1.2       gwr 	if [ $setname = misc ]; then
    100   1.8     lukem 		grep -v ${machine} $setd/lists/man/md_share
    101   1.2       gwr 	fi
    102  1.19       mrg 
    103  1.16    simonb done | egrep -v '^#' | sort -u
    104