hi all... Joe Schaefer wrote: > We've been using the build/get-version.sh script in > httpd-apreq-2. The following patch corrects the > libtool version string miscalculation (we let libtool > generate the shared library version for libapreq2, so > it's pretty well-tested). > > The patch also includes a patch to correctly handle > multi-digit numbers (the original regexp will drop > all but the final digit due to the greediness of the > opening .* pattern.
did this slip through the cracks? I'm not good at reviewing this kind of build thing, but it would help the httpd-apreq project out a bit if someone who is could give it a glance and provide some feedback. --Geoff > > % diff -u apr/build/get-version.sh httpd-apreq-2/build/get-version.sh > --- apr/build/get-version.sh 2002-09-10 09:11:20.000000000 +0000 > +++ httpd-apreq-2/build/get-version.sh 2004-06-21 16:50:43.816189354 +0000 > @@ -13,24 +13,24 @@ > > if test $# != 3; then > echo "USAGE: $0 CMD INCLUDEDIR PREFIX" > - echo " where CMD is one of: all, major" > + echo " where CMD is one of: all, major, libtool" > exit 1 > fi > > -major_sed="/#define.*$3_MAJOR_VERSION/s/^.*\([0-9][0-9]*\).*$/\1/p" > -minor_sed="/#define.*$3_MINOR_VERSION/s/^.*\([0-9][0-9]*\).*$/\1/p" > -patch_sed="/#define.*$3_PATCH_VERSION/s/^.*\([0-9][0-9]*\).*$/\1/p" > +major_sed="/#define.*$3_MAJOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p" > +minor_sed="/#define.*$3_MINOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p" > +patch_sed="/#define.*$3_PATCH_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p" > major="`sed -n $major_sed $2`" > minor="`sed -n $minor_sed $2`" > patch="`sed -n $patch_sed $2`" > +ltmaj="`expr $major + $minor`" > > if test "$1" = "all"; then > echo ${major}.${minor}.${patch} > elif test "$1" = "major"; then > echo ${major} > elif test "$1" = "libtool"; then > - # Yes, ${minor}:${patch}:${minor} is correct due to libtool idiocy. > - echo ${minor}:${patch}:${minor} > + echo ${ltmaj}:${patch}:${minor} > else > echo "ERROR: unknown version CMD ($1)" > exit 1 > >