makeflist revision 1.73
11.2Sgwr#!/bin/sh
21.2Sgwr#
31.73Sapb# $NetBSD: makeflist,v 1.73 2006/01/03 18:31:09 apb Exp $
41.2Sgwr#
51.8Slukem# Print out the files in some or all lists.
61.70Slukem# Usage: makeflist [-bxlo] [-a arch] [-m machine] [-s setsdir] [setname ...]
71.2Sgwr#
81.2Sgwr
91.73Sapbrundir="$(dirname "$0")" # ${0%/*} isn't good enough when there's no "/"
101.73Sapb. "${rundir}/sets.subr"
111.73Sapblists="${nlists}"
121.65Sdyoung
131.67Slukemusage()
141.67Slukem{
151.67Slukem	cat 1>&2 <<USAGE
161.70SlukemUsage: ${0##*/} [-bxlo] [-a arch] [-m machine] [-s setsdir] [setname [...]]
171.67Slukem	-b		print netbsd + x11 lists
181.67Slukem	-x		print make x11 lists
191.70Slukem	-l		just list the selected set names, not the contents
201.67Slukem	-o		only match obsolete files
211.73Sapb	-a arch		set arch (e.g, m68k, mipseb, mipsel, powerpc) [${MACHINE_ARCH}]
221.73Sapb	-m machine	set machine (e.g, amiga, i386, macppc) [${MACHINE}]
231.73Sapb	-s setsdir	directory to find sets [${setsdir}]
241.73Sapb	[setname [...]]	sets to build [${lists}]
251.67SlukemUSAGE
261.67Slukem	exit 1
271.67Slukem}
281.61Sdyoung
291.2Sgwr# handle args
301.70Slukemwhile getopts bxloa:m:s: ch; do
311.67Slukem	case ${ch} in
321.67Slukem	b)
331.73Sapb		lists="${nlists} ${xlists}"
341.8Slukem		;;
351.67Slukem	x)
361.73Sapb		lists="${xlists}"
371.67Slukem		;;
381.70Slukem	l)
391.70Slukem		listonly=1
401.70Slukem		;;
411.67Slukem	o)
421.67Slukem		obsolete=1
431.67Slukem		;;
441.67Slukem	a)
451.73Sapb		MACHINE_ARCH="${OPTARG}"
461.73Sapb		MACHINE_CPU="$(arch_to_cpu "${OPTARG}")"
471.8Slukem		;;
481.67Slukem	m)
491.73Sapb		MACHINE="${OPTARG}"
501.67Slukem		;;
511.67Slukem	s)
521.73Sapb		setsdir="${OPTARG}"
531.8Slukem		;;
541.8Slukem	*)
551.67Slukem		usage
561.8Slukem		;;
571.2Sgwr	esac
581.2Sgwrdone
591.67Slukemshift $((${OPTIND} - 1))
601.8Slukemif [ -n "$1" ]; then
611.8Slukem	lists="$@"
621.8Slukemfi
631.15Ssimonb
641.73Sapbif [ -n "${listonly}" ]; then
651.70Slukem	echo ${lists} | tr ' ' '\n'
661.70Slukem	exit 0
671.70Slukemfi
681.70Slukem
691.73Sapblist_set_files ${lists} | ${AWK} '{print $1}' | ${SORT} -u
70