Annotation of embedaddon/php/makedist, revision 1.1
1.1 ! misho 1: #!/bin/sh
! 2: #
! 3: # Distribution generator for SVN based packages.
! 4: # To work, this script needs a consistent tagging of all releases.
! 5: # Each release of a package should have a tag of the form
! 6: #
! 7: # <package>_<version>
! 8: #
! 9: # where <package> is the package name and the SVN module
! 10: # and <version> s the version number with underscores instead of dots.
! 11: #
! 12: # For example: svn cp $PHPROOT/php/php-src/trunk $PHPROOT/php/php-src/tags/php_5_0_1
! 13: #
! 14: # The distribution ends up in a .tar.gz file that contains the distribution
! 15: # in a directory called <package>-<version>. The distribution contains all
! 16: # directories from the SVN module except the one called "nodist", but only
! 17: # the files INSTALL, README and config* are included.
! 18: # A .tar.bz2 file is also created.
! 19: #
! 20: # Usage: makedist <package> <version>
! 21: #
! 22: # Written by Stig Bakken <ssb@guardian.no> 1997-05-28.
! 23: #
! 24: # $Id: makedist 284087 2009-07-14 21:49:44Z gwynne $
! 25: #
! 26:
! 27: if test "$#" != "2"; then
! 28: echo "Usage: makedist <package> <version>" >&2
! 29: exit 1
! 30: fi
! 31:
! 32: PKG=$1 ; shift
! 33: VER=$1 ; shift
! 34:
! 35: old_IFS="$IFS"
! 36: IFS=.
! 37: eval set `bison --version| grep 'GNU Bison' | cut -d ' ' -f 4 | sed -e 's/\./ /'`
! 38: if test "${1}" = "1" -a "${2}" -lt "28"; then
! 39: echo "You will need bison 1.28 if you want to regenerate the Zend parser (found ${1}.${2}).)"
! 40: exit 10
! 41: fi
! 42: IFS="$old_IFS"
! 43:
! 44: PHPROOT=http://svn.php.net/repository
! 45: PHPMOD=php/php-src
! 46: LT_TARGETS='ltconfig ltmain.sh config.guess config.sub'
! 47:
! 48: if echo '\c' | grep -s c >/dev/null 2>&1
! 49: then
! 50: ECHO_N="echo -n"
! 51: ECHO_C=""
! 52: else
! 53: ECHO_N="echo"
! 54: ECHO_C='\c'
! 55: fi
! 56:
! 57: MY_OLDPWD=`pwd`
! 58:
! 59: # the destination .tar.gz file
! 60: ARCHIVE=$MY_OLDPWD/$PKG-$VER.tar
! 61:
! 62: # temporary directory used to check out files from SVN
! 63: DIR=$PKG-$VER
! 64: DIRPATH=$MY_OLDPWD/$DIR
! 65:
! 66: if test -d "$DIRPATH"; then
! 67: echo "The directory $DIR"
! 68: echo "already exists, rename or remove it and run makedist again."
! 69: exit 1
! 70: fi
! 71:
! 72: # version part of the SVN release tag
! 73: SVNVER=`echo $VER | sed -e 's/[\.\-]/_/g'`
! 74:
! 75: # SVN release tag
! 76: if test "$VER" != "HEAD" -a "$VER" != "trunk"; then
! 77: SVNTAG=tags/${PKG}_$SVNVER
! 78: else
! 79: SVNTAG=trunk
! 80: fi
! 81:
! 82: #if test ! -d $DIRPATH; then
! 83: # mkdir -p $DIRPATH || exit 2
! 84: #fi
! 85:
! 86: # Export PHP
! 87: $ECHO_N "makedist: exporting tag '$SVNTAG' from '$PHPMOD'...$ECHO_C"
! 88: svn export $PHPROOT/$PHPMOD/$SVNTAG $DIRPATH || exit 4
! 89: echo ""
! 90:
! 91: # remove SVN stuff...
! 92: cd $DIR || exit 5
! 93: find . \( -name .svn -type d \) -exec rm -rf {} \;
! 94:
! 95: # The full ChangeLog is available separately from lxr.php.net
! 96: rm -f ChangeLog*
! 97:
! 98: # hide away our own versions of libtool-generated files
! 99: for i in $LT_TARGETS; do
! 100: if test -f "$i"; then
! 101: mv $i $i.bak
! 102: cp $i.bak $i
! 103: fi
! 104: done
! 105:
! 106: # generate some files so people don't need bison, flex and autoconf
! 107: # to install
! 108: set -x
! 109: ./buildconf --copy --force
! 110:
! 111: # remove buildmk.stamp. Otherwise, buildcheck.sh might not be run,
! 112: # when a user runs buildconf in the distribution.
! 113: rm -f buildmk.stamp
! 114:
! 115: ./genfiles
! 116:
! 117: # now restore our versions of libtool-generated files
! 118: for i in $LT_TARGETS; do
! 119: test -f "$i" && mv $i.bak $i
! 120: done
! 121:
! 122: # download pear
! 123: $ECHO_N "makedist: Attempting to download PEAR's phar archive"
! 124: if test ! -x wget; then
! 125: wget http://pear.php.net/install-pear-nozlib.phar -nd -P pear/
! 126: else
! 127: $ECHO_N "Missing wget binary needed for pear download";
! 128: exit 0;
! 129: fi
! 130:
! 131: cd $MY_OLDPWD
! 132: $ECHO_N "makedist: making gzipped tar archive...$ECHO_C"
! 133: rm -f $ARCHIVE.gz
! 134: tar cf $ARCHIVE $PKG-$VER || exit 8
! 135: gzip -9 $ARCHIVE || exit 9
! 136: echo ""
! 137:
! 138: $ECHO_N "makedist: making bz2zipped tar archive...$ECHO_C"
! 139: rm -f $ARCHIVE.bz2
! 140: tar cf $ARCHIVE $PKG-$VER || exit 10
! 141: bzip2 -9 $ARCHIVE || exit 11
! 142: echo ""
! 143:
! 144: $ECHO_N "makedist: cleaning up...$ECHO_C"
! 145: rm -rf $DIRPATH || exit 12
! 146: echo ""
! 147:
! 148: exit 0
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>