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