httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From minf...@apache.org
Subject cvs commit: httpd-2.0/build get-version.sh
Date Sat, 12 Apr 2003 17:28:56 GMT
minfrin     2003/04/12 10:28:55

  Modified:    .        CHANGES buildconf
  Added:       build    get-version.sh
  Log:
  Add code to buildconf that produces an httpd.spec file from
  httpd.spec.in, using build/get-version.sh from APR.
  
  Revision  Changes    Path
  1.1141    +4 -0      httpd-2.0/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/CHANGES,v
  retrieving revision 1.1140
  retrieving revision 1.1141
  diff -u -r1.1140 -r1.1141
  --- CHANGES	11 Apr 2003 20:22:21 -0000	1.1140
  +++ CHANGES	12 Apr 2003 17:28:55 -0000	1.1141
  @@ -2,6 +2,10 @@
   
     [Remove entries to the current 2.0 section below, when backported]
   
  +  *) Add code to buildconf that produces an httpd.spec file from
  +     httpd.spec.in, using build/get-version.sh from APR.
  +     [Graham Leggett]
  +
     *) ssl_toolkit_compat.h and code fixes to build clean on SSLC.
        [William Rowe, Madhusudan Mathihalli]
   
  
  
  
  1.35      +17 -0     httpd-2.0/buildconf
  
  Index: buildconf
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/buildconf,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- buildconf	30 Mar 2003 21:29:54 -0000	1.34
  +++ buildconf	12 Apr 2003 17:28:55 -0000	1.35
  @@ -181,4 +181,21 @@
   rm -f config.cache
   ${AUTOCONF:-autoconf} 2>&1 | grep -v "$cross_compile_warning"
   
  +if [ -f `which cut` ]; then
  +  echo rebuilding rpm spec file
  +  ( VMMN=`build/get-version.sh mmn include/ap_mmn.h MODULE_MAGIC_NUMBER`
  +    REVISION=`build/get-version.sh all include/ap_release.h AP_SERVER`
  +    VERSION=`echo $REVISION | cut -d- -s -f1`
  +    RELEASE=`echo $REVISION | cut -d- -s -f2`
  +    if [ "x$VERSION" = "x" ]; then
  +      VERSION=$REVISION
  +      RELEASE=1
  +    fi
  +    cat ./build/rpm/httpd.spec.in | \
  +    sed -e "s/APACHE_VERSION/$VERSION/" \
  +        -e "s/APACHE_RELEASE/$RELEASE/" \
  +        -e "s/APACHE_MMN/$VMMN/" \
  +    > httpd.spec )
  +fi
  +
   exit 0
  
  
  
  1.1                  httpd-2.0/build/get-version.sh
  
  Index: get-version.sh
  ===================================================================
  #!/bin/sh
  #
  # extract version numbers from a header file
  #
  # USAGE: get-version.sh CMD VERSION_HEADER PREFIX
  #   where CMD is one of: all, major, libtool
  #   where PREFIX is the prefix to {MAJOR|MINOR|PATCH}_VERSION defines
  #
  #   get-version.sh all returns a dotted version number
  #   get-version.sh major returns just the major version number
  #   get-version.sh libtool returns a version "libtool -version-info" format
  #
  
  if test $# != 3; then
    echo "USAGE: $0 CMD INCLUDEDIR PREFIX"
    echo "  where CMD is one of: all, major"
    exit 1
  fi
  
  major_sed="/#define.*$3_MAJORVERSION/s/^.*\([0-9][0-9]*\).*$/\1/p"
  minor_sed="/#define.*$3_MINORVERSION/s/^.*\([0-9][0-9]*\).*$/\1/p"
  patch_sed="/#define.*$3_PATCHLEVEL/s/^[^0-9]*\([0-9][0-9a-z-]*\).*$/\1/p"
  mmn_sed="/#define.*$3_MAJOR/s/^[^0-9]*\([0-9][0-9]*\).*$/\1/p"
  major="`sed -n $major_sed $2`"
  minor="`sed -n $minor_sed $2`"
  patch="`sed -n $patch_sed $2`"
  mmn="`sed -n $mmn_sed $2`"
  
  if test "$1" = "all"; then
    echo ${major}.${minor}.${patch}
  elif test "$1" = "major"; then
    echo ${major}
  elif test "$1" = "mmn"; then
    echo ${mmn}
  elif test "$1" = "libtool"; then
    # Yes, ${minor}:${patch}:${minor} is correct due to libtool idiocy.
    echo ${minor}:${patch}:${minor}
  else
    echo "ERROR: unknown version CMD ($1)"
    exit 1
  fi
  
  
  

Mime
View raw message