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