1#! /bin/sh
2
3LANG=C; export LANG
4LC_ALL=C; export LC_ALL
5LC_COLLATE=C; export LC_COLLATE
6
7if [ $# -lt 3 ]
8then
9  echo "Usage: $0 awk [-h headerdefine] outputheader proto_obj"
10  exit 1
11fi
12
13awk="$1"
14shift
15
16if [ x"$1" = x-h ]
17then
18  headeropt="-v headername=$2"
19  shift; shift;
20else
21  headeropt=""
22fi
23
24header="$1"
25shift
26headertmp="$header.$$.tmp~"
27
28proto_src="`echo $@ | tr ' ' '\n' | sed -e 's/\.o/\.c/g' | sort | uniq | egrep -v 'ubiqx/|wrapped|modules/getdate'`"
29
30echo creating $header
31
32mkdir -p `dirname $header`
33
34${awk} $headeropt \
35  -f script/mkproto.awk $proto_src > $headertmp
36
37if cmp -s $header $headertmp 2>/dev/null
38then
39  echo "$header unchanged"
40  rm $headertmp
41else
42  mv $headertmp $header
43fi
44