makeobsolete revision 1.21 1 1.1 bouyer #!/bin/sh
2 1.1 bouyer #
3 1.21 jmc # $NetBSD: makeobsolete,v 1.21 2003/12/19 22:25:54 jmc Exp $
4 1.1 bouyer #
5 1.1 bouyer # Print out the obsolete files for a set
6 1.1 bouyer # Usage: makeobsolete [-b] [-x] [-a arch] [-m machine] [-s setsdir] \
7 1.1 bouyer # [-t target] [setname ...]
8 1.1 bouyer #
9 1.1 bouyer
10 1.1 bouyer # set defaults
11 1.19 dyoung . $(dirname $0)/sets.defaults
12 1.1 bouyer setd=`pwd`
13 1.21 jmc nlists=$lists
14 1.10 tron xlists="xbase xcomp xcontrib xfont xserver xmisc"
15 1.1 bouyer target=./dist
16 1.1 bouyer
17 1.1 bouyer # handle args
18 1.1 bouyer while : ; do
19 1.1 bouyer case $1 in
20 1.1 bouyer -b*)
21 1.1 bouyer lists="$xlists $nlists"
22 1.1 bouyer ;;
23 1.1 bouyer -x*)
24 1.1 bouyer lists=$xlists;;
25 1.1 bouyer -a*)
26 1.19 dyoung machine_arch=$2; shift
27 1.1 bouyer ;;
28 1.1 bouyer -m*)
29 1.1 bouyer machine=$2; shift
30 1.1 bouyer ;;
31 1.1 bouyer -s*)
32 1.1 bouyer setd=$2; shift
33 1.1 bouyer ;;
34 1.1 bouyer -t*)
35 1.1 bouyer target=$2;shift
36 1.1 bouyer ;;
37 1.1 bouyer -*)
38 1.1 bouyer cat 1>&2 <<USAGE
39 1.1 bouyer Usage: $0 [-a arch] [-m machine] [-s setsdir] [setname ...]
40 1.1 bouyer -b make netbsd + x11 lists
41 1.1 bouyer -x only make x11 lists
42 1.19 dyoung -a arch set arch (e.g, m68k, mips, powerpc) [$machine_arch]
43 1.1 bouyer -m machine set machine (e.g, amiga, i386, macppc) [$machine]
44 1.1 bouyer -s setsdir directory to find sets [$setd]
45 1.1 bouyer -t target target directory [$target]
46 1.1 bouyer [setname ...] sets to build
47 1.1 bouyer USAGE
48 1.1 bouyer exit 1
49 1.1 bouyer ;;
50 1.1 bouyer *)
51 1.1 bouyer break
52 1.1 bouyer ;;
53 1.1 bouyer esac
54 1.1 bouyer shift
55 1.1 bouyer done
56 1.1 bouyer if [ -n "$1" ]; then
57 1.1 bouyer lists="$*"
58 1.1 bouyer fi
59 1.1 bouyer
60 1.1 bouyer # Convert mipse[lb] to mips after processing command line arguments.
61 1.19 dyoung machine_arch=`echo $machine_arch | sed s,^mipse.,mips, | sed s,^sh3e.,sh3e,`
62 1.1 bouyer
63 1.1 bouyer if [ ! -d $target ] ; then
64 1.14 lukem echo "target directory [$target] doesn't exist"
65 1.1 bouyer exit 1
66 1.1 bouyer fi
67 1.10 tron
68 1.10 tron # Automatically add XFree86 version specific sets
69 1.10 tron for list in $lists
70 1.10 tron do
71 1.10 tron if [ -z "$_lists" ]
72 1.10 tron then
73 1.10 tron _lists=$list
74 1.10 tron else
75 1.10 tron _lists="$_lists $list"
76 1.10 tron fi
77 1.10 tron if [ -d "$setd/lists/$list${x11_version}" ]
78 1.10 tron then
79 1.10 tron _lists="$_lists $list${x11_version}"
80 1.10 tron fi
81 1.10 tron done
82 1.10 tron lists=$_lists
83 1.10 tron unset _lists
84 1.1 bouyer
85 1.1 bouyer for setname in $lists; do
86 1.17 lukem file=$target/${setname}
87 1.1 bouyer (
88 1.1 bouyer if [ -f $setd/lists/$setname/obsolete.mi ]; then
89 1.2 jwise awk -- '{print $1}' $setd/lists/$setname/obsolete.mi
90 1.1 bouyer fi
91 1.1 bouyer if [ "$machine" != "$cpu" -a \
92 1.19 dyoung -f $setd/lists/$setname/obsolete.${machine_arch} ]; then
93 1.19 dyoung awk -- '{print $1}' $setd/lists/$setname/obsolete.${machine_arch}
94 1.1 bouyer fi
95 1.1 bouyer if [ -f $setd/lists/$setname/obsolete.${machine} ]; then
96 1.2 jwise awk -- '{print $1}' $setd/lists/$setname/obsolete.${machine}
97 1.18 tron fi
98 1.20 matt if [ "$use_tools_toolchain" != yes -a \
99 1.20 matt -f $setd/lists/$setname/obsolete.gcc ]; then
100 1.18 tron awk -- '{print $1}' $setd/lists/$setname/obsolete.gcc
101 1.13 lukem fi
102 1.13 lukem ) | egrep -v '^#' | sort -ru > $file
103 1.1 bouyer if [ ! -s $file ] ; then
104 1.1 bouyer rm $file
105 1.1 bouyer fi
106 1.1 bouyer
107 1.13 lukem done
108