tony2001 Fri Jan 6 11:48:03 2006 UTC Modified files: /php-src/ext/pdo_oci config.m4 Log: fix #35907 (PDO_OCI uses hardcoded lib path $ORACLE_HOME/lib) http://cvs.php.net/viewcvs.cgi/php-src/ext/pdo_oci/config.m4?r1=1.16&r2=1.17&diff_format=u Index: php-src/ext/pdo_oci/config.m4 diff -u php-src/ext/pdo_oci/config.m4:1.16 php-src/ext/pdo_oci/config.m4:1.17 --- php-src/ext/pdo_oci/config.m4:1.16 Sun Nov 27 18:35:35 2005 +++ php-src/ext/pdo_oci/config.m4 Fri Jan 6 11:48:03 2006 @@ -1,4 +1,4 @@ -dnl $Id: config.m4,v 1.16 2005/11/27 18:35:35 tony2001 Exp $ +dnl $Id: config.m4,v 1.17 2006/01/06 11:48:03 tony2001 Exp $ if test "$PHP_PDO" != "no"; then @@ -7,16 +7,16 @@ if test -s "$PDO_OCI_DIR/orainst/unix.rgs"; then PDO_OCI_VERSION=`grep '"ocommon"' $PDO_OCI_DIR/orainst/unix.rgs | sed 's/[ ][ ]*/:/g' | cut -d: -f 6 | cut -c 2-4` test -z "$PDO_OCI_VERSION" && PDO_OCI_VERSION=7.3 - elif test -f $PDO_OCI_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.10.1; then + elif test -f $PDO_OCI_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.10.1; then PDO_OCI_VERSION=10.1 - elif test -f $PDO_OCI_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.9.0; then + elif test -f $PDO_OCI_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.9.0; then PDO_OCI_VERSION=9.0 - elif test -f $PDO_OCI_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.8.0; then + elif test -f $PDO_OCI_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.8.0; then PDO_OCI_VERSION=8.1 - elif test -f $PDO_OCI_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.1.0; then + elif test -f $PDO_OCI_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.1.0; then PDO_OCI_VERSION=8.0 - elif test -f $PDO_OCI_DIR/lib/libclntsh.a; then - if test -f $PDO_OCI_DIR/lib/libcore4.a; then + elif test -f $PDO_OCI_LIB_DIR/libclntsh.a; then + if test -f $PDO_OCI_LIB_DIR/libcore4.a; then PDO_OCI_VERSION=8.0 else PDO_OCI_VERSION=8.1 @@ -27,6 +27,30 @@ AC_MSG_RESULT($PDO_OCI_VERSION) ]) +AC_DEFUN([AC_PDO_OCI_CHECK_LIB_DIR],[ + AC_CHECK_SIZEOF(long int, 4) + AC_MSG_CHECKING([checking if we're at 64-bit platform]) + if test "$ac_cv_sizeof_long_int" = "4" ; then + AC_MSG_RESULT([no]) + TMP_PDO_OCI_LIB_DIR="$PDO_OCI_DIR/lib32" + else + AC_MSG_RESULT([yes]) + TMP_PDO_OCI_LIB_DIR="$PDO_OCI_DIR/lib" + fi + + AC_MSG_CHECKING([OCI8 libraries dir]) + if test -d "$PDO_OCI_DIR/lib" -a ! -d "$PDO_OCI_DIR/lib32"; then + PDO_OCI_LIB_DIR="$PDO_OCI_DIR/lib" + elif ! test -d "$PDO_OCI_DIR/lib" -a -d "$PDO_OCI_DIR/lib32"; then + PDO_OCI_LIB_DIR="$PDO_OCI_DIR/lib32" + elif test -d "$PDO_OCI_DIR/lib" -a -d "$PDO_OCI_DIR/lib32"; then + PDO_OCI_LIB_DIR=$TMP_PDO_OCI_LIB_DIR + else + AC_MSG_ERROR([Oracle (OCI8) required libraries not found]) + fi + AC_MSG_RESULT($PDO_OCI_LIB_DIR) +]) + PHP_ARG_WITH(pdo-oci, Oracle OCI support for PDO, [ --with-pdo-oci[=DIR] PDO: Oracle-OCI support. Default DIR is ORACLE_HOME. You may also use --with-pdo-oci=instantclient,prefix,version to use @@ -51,6 +75,8 @@ AC_MSG_RESULT([yes]) fi + AC_PDO_OCI_CHECK_LIB_DIR($PDO_OCI_DIR) + if test "instantclient" = "`echo $PDO_OCI_DIR | cut -d, -f1`" ; then PDO_OCI_IC_PREFIX="`echo $PDO_OCI_DIR | cut -d, -f2`" PDO_OCI_IC_VERS="`echo $PDO_OCI_DIR | cut -d, -f3`" @@ -88,12 +114,11 @@ PDO_OCI_INCLUDES="$PDO_OCI_INCLUDES -I$PDO_OCI_DIR/include" fi - if test -f "$PDO_OCI_DIR/lib/sysliblist"; then - PHP_EVAL_LIBLINE(`cat $PDO_OCI_DIR/lib/sysliblist`, PDO_OCI_SYSLIB) + if test -f "$PDO_OCI_LIB_DIR/sysliblist"; then + PHP_EVAL_LIBLINE(`cat $PDO_OCI_LIB_DIR/sysliblist`, PDO_OCI_SYSLIB) elif test -f "$PDO_OCI_DIR/rdbms/lib/sysliblist"; then PHP_EVAL_LIBLINE(`cat $PDO_OCI_DIR/rdbms/lib/sysliblist`, PDO_OCI_SYSLIB) fi - PDO_OCI_LIB_DIR="$PDO_OCI_DIR/lib" AC_PDO_OCI_VERSION($PDO_OCI_DIR) fi
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php