Annotation of embedaddon/php/scripts/phpize, revision 1.1
1.1 ! misho 1: #!/bin/sh
! 2:
! 3: # Variable declaration
! 4: prefix='/usr/local'
! 5: datarootdir='/usr/local/share'
! 6: exec_prefix="`eval echo ${prefix}`"
! 7: phpdir="`eval echo ${exec_prefix}/lib/php`/build"
! 8: includedir="`eval echo ${prefix}/include`/php"
! 9: builddir="`pwd`"
! 10: SED="sed"
! 11:
! 12: FILES_BUILD="mkdep.awk scan_makefile_in.awk shtool libtool.m4"
! 13: FILES="acinclude.m4 Makefile.global config.sub config.guess ltmain.sh run-tests*.php"
! 14: CLEAN_FILES="$FILES *.o *.lo *.la .deps .libs/ build/ include/ modules/ install-sh \
! 15: mkinstalldirs missing config.nice config.sub config.guess configure configure.in \
! 16: aclocal.m4 config.h config.h.in conftest* ltmain.sh libtool config.cache autom4te.cache/ \
! 17: config.log config.status Makefile Makefile.fragments Makefile.objects confdefs.h \
! 18: run-tests*.php tests/*.diff tests/*.exp tests/*.log tests/*.out tests/*.php"
! 19:
! 20: # function declaration
! 21: phpize_usage()
! 22: {
! 23: echo "Usage: $0 [--clean|--help|--version|-v]"
! 24: }
! 25:
! 26: phpize_no_configm4()
! 27: {
! 28: if test $@ -eq 1; then
! 29: clean=" --clean"
! 30: fi
! 31:
! 32: echo "Cannot find config.m4. "
! 33: echo "Make sure that you run '$0$clean' in the top level source directory of the module"
! 34: echo
! 35: }
! 36:
! 37: phpize_clean()
! 38: {
! 39: echo "Cleaning.."
! 40: for i in $CLEAN_FILES; do
! 41: if test -f "$i"; then
! 42: rm -f $i
! 43: elif test -d "$i"; then
! 44: rm -rf $i
! 45: fi
! 46: done
! 47: }
! 48:
! 49: phpize_check_configm4()
! 50: {
! 51: if test ! -r config.m4; then
! 52: phpize_no_configm4 $@
! 53: exit 1
! 54: fi
! 55:
! 56: }
! 57:
! 58: phpize_get_api_numbers()
! 59: {
! 60: # extracting API NOs:
! 61: PHP_API_VERSION=`grep '#define PHP_API_VERSION' $includedir/main/php.h|$SED 's/#define PHP_API_VERSION//'`
! 62: ZEND_MODULE_API_NO=`grep '#define ZEND_MODULE_API_NO' $includedir/Zend/zend_modules.h|$SED 's/#define ZEND_MODULE_API_NO//'`
! 63: ZEND_EXTENSION_API_NO=`grep '#define ZEND_EXTENSION_API_NO' $includedir/Zend/zend_extensions.h|$SED 's/#define ZEND_EXTENSION_API_NO//'`
! 64: }
! 65:
! 66: phpize_print_api_numbers()
! 67: {
! 68: phpize_get_api_numbers
! 69: echo "Configuring for:"
! 70: echo "PHP Api Version: "$PHP_API_VERSION
! 71: echo "Zend Module Api No: "$ZEND_MODULE_API_NO
! 72: echo "Zend Extension Api No: "$ZEND_EXTENSION_API_NO
! 73: }
! 74:
! 75: phpize_check_build_files()
! 76: {
! 77: if test ! -d "$phpdir"; then
! 78: cat <<EOF
! 79: Cannot find build files at '$phpdir'. Please check your PHP installation.
! 80:
! 81: EOF
! 82: exit 1
! 83: fi
! 84:
! 85: case "$phpdir" in
! 86: *\ * | *\ *)
! 87: cat <<EOF
! 88: Invalid source path '$phpdir'. Whitespace is not allowed in source path.
! 89:
! 90: EOF
! 91: exit 1;;
! 92: esac
! 93:
! 94: case "$builddir" in
! 95: *\ * | *\ *)
! 96: cat <<EOF
! 97: Invalid build path '$builddir'. Whitespace is not allowed in build path.
! 98:
! 99: EOF
! 100: exit 1;;
! 101: esac
! 102: }
! 103:
! 104: phpize_check_shtool()
! 105: {
! 106: test -x "$builddir/build/shtool" || chmod +x "$builddir/build/shtool"
! 107:
! 108: if test ! -x "$builddir/build/shtool"; then
! 109: cat <<EOF
! 110: shtool at '$builddir/build/shtool' does not exist or is not executable.
! 111: Make sure that the file exists and is executable and then rerun this script.
! 112:
! 113: EOF
! 114: exit 1
! 115: else
! 116: php_shtool=$builddir/build/shtool
! 117: fi
! 118: }
! 119:
! 120: phpize_check_autotools()
! 121: {
! 122: test -z "$PHP_AUTOCONF" && PHP_AUTOCONF=autoconf
! 123: test -z "$PHP_AUTOHEADER" && PHP_AUTOHEADER=autoheader
! 124:
! 125: if test ! -x "$PHP_AUTOCONF" && test ! -x "`$php_shtool path $PHP_AUTOCONF`"; then
! 126: cat <<EOF
! 127: Cannot find autoconf. Please check your autoconf installation and the
! 128: \$PHP_AUTOCONF environment variable. Then, rerun this script.
! 129:
! 130: EOF
! 131: exit 1
! 132: fi
! 133: if test ! -x "$PHP_AUTOHEADER" && test ! -x "`$php_shtool path $PHP_AUTOHEADER`"; then
! 134: cat <<EOF
! 135: Cannot find autoheader. Please check your autoconf installation and the
! 136: \$PHP_AUTOHEADER environment variable. Then, rerun this script.
! 137:
! 138: EOF
! 139: exit 1
! 140: fi
! 141: }
! 142:
! 143: phpize_copy_files()
! 144: {
! 145: test -d build || mkdir build
! 146:
! 147: (cd "$phpdir" && cp $FILES_BUILD "$builddir"/build)
! 148: (cd "$phpdir" && cp $FILES "$builddir")
! 149: (cd "$builddir" && cat acinclude.m4 ./build/libtool.m4 > aclocal.m4)
! 150: }
! 151:
! 152: phpize_replace_prefix()
! 153: {
! 154: $SED \
! 155: -e "s#/usr/local#$prefix#" \
! 156: < "$phpdir/phpize.m4" > configure.in
! 157: }
! 158:
! 159: phpize_autotools()
! 160: {
! 161: $PHP_AUTOCONF || exit 1
! 162: $PHP_AUTOHEADER || exit 1
! 163: }
! 164:
! 165: # Main script
! 166:
! 167: case "$1" in
! 168: # Cleanup
! 169: --clean)
! 170: phpize_check_configm4 1
! 171: phpize_clean
! 172: exit 0
! 173: ;;
! 174:
! 175: # Usage
! 176: --help)
! 177: phpize_usage
! 178: exit 0
! 179: ;;
! 180:
! 181: # Version
! 182: --version|-v)
! 183: phpize_print_api_numbers
! 184: exit 0
! 185: ;;
! 186:
! 187: # Default
! 188: *)
! 189: phpize_check_configm4 0
! 190:
! 191: phpize_check_build_files
! 192:
! 193: phpize_print_api_numbers
! 194:
! 195: phpize_copy_files
! 196:
! 197: phpize_replace_prefix
! 198:
! 199: touch install-sh mkinstalldirs missing
! 200:
! 201: phpize_check_shtool
! 202:
! 203: phpize_check_autotools
! 204:
! 205: phpize_autotools
! 206: ;;
! 207: esac
! 208:
! 209: exit 0
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>