Added all of the MH sources, including RCS files, in
[mmh] / docs / historical / mh-6.8.5 / config / version.sh
1 : run this script through /bin/sh
2 : '@(#)$Id: version.sh,v 1.9 1992/01/30 22:20:41 jromine Exp jromine $'
3 case $# in
4   0) set "6.6";;
5   2) flag="$1"; shift;;
6 esac
7
8 OFS="$IFS" IFS=:
9
10 for A in rprompt hostname uname who
11 do
12     for D in $PATH
13     do
14         if [ ! -f $D/$A ]; then
15             continue
16         fi
17         case $A in
18             rprompt)    LOCAL=`$A %h`
19                         ;;
20             hostname)   LOCAL=`$A`
21                         ;;
22             uname)      LOCAL=`$A -n`
23                         ;;
24             who)        LOCAL=`$A am i | sed -e 's%^\(.*\)!.*$%\1%'`
25                         ;;
26         esac
27         break
28     done
29     if [ "x$LOCAL" != x ]; then
30         break
31     fi
32 done
33
34 IFS=" "
35 Patch="../Patchlevel"
36
37 if [ ! -r version  ]; then echo "0" > version; fi
38 if [ ! -r ${Patch} ]; then Patch="" ; fi
39
40 rm -f version.c
41
42 cat version ${Patch} |\
43 awk -F. '
44 BEGIN   { split ("'"${1}"'", ver, ".");\
45           major = ver[1]; minor = ver[2]; patch = ver[3]} \
46 NR == 1 { local = $(NF) } ;\
47 NR == 2 { patch = $(NF) } ;\
48 END     { local++;\
49           if (patch > 0) {\
50           printf "char *version = \"@(#)MH %s.%s.%s #%d[UCI]", \
51                 major, minor, patch, local > "version.c"; \
52           printf ".ds MH %s.%s.%s #%d[UCI]\n", \
53                 major, minor, patch, local > "../doc/version.rf"; \
54           printf "MH %s.%s.%s #%d[UCI]\n", major, minor, patch, local ;\
55         } else {\
56           printf "char *version = \"@(#)MH %s.%s #%d[UCI] ", \
57                 major, minor, local > "version.c"; \
58           printf ".ds MH %s.%s #%d[UCI]\n", \
59                 major, minor, local > "../doc/version.rf"; \
60           printf "MH %s.%s #%d[UCI]\n", major, minor, local ;\
61         }\
62           printf "%s.%s.%s.%d\n", major, minor, patch, local > "_version";\
63 }' && mv _version version
64 case x${flag} in
65     x) echo ' ('$LOCAL') of '`date`'";' >> version.c ;;
66   x-n) echo '";' >> version.c ;;
67 esac