listpkgs revision 1.5
1#!/bin/sh 2# 3# $NetBSD: listpkgs,v 1.5 2003/06/23 09:20:55 dyoung Exp $ 4# 5# List all packages in the given pkgset by parsing the list files. 6# 7 8# set defaults 9MAKE="${MAKE:-make} -j 1" 10machine=${MACHINE:-`printf 'xxx:\n\techo ${MACHINE}' | ${MAKE} -s -f-`} 11arch=${MACHINE_ARCH:-`printf 'xxx:\n\techo ${MACHINE_ARCH}' | ${MAKE} -s -f-`} 12setd=`dirname $0` 13prefix=/ 14 15. ./sets.subr 16 17usage() { 18exec 1>&2 19 20echo "Usage: $0 [-a arch] [-m machine] [-s setsdir] [-p prefix] setname" 21echo " -a arch set arch (e.g, m68k, mips, powerpc) [$arch]" 22echo " -m machine set machine (e.g, amiga, i386, macppc) [$machine]" 23echo " -s setsdir directory to find sets [$setd]" 24echo " setname set to list packages for" 25 26exit 1 27} 28 29# handle args 30while : ; do 31 case $1 in 32 -a*) 33 arch=$2; shift 34 ;; 35 -m*) 36 machine=$2; shift 37 ;; 38 -s*) 39 setd=$2; shift 40 ;; 41 -*) 42 usage 43 exit 1 44 ;; 45 *) 46 break 47 ;; 48 esac 49 shift 50done 51if [ -n "$1" ]; then 52 setname="$1" 53else 54 usage 55 exit 1 56fi 57 58# Convert mipse[lb] to mips after processing command line arguments. 59arch=`echo $arch | sed s,^mipse.,mips, | sed s,^sh3e.,sh3,` 60 61# Compute toolchain used on target cpu. 62if [ "$arch" = "mips" -o "$machine" = "alpha" -o "$arch" = "powerpc" -o "$arch" = "sparc" -o "$arch" = "sparc64" -o "$arch" = "i386" -o "$arch" = "arm" -o "$machine" = "mvme68k" -o "$machine" = "hp300" ]; then 63 shlib=elf 64else 65 if [ "$arch" = "sh3" ]; then 66 shlib= 67 else 68 shlib=aout 69 fi 70fi 71 72list_set_files $setname | awk -- '/^[^#]/ {print $2}' | sort -u 73