Home | History | Annotate | Line # | Download | only in sets
makeflist revision 1.38
      1   1.2       gwr #!/bin/sh
      2   1.2       gwr #
      3  1.38        tv # $NetBSD: makeflist,v 1.38 2001/11/19 20:43:33 tv 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.38        tv tc=${USE_NEW_TOOLCHAIN:-`printf '.include <bsd.own.mk>\nxxx:\n\techo ${USE_NEW_TOOLCHAIN:Dyes}' | ${MAKE} -s -f-`}
     14   1.2       gwr setd=`pwd`
     15   1.8     lukem nlists="base comp etc games man misc text"
     16  1.23   thorpej xlists="xbase xcomp xcontrib xfont xserver xmisc"
     17   1.8     lukem lists=$nlists
     18   1.2       gwr 
     19   1.2       gwr # handle args
     20   1.8     lukem while : ; do
     21   1.2       gwr 	case $1 in
     22   1.8     lukem 	-b*)
     23   1.8     lukem 		lists="$xlists $nlists"
     24   1.8     lukem 		;;
     25   1.8     lukem 	-x*)
     26   1.8     lukem 		lists=$xlists
     27   1.8     lukem 		;;
     28   1.8     lukem 	-a*)
     29   1.8     lukem 		arch=$2; shift
     30   1.8     lukem 		;;
     31   1.8     lukem 	-m*)
     32   1.8     lukem 		machine=$2; shift
     33   1.8     lukem 		;;
     34   1.8     lukem 	-s*)
     35   1.8     lukem 		setd=$2; shift
     36   1.8     lukem 		;;
     37   1.8     lukem 	-*)
     38   1.8     lukem 		cat 1>&2 <<USAGE
     39   1.8     lukem Usage: $0 [-b] [-x] [-a arch] [-m machine] [-s setsdir] [setname ...]
     40   1.8     lukem 	-b		make netbsd + x11 lists
     41   1.8     lukem 	-x		only make x11 lists
     42   1.8     lukem 	-a arch		set arch (e.g, m68k, mips, powerpc)	[$arch]
     43   1.8     lukem 	-m machine	set machine (e.g, amiga, i386, macppc)	[$machine]
     44   1.8     lukem 	-s setsdir	directory to find sets	[$setd]
     45   1.8     lukem 	[setname ...]	sets to build 	[$lists]
     46   1.8     lukem USAGE
     47   1.8     lukem 		exit 1
     48   1.8     lukem 		;;
     49   1.8     lukem 	*)
     50   1.8     lukem 		break
     51   1.8     lukem 		;;
     52   1.2       gwr 	esac
     53   1.2       gwr 	shift
     54   1.2       gwr done
     55   1.8     lukem if [ -n "$1" ]; then
     56   1.8     lukem 	lists="$@"
     57   1.8     lukem fi
     58  1.15    simonb 
     59  1.15    simonb # Convert mipse[lb] to mips after processing command line arguments.
     60  1.28    itojun arch=`echo $arch | sed s,^mipse.,mips, | sed s,^sh3e.,sh3,`
     61   1.1       cgd 
     62   1.9  jonathan # Compute toolchain  used on target cpu.
     63  1.35    thomas if [ "$arch" = "mips" -o "$machine" = "alpha" -o "$arch" = "powerpc" -o "$arch" = "sparc" -o "$arch" = "sparc64" -o "$arch" = "i386" -o "$arch" = "arm26" -o "$machine" = "hp300" -o "$machine" = "mvme68k" -o "$machine" = "news68k" -o "$machine" = "sun3" -o "$machine" = "next68k" -o "$machine" = "cesfic" -o "$machine" = "atari" ]; then
     64  1.28    itojun 	shlib=elf
     65   1.9  jonathan else
     66  1.28    itojun 	if [ "$arch" = "sh3" ]; then
     67  1.28    itojun 		shlib=
     68  1.28    itojun 	else
     69  1.28    itojun 		shlib=aout
     70  1.28    itojun 	fi
     71   1.9  jonathan fi
     72   1.1       cgd 
     73  1.33       mrg # Turn off lintlibs for some ports.
     74  1.33       mrg lintlibs=
     75  1.33       mrg if [ "$machine" = "sparc64" -o "$arch" = "sh3" -o "$arch" = "m68000" ]; then
     76  1.33       mrg 	lintlibs=no
     77  1.33       mrg fi
     78  1.33       mrg 
     79   1.8     lukem for setname in $lists; do
     80  1.29     jwise 	cat $setd/lists/$setname/mi
     81   1.8     lukem 	if [ "$machine" != "$cpu" -a -f $setd/lists/$setname/ad.${arch} ]; then
     82  1.29     jwise 		cat $setd/lists/$setname/ad.${arch}
     83   1.8     lukem 	fi
     84   1.8     lukem 	if [ -f $setd/lists/$setname/md.${machine} ]; then
     85  1.29     jwise 		cat $setd/lists/$setname/md.${machine}
     86   1.9  jonathan 	fi
     87   1.9  jonathan 	if [ "$shlib" != "" ]; then
     88   1.9  jonathan 		if [ -f $setd/lists/$setname/shl.mi ]; then
     89  1.29     jwise 			cat $setd/lists/$setname/shl.mi
     90   1.9  jonathan 		fi
     91   1.9  jonathan 		if [ -f $setd/lists/$setname/shl.${shlib} ]; then
     92  1.29     jwise 			cat $setd/lists/$setname/shl.${shlib}
     93  1.33       mrg 		fi
     94  1.33       mrg 	fi
     95  1.33       mrg 	if [ "$lintlibs" != no ]; then
     96  1.33       mrg 		if [ -f $setd/lists/$setname/lint.mi ]; then
     97  1.33       mrg 			cat $setd/lists/$setname/lint.mi
     98  1.36       jmc 		fi
     99  1.36       jmc 	fi
    100  1.38        tv 	if [ "$tc" = "yes" ]; then
    101  1.36       jmc 		if [ -f $setd/lists/$setname/tc.mi ]; then
    102  1.36       jmc 			cat $setd/lists/$setname/tc.mi
    103  1.36       jmc 		fi
    104  1.36       jmc 	else
    105  1.36       jmc 		if [ -f $setd/lists/$setname/tc.old ]; then
    106  1.36       jmc 			cat $setd/lists/$setname/tc.old
    107   1.9  jonathan 		fi
    108   1.8     lukem 	fi
    109  1.29     jwise done | egrep -v '^#' | awk -- '{print $1}' | sort -u
    110