minix/distrib/sets/makeflist
Lionel Sambuc 84d9c625bf Synchronize on NetBSD-CVS (2013/12/1 12:00:00 UTC)
- Fix for possible unset uid/gid in toproto
 - Fix for default mtree style
 - Update libelf
 - Importing libexecinfo
 - Resynchronize GCC, mpc, gmp, mpfr
 - build.sh: Replace params with show-params.
     This has been done as the make target has been renamed in the same
     way, while a new target named params has been added. This new
     target generates a file containing all the parameters, instead of
     printing it on the console.
 - Update test48 with new etc/services (Fix by Ben Gras <ben@minix3.org)
     get getservbyport() out of the inner loop

Change-Id: Ie6ad5226fa2621ff9f0dee8782ea48f9443d2091
2014-07-28 17:05:06 +02:00

88 lines
1.7 KiB
Bash
Executable file

#!/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