summaryrefslogtreecommitdiff
path: root/scripts/phpize.in
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2013-03-14 05:42:27 +0000
committer <>2013-04-03 16:25:08 +0000
commitc4dd7a1a684490673e25aaf4fabec5df138854c4 (patch)
tree4d57c44caae4480efff02b90b9be86f44bf25409 /scripts/phpize.in
downloadphp2-master.tar.gz
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'scripts/phpize.in')
-rw-r--r--scripts/phpize.in209
1 files changed, 209 insertions, 0 deletions
diff --git a/scripts/phpize.in b/scripts/phpize.in
new file mode 100644
index 0000000..43cd8d3
--- /dev/null
+++ b/scripts/phpize.in
@@ -0,0 +1,209 @@
+#!/bin/sh
+
+# Variable declaration
+prefix='@prefix@'
+datarootdir='@datarootdir@'
+exec_prefix="`eval echo @exec_prefix@`"
+phpdir="`eval echo @libdir@`/build"
+includedir="`eval echo @includedir@`/php"
+builddir="`pwd`"
+SED="@SED@"
+
+FILES_BUILD="mkdep.awk scan_makefile_in.awk shtool libtool.m4"
+FILES="acinclude.m4 Makefile.global config.sub config.guess ltmain.sh run-tests*.php"
+CLEAN_FILES="$FILES *.o *.lo *.la .deps .libs/ build/ include/ modules/ install-sh \
+ mkinstalldirs missing config.nice config.sub config.guess configure configure.in \
+ aclocal.m4 config.h config.h.in conftest* ltmain.sh libtool config.cache autom4te.cache/ \
+ config.log config.status Makefile Makefile.fragments Makefile.objects confdefs.h \
+ run-tests*.php tests/*.diff tests/*.exp tests/*.log tests/*.out tests/*.php"
+
+# function declaration
+phpize_usage()
+{
+ echo "Usage: $0 [--clean|--help|--version|-v]"
+}
+
+phpize_no_configm4()
+{
+ if test $@ -eq 1; then
+ clean=" --clean"
+ fi
+
+ echo "Cannot find config.m4. "
+ echo "Make sure that you run '$0$clean' in the top level source directory of the module"
+ echo
+}
+
+phpize_clean()
+{
+ echo "Cleaning.."
+ for i in $CLEAN_FILES; do
+ if test -f "$i"; then
+ rm -f $i
+ elif test -d "$i"; then
+ rm -rf $i
+ fi
+ done
+}
+
+phpize_check_configm4()
+{
+ if test ! -r config.m4; then
+ phpize_no_configm4 $@
+ exit 1
+ fi
+
+}
+
+phpize_get_api_numbers()
+{
+ # extracting API NOs:
+ PHP_API_VERSION=`grep '#define PHP_API_VERSION' $includedir/main/php.h|$SED 's/#define PHP_API_VERSION//'`
+ ZEND_MODULE_API_NO=`grep '#define ZEND_MODULE_API_NO' $includedir/Zend/zend_modules.h|$SED 's/#define ZEND_MODULE_API_NO//'`
+ ZEND_EXTENSION_API_NO=`grep '#define ZEND_EXTENSION_API_NO' $includedir/Zend/zend_extensions.h|$SED 's/#define ZEND_EXTENSION_API_NO//'`
+}
+
+phpize_print_api_numbers()
+{
+ phpize_get_api_numbers
+ echo "Configuring for:"
+ echo "PHP Api Version: "$PHP_API_VERSION
+ echo "Zend Module Api No: "$ZEND_MODULE_API_NO
+ echo "Zend Extension Api No: "$ZEND_EXTENSION_API_NO
+}
+
+phpize_check_build_files()
+{
+ if test ! -d "$phpdir"; then
+ cat <<EOF
+Cannot find build files at '$phpdir'. Please check your PHP installation.
+
+EOF
+ exit 1
+ fi
+
+ case "$phpdir" in
+ *\ * | *\ *)
+ cat <<EOF
+Invalid source path '$phpdir'. Whitespace is not allowed in source path.
+
+EOF
+ exit 1;;
+ esac
+
+ case "$builddir" in
+ *\ * | *\ *)
+ cat <<EOF
+Invalid build path '$builddir'. Whitespace is not allowed in build path.
+
+EOF
+ exit 1;;
+ esac
+}
+
+phpize_check_shtool()
+{
+ test -x "$builddir/build/shtool" || chmod +x "$builddir/build/shtool"
+
+ if test ! -x "$builddir/build/shtool"; then
+ cat <<EOF
+shtool at '$builddir/build/shtool' does not exist or is not executable.
+Make sure that the file exists and is executable and then rerun this script.
+
+EOF
+ exit 1
+ else
+ php_shtool=$builddir/build/shtool
+ fi
+}
+
+phpize_check_autotools()
+{
+ test -z "$PHP_AUTOCONF" && PHP_AUTOCONF=autoconf
+ test -z "$PHP_AUTOHEADER" && PHP_AUTOHEADER=autoheader
+
+ if test ! -x "$PHP_AUTOCONF" && test ! -x "`$php_shtool path $PHP_AUTOCONF`"; then
+ cat <<EOF
+Cannot find autoconf. Please check your autoconf installation and the
+\$PHP_AUTOCONF environment variable. Then, rerun this script.
+
+EOF
+ exit 1
+ fi
+ if test ! -x "$PHP_AUTOHEADER" && test ! -x "`$php_shtool path $PHP_AUTOHEADER`"; then
+ cat <<EOF
+Cannot find autoheader. Please check your autoconf installation and the
+\$PHP_AUTOHEADER environment variable. Then, rerun this script.
+
+EOF
+ exit 1
+ fi
+}
+
+phpize_copy_files()
+{
+ test -d build || mkdir build
+
+ (cd "$phpdir" && cp $FILES_BUILD "$builddir"/build)
+ (cd "$phpdir" && cp $FILES "$builddir")
+ (cd "$builddir" && cat acinclude.m4 ./build/libtool.m4 > aclocal.m4)
+}
+
+phpize_replace_prefix()
+{
+ $SED \
+ -e "s#@prefix@#$prefix#" \
+ < "$phpdir/phpize.m4" > configure.in
+}
+
+phpize_autotools()
+{
+ $PHP_AUTOCONF || exit 1
+ $PHP_AUTOHEADER || exit 1
+}
+
+# Main script
+
+case "$1" in
+ # Cleanup
+ --clean)
+ phpize_check_configm4 1
+ phpize_clean
+ exit 0
+ ;;
+
+ # Usage
+ --help)
+ phpize_usage
+ exit 0
+ ;;
+
+ # Version
+ --version|-v)
+ phpize_print_api_numbers
+ exit 0
+ ;;
+
+ # Default
+ *)
+ phpize_check_configm4 0
+
+ phpize_check_build_files
+
+ phpize_print_api_numbers
+
+ phpize_copy_files
+
+ phpize_replace_prefix
+
+ touch install-sh mkinstalldirs missing
+
+ phpize_check_shtool
+
+ phpize_check_autotools
+
+ phpize_autotools
+ ;;
+esac
+
+exit 0