Home | History | Annotate | Line # | Download | only in sets
listpkgs revision 1.1
      1 #!/bin/sh
      2 #
      3 # Print out the files in some or all lists.
      4 # Usage: makeflist [-a arch] [-m machine] [-s setsdir] setname
      5 #
      6 
      7 # set defaults
      8 : ${MAKE=make}
      9 machine=${MACHINE:-`printf 'xxx:\n\techo ${MACHINE}' | $MAKE -s -f-`}
     10 arch=${MACHINE_ARCH:-`printf 'xxx:\n\techo ${MACHINE_ARCH}' | $MAKE -s -f-`}
     11 setd=`dirname $0`
     12 prefix=/
     13 
     14 usage() {
     15 exec 1>&2
     16 
     17 echo "Usage: $0 [-a arch] [-m machine] [-s setsdir] [-p prefix] setname"
     18 echo "	-a arch		set arch (e.g, m68k, mips, powerpc)	[$arch]"
     19 echo "	-m machine	set machine (e.g, amiga, i386, macppc)	[$machine]"
     20 echo "	-s setsdir	directory to find sets			[$setd]"
     21 echo "	setname set to list packages for"
     22 
     23 exit 1
     24 }
     25 
     26 # handle args
     27 while : ; do
     28 	case $1 in
     29 	-a*)
     30 		arch=$2; shift
     31 		;;
     32 	-m*)
     33 		machine=$2; shift
     34 		;;
     35 	-s*)
     36 		setd=$2; shift
     37 		;;
     38 	-*)
     39 		usage
     40 		exit 1
     41 		;;
     42 	*)
     43 		break
     44 		;;
     45 	esac
     46 	shift
     47 done
     48 if [ -n "$1" ]; then
     49 	setname="$1"
     50 else
     51 	usage
     52 	exit 1
     53 fi
     54 
     55 # Convert mipse[lb] to mips after processing command line arguments.
     56 arch=`echo $arch | sed s,^mipse.,mips, | sed s,^sh3e.,sh3,`
     57 
     58 # Compute toolchain  used on target cpu.
     59 if [ "$arch" = "mips" -o "$machine" = "alpha" -o "$arch" = "powerpc" -o "$arch" = "sparc" -o "$arch" = "sparc64" -o "$arch" = "i386" -o "$arch" = "arm26" -o "$machine" = "mvme68k" -o "$machine" = "hp300" ]; then
     60 	shlib=elf
     61 else
     62 	if [ "$arch" = "sh3" ]; then
     63 		shlib=
     64 	else
     65 		shlib=aout
     66 	fi
     67 fi
     68 
     69 (
     70 	cat $setd/lists/$setname/mi
     71 	if [ "$machine" != "$cpu" -a -f $setd/lists/$setname/ad.${arch} ]; then
     72 		cat $setd/lists/$setname/ad.${arch}
     73 	fi
     74 	if [ -f $setd/lists/$setname/md.${machine} ]; then
     75 		cat $setd/lists/$setname/md.${machine}
     76 	fi
     77 	if [ "$shlib" != "" ]; then
     78 		if [ -f $setd/lists/$setname/shl.mi ]; then
     79 			cat $setd/lists/$setname/shl.mi
     80 		fi
     81 		if [ -f $setd/lists/$setname/shl.${shlib} ]; then
     82 			cat $setd/lists/$setname/shl.${shlib}
     83 		fi
     84 	fi
     85 )| egrep -v '^#' | awk -- '{print $2}' | sort -u
     86