equal
deleted
inserted
replaced
1 #!/bin/sh |
|
2 # |
|
3 # USAGE: get-version.sh path/to/expat.h |
|
4 # |
|
5 # This script will print Expat's version number on stdout. For example: |
|
6 # |
|
7 # $ ./conftools/get-version.sh ./lib/expat.h |
|
8 # 1.95.3 |
|
9 # $ |
|
10 # |
|
11 |
|
12 if test $# = 0; then |
|
13 echo "ERROR: pathname for expat.h was not provided." |
|
14 echo "" |
|
15 echo "USAGE: $0 path/to/expat.h" |
|
16 exit 1 |
|
17 fi |
|
18 if test $# != 1; then |
|
19 echo "ERROR: too many arguments were provided." |
|
20 echo "" |
|
21 echo "USAGE: $0 path/to/expat.h" |
|
22 exit 1 |
|
23 fi |
|
24 |
|
25 hdr="$1" |
|
26 if test ! -r "$hdr"; then |
|
27 echo "ERROR: '$hdr' does not exist, or is not readable." |
|
28 exit 1 |
|
29 fi |
|
30 |
|
31 MAJOR_VERSION="`sed -n -e '/MAJOR_VERSION/s/[^0-9]*//gp' $hdr`" |
|
32 MINOR_VERSION="`sed -n -e '/MINOR_VERSION/s/[^0-9]*//gp' $hdr`" |
|
33 MICRO_VERSION="`sed -n -e '/MICRO_VERSION/s/[^0-9]*//gp' $hdr`" |
|
34 |
|
35 # Determine how to tell echo not to print the trailing \n. This is |
|
36 # similar to Autoconf's @ECHO_C@ and @ECHO_N@; however, we don't |
|
37 # generate this file via autoconf (in fact, get-version.sh is used |
|
38 # to *create* ./configure), so we just do something similar inline. |
|
39 case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in |
|
40 *c*,-n*) ECHO_N= ECHO_C=' |
|
41 ' ;; |
|
42 *c*,* ) ECHO_N=-n ECHO_C= ;; |
|
43 *) ECHO_N= ECHO_C='\c' ;; |
|
44 esac |
|
45 |
|
46 echo $ECHO_N "$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$ECHO_C" |
|