Home | History | Annotate | Line # | Download | only in sets
makeplist 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] [-p prefix] setname pkgname
      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 pkgname"
     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 "	-p prefix	prefix for created plist		[$plist]"
     22 echo "	setname pkgname	set and package to build plist for"
     23 
     24 exit 1
     25 }
     26 
     27 # handle args
     28 while : ; do
     29 	case $1 in
     30 	-a*)
     31 		arch=$2; shift
     32 		;;
     33 	-m*)
     34 		machine=$2; shift
     35 		;;
     36 	-s*)
     37 		setd=$2; shift
     38 		;;
     39 	-p*)
     40 		prefix=$2; shift
     41 		;;
     42 	-*)
     43 		usage
     44 		exit 1
     45 		;;
     46 	*)
     47 		break
     48 		;;
     49 	esac
     50 	shift
     51 done
     52 if [ -n "$1" ]; then
     53 	setname="$1"
     54 else
     55 	usage
     56 	exit 1
     57 fi
     58 if [ -n "$2" ]; then
     59 	pkgname=$2
     60 else
     61 	usage
     62 	exit 1
     63 fi
     64 
     65 # Convert mipse[lb] to mips after processing command line arguments.
     66 arch=`echo $arch | sed s,^mipse.,mips, | sed s,^sh3e.,sh3,`
     67 
     68 # Compute toolchain  used on target cpu.
     69 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
     70 	shlib=elf
     71 else
     72 	if [ "$arch" = "sh3" ]; then
     73 		shlib=
     74 	else
     75 		shlib=aout
     76 	fi
     77 fi
     78 
     79 echo "@cwd $prefix"
     80 (
     81 	cat $setd/lists/$setname/mi
     82 	if [ "$machine" != "$cpu" -a -f $setd/lists/$setname/ad.${arch} ]; then
     83 		cat $setd/lists/$setname/ad.${arch}
     84 	fi
     85 	if [ -f $setd/lists/$setname/md.${machine} ]; then
     86 		cat $setd/lists/$setname/md.${machine}
     87 	fi
     88 	if [ "$shlib" != "" ]; then
     89 		if [ -f $setd/lists/$setname/shl.mi ]; then
     90 			cat $setd/lists/$setname/shl.mi
     91 		fi
     92 		if [ -f $setd/lists/$setname/shl.${shlib} ]; then
     93 			cat $setd/lists/$setname/shl.${shlib}
     94 		fi
     95 	fi
     96 )| egrep -v '^#' | egrep $pkgname\$ | awk -- '{print $1}' | sort -u
     97