Home | History | Annotate | Line # | Download | only in sets
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
      9 MAKE="${MAKE:-make} -j 1"
     10 machine=${MACHINE:-`printf 'xxx:\n\techo ${MACHINE}' | ${MAKE} -s -f-`}
     11 arch=${MACHINE_ARCH:-`printf 'xxx:\n\techo ${MACHINE_ARCH}' | ${MAKE} -s -f-`}
     12 setd=`dirname $0`
     13 prefix=/
     14 
     15 . ./sets.subr
     16 
     17 usage() {
     18 exec 1>&2
     19 
     20 echo "Usage: $0 [-a arch] [-m machine] [-s setsdir] [-p prefix] setname"
     21 echo "	-a arch		set arch (e.g, m68k, mips, powerpc)	[$arch]"
     22 echo "	-m machine	set machine (e.g, amiga, i386, macppc)	[$machine]"
     23 echo "	-s setsdir	directory to find sets			[$setd]"
     24 echo "	setname set to list packages for"
     25 
     26 exit 1
     27 }
     28 
     29 # handle args
     30 while : ; 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
     50 done
     51 if [ -n "$1" ]; then
     52 	setname="$1"
     53 else
     54 	usage
     55 	exit 1
     56 fi
     57 
     58 # Convert mipse[lb] to mips after processing command line arguments.
     59 arch=`echo $arch | sed s,^mipse.,mips, | sed s,^sh3e.,sh3,`
     60 
     61 # Compute toolchain  used on target cpu.
     62 if [ "$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
     64 else
     65 	if [ "$arch" = "sh3" ]; then
     66 		shlib=
     67 	else
     68 		shlib=aout
     69 	fi
     70 fi
     71 
     72 list_set_files $setname | awk -- '/^[^#]/ {print $2}' | sort -u
     73