]> granicus.if.org Git - php/commitdiff
- makedist script for creating Engine 2 distribution.
authorAndi Gutmans <andi@php.net>
Wed, 22 May 2002 15:51:48 +0000 (15:51 +0000)
committerAndi Gutmans <andi@php.net>
Wed, 22 May 2002 15:51:48 +0000 (15:51 +0000)
- Hopefully we can get a preview out in the next few days.

makedist.ZendEngine2 [new file with mode: 0755]

diff --git a/makedist.ZendEngine2 b/makedist.ZendEngine2
new file mode 100755 (executable)
index 0000000..b4bdc4c
--- /dev/null
@@ -0,0 +1,149 @@
+#!/bin/sh
+#
+# Distribution generator for CVS based packages.
+# To work, this script needs a consistent tagging of all releases.
+# Each release of a package should have a tag of the form
+#
+#  <package>_<version>
+#
+# where <package> is the package name and the CVS module
+# and <version> s the version number with underscores instead of dots.
+#
+# For example: cvs tag php_3_0a1
+#
+# The distribution ends up in a .tar.gz file that contains the distribution
+# in a directory called <package>-<version>.  The distribution contains all
+# directories from the CVS module except the one called "nodist", but only
+# the files INSTALL, README and config* are included.
+#
+# Since you can no longer set the CVS password via an env variable, you
+# need to have previously done a cvs login for the server and user id
+# this script uses so it will have an entry in your ~/.cvspasswd file.
+#
+# Usage: makedist <package> <version>
+#
+# Written by Stig Bakken <ssb@guardian.no> 1997-05-28.
+#
+# $Id$
+#
+
+if test "$#" != "2"; then
+    echo "Usage: makedist <package> <version>" >&2
+    exit 1
+fi
+
+PKG=$1 ; shift
+VER=$1 ; shift
+
+old_IFS="$IFS"
+IFS=.
+eval set `bison --version| grep 'GNU Bison' | cut -d ' ' -f 4 | sed -e 's/\./ /'`
+if test "${1}" = "1" -a "${2}" -lt "28"; then
+  echo "You will need bison 1.28 if you want to regenerate the Zend parser (found ${1}.${2}).)"
+  exit 10
+fi
+IFS="$old_IFS"
+
+PHPROOT=:pserver:cvsread@cvs.php.net:/repository
+ZENDROOT=:pserver:cvsread@cvs.php.net:/repository
+PHPMOD=php4
+ZENDMOD=ZendEngine2
+TSRMMOD=TSRM
+LT_TARGETS='ltconfig ltmain.sh config.guess config.sub'
+
+if echo '\c' | grep -s c >/dev/null 2>&1
+then
+    ECHO_N="echo -n"
+    ECHO_C=""
+else
+    ECHO_N="echo"
+    ECHO_C='\c'
+fi
+
+MY_OLDPWD=`pwd`
+
+# the destination .tar.gz file
+ARCHIVE=$MY_OLDPWD/$PKG-$VER-ZendEngine2.tar
+
+# temporary directory used to check out files from CVS
+DIR=$PKG-$VER-ZendEngine2
+DIRPATH=$MY_OLDPWD/$DIR
+
+if test -d "$DIRPATH"; then
+    echo "The directory $DIR"
+    echo "already exists, rename or remove it and run makedist again."
+    exit 1
+fi
+
+# version part of the CVS release tag
+CVSVER=`echo $VER | sed -e 's/[\.\-]/_/g'`
+
+# CVS release tag
+CVSTAG=${PKG}_$CVSVER
+
+if test ! -d $DIRPATH; then
+    mkdir -p $DIRPATH || exit 2
+fi
+
+#cd $DIRPATH || exit 3
+
+# Export PHP
+$ECHO_N "makedist: exporting tag '$CVSTAG' from '$PHPMOD'...$ECHO_C"
+cvs -z 9 -d $PHPROOT -Q export -d $DIR -r $CVSTAG $PHPMOD || exit 4
+echo ""
+
+# Export the other modules inside the PHP directory
+cd $DIR || exit 5
+
+# Export Zend
+$ECHO_N "makedist: exporting tag '$CVSTAG' from '$ZENDMOD'...$ECHO_C"
+cvs -z 9 -d $ZENDROOT -Q export -r $CVSTAG $ZENDMOD || exit 4
+mv ZendEngine2 Zend
+echo ""
+
+# Export TSRM
+#$ECHO_N "makedist: exporting tag '$CVSTAG' from '$TSRMMOD'...$ECHO_C"
+#cvs -z 9 -d $ZENDROOT -Q export -r $CVSTAG $TSRMMOD || exit 4
+#echo ""
+
+# remove CVS stuff...
+find . \( \( -name CVS -type d \) -o -name .cvsignore \) -exec rm -rf {} \;
+
+# The full ChangeLog is available separately from lxr.php.net
+rm ChangeLog*
+
+# hide away our own versions of libtool-generated files
+for i in $LT_TARGETS; do
+  if test -f "$i"; then
+    mv $i $i.bak
+    cp $i.bak $i
+  fi
+done
+
+# generate some files so people don't need bison, flex and autoconf
+# to install
+set -x
+./buildconf --copy
+
+# remove buildmk.stamp. Otherwise, buildcheck.sh might not be run,
+# when a user runs buildconf in the distribution.
+rm -f buildmk.stamp
+
+./genfiles
+
+# now restore our versions of libtool-generated files
+for i in $LT_TARGETS; do
+  test -f "$i" && mv $i.bak $i
+done
+
+cd $MY_OLDPWD
+$ECHO_N "makedist: making gzipped tar archive...$ECHO_C"
+tar cf $ARCHIVE $PKG-$VER-ZendEngine2 || exit 8
+gzip -9 $ARCHIVE || exit 9
+echo ""
+
+$ECHO_N "makedist: cleaning up...$ECHO_C"
+rm -rf $DIRPATH || exit 10
+echo ""
+
+exit 0