1#!/bin/sh 2# 3# $NetBSD: listpkgs,v 1.12 2006/01/04 13:35:55 apb Exp $ 4# 5# List all packages in the given pkgset by parsing the list files. 6# 7 8rundir="$(dirname "$0")" # ${0%/*} isn't good enough when there's no "/" 9. "${rundir}/sets.subr" 10 11prefix=/ 12 13usage() 14{ 15 cat 1>&2 <<USAGE 16Usage: ${0##*/} [-a arch] [-m machine] [-s setsdir] [-p prefix] setname 17 -a arch set arch (e.g, m68k, mips, powerpc) [${MACHINE_ARCH}] 18 -m machine set machine (e.g, amiga, i386, macppc) [${MACHINE}] 19 -s setsdir directory to find sets [${setsdir}] 20 setname set to list packages for 21USAGE 22 exit 1 23} 24 25# handle args 26while getopts a:m:s: ch; do 27 case ${ch} in 28 a) 29 MACHINE_ARCH="${OPTARG}" 30 MACHINE_CPU="$(arch_to_cpu "${OPTARG}")" 31 ;; 32 m) 33 MACHINE="${OPTARG}" 34 ;; 35 s) 36 setsdir="${OPTARG}" 37 ;; 38 *) 39 usage 40 ;; 41 esac 42done 43shift $((${OPTIND} - 1)) 44if [ $# -ne 1 ]; then 45 usage 46fi 47setname="$1" 48 49list_set_files "${setname}" | ${AWK} '{print $2}' | ${SORT} -u 50