makeflist revision 1.28
11.2Sgwr#!/bin/sh
21.2Sgwr#
31.28Sitojun# $NetBSD: makeflist,v 1.28 2001/01/04 11:15:32 itojun Exp $
41.2Sgwr#
51.8Slukem# Print out the files in some or all lists.
61.8Slukem# Usage: makeflist [-b] [-x] [-a arch] [-m machine] [-s setsdir] [setname ...]
71.2Sgwr#
81.2Sgwr
91.2Sgwr# set defaults
101.14Sitohy: ${MAKE=make}
111.14Sitohymachine=${MACHINE:-`printf 'xxx:\n\techo ${MACHINE}' | $MAKE -s -f-`}
121.14Sitohyarch=${MACHINE_ARCH:-`printf 'xxx:\n\techo ${MACHINE_ARCH}' | $MAKE -s -f-`}
131.2Sgwrsetd=`pwd`
141.8Slukemnlists="base comp etc games man misc text"
151.23Sthorpejxlists="xbase xcomp xcontrib xfont xserver xmisc"
161.8Slukemlists=$nlists
171.2Sgwr
181.2Sgwr# handle args
191.8Slukemwhile : ; do
201.2Sgwr	case $1 in
211.8Slukem	-b*)
221.8Slukem		lists="$xlists $nlists"
231.8Slukem		;;
241.8Slukem	-x*)
251.8Slukem		lists=$xlists
261.8Slukem		;;
271.8Slukem	-a*)
281.8Slukem		arch=$2; shift
291.8Slukem		;;
301.8Slukem	-m*)
311.8Slukem		machine=$2; shift
321.8Slukem		;;
331.8Slukem	-s*)
341.8Slukem		setd=$2; shift
351.8Slukem		;;
361.8Slukem	-*)
371.8Slukem		cat 1>&2 <<USAGE
381.8SlukemUsage: $0 [-b] [-x] [-a arch] [-m machine] [-s setsdir] [setname ...]
391.8Slukem	-b		make netbsd + x11 lists
401.8Slukem	-x		only make x11 lists
411.8Slukem	-a arch		set arch (e.g, m68k, mips, powerpc)	[$arch]
421.8Slukem	-m machine	set machine (e.g, amiga, i386, macppc)	[$machine]
431.8Slukem	-s setsdir	directory to find sets	[$setd]
441.8Slukem	[setname ...]	sets to build 	[$lists]
451.8SlukemUSAGE
461.8Slukem		exit 1
471.8Slukem		;;
481.8Slukem	*)
491.8Slukem		break
501.8Slukem		;;
511.2Sgwr	esac
521.2Sgwr	shift
531.2Sgwrdone
541.8Slukemif [ -n "$1" ]; then
551.8Slukem	lists="$@"
561.8Slukemfi
571.15Ssimonb
581.15Ssimonb# Convert mipse[lb] to mips after processing command line arguments.
591.28Sitojunarch=`echo $arch | sed s,^mipse.,mips, | sed s,^sh3e.,sh3,`
601.1Scgd
611.9Sjonathan# Compute toolchain  used on target cpu.
621.27Ssimonbif [ "$arch" = "mips" -o "$machine" = "alpha" -o "$arch" = "powerpc" -o "$arch" = "sparc" -o "$arch" = "sparc64" -o "$arch" = "i386" -o "$arch" = "arm26" -o "$machine" = "mvme68k" -o "$machine" = "hp300" ]; then
631.28Sitojun	shlib=elf
641.9Sjonathanelse
651.28Sitojun	if [ "$arch" = "sh3" ]; then
661.28Sitojun		shlib=
671.28Sitojun	else
681.28Sitojun		shlib=aout
691.28Sitojun	fi
701.9Sjonathanfi
711.1Scgd
721.8Slukemfor setname in $lists; do
731.20Sjwise	awk -- '{print $1}' $setd/lists/$setname/mi
741.8Slukem	if [ "$machine" != "$cpu" -a -f $setd/lists/$setname/ad.${arch} ]; then
751.20Sjwise		awk -- '{print $1}' $setd/lists/$setname/ad.${arch}
761.8Slukem	fi
771.8Slukem	if [ -f $setd/lists/$setname/md.${machine} ]; then
781.20Sjwise		awk -- '{print $1}' $setd/lists/$setname/md.${machine}
791.9Sjonathan	fi
801.9Sjonathan	if [ "$shlib" != "" ]; then
811.9Sjonathan		if [ -f $setd/lists/$setname/shl.mi ]; then
821.20Sjwise			awk -- '{print $1}' $setd/lists/$setname/shl.mi
831.9Sjonathan		fi
841.9Sjonathan		if [ -f $setd/lists/$setname/shl.${shlib} ]; then
851.20Sjwise			awk -- '{print $1}' $setd/lists/$setname/shl.${shlib}
861.9Sjonathan		fi
871.8Slukem	fi
881.16Ssimonbdone | egrep -v '^#' | sort -u
89