#!/bin/sh # # $NetBSD: makeflist,v 1.77 2013/01/14 20:29:26 christos Exp $ # # Print out the files in some or all lists. # Usage: makeflist [-bxlo] [-a arch] [-m machine] [-s setsdir] [setname ...] # rundir="$(dirname "$0")" # ${0%/*} isn't good enough when there's no "/" . "${rundir}/sets.subr" lists= usage() { cat 1>&2 <<USAGE Usage: ${0##*/} [-L base,x,ext] [-bxyo] [-a arch] [-m machine] [-s setsdir] [setname [...]] -L base,x,ext print specified lists -b print netbsd + x11 lists -x print make x11 lists -y print make extsrc lists -l just list the selected set names, not the contents -o only match obsolete files -a arch set arch (e.g, m68k, mipseb, mipsel, powerpc) [${MACHINE_ARCH}] -m machine set machine (e.g, amiga, i386, macppc) [${MACHINE}] -s setsdir directory to find sets [${setsdir}] [setname [...]] sets to build [${lists}] USAGE exit 1 } # handle args while getopts L:bxloa:m:s: ch; do case ${ch} in L) save_IFS="${IFS}" IFS=, for _list in ${OPTARG}; do case $_list in base) lists="${lists} ${nlists}" ;; x) lists="${lists} ${xlists}" ;; ext) lists="${lists} ${extlists}" ;; esac done IFS="${save_IFS}" ;; # backward compat b) lists="${nlists} ${xlists}" ;; x) lists="${xlists}" ;; y) lists="${extlists}" ;; l) listonly=1 ;; o) obsolete=1 ;; a) MACHINE_ARCH="${OPTARG}" MACHINE_CPU="$(arch_to_cpu "${OPTARG}")" ;; m) MACHINE="${OPTARG}" ;; s) setsdir="${OPTARG}" ;; *) usage ;; esac done shift $((${OPTIND} - 1)) if [ -n "$1" ]; then lists="$*" fi if [ -n "${listonly}" ]; then echo ${lists} | tr ' ' '\n' exit 0 fi list_set_files ${lists:-${nlists}} | ${AWK} '{print $1}' | ${SORT} -u |