[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/pdo_oci/config.m4 trunk/ext/pdo_oci/config.m4

2011-03-29 Thread Felipe Pena
felipe   Tue, 29 Mar 2011 18:40:20 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=309818

Log:
- Fixed bug #44989 (64bit Oracle RPMs still not supported by pdo-oci)
  patch by: jbnance at tresgeek dot net

Bug: http://bugs.php.net/44989 (Assigned) 64bit Oracle RPMs still not supported 
by pdo-oci
  
Changed paths:
U   php/php-src/branches/PHP_5_3/ext/pdo_oci/config.m4
U   php/php-src/trunk/ext/pdo_oci/config.m4

Modified: php/php-src/branches/PHP_5_3/ext/pdo_oci/config.m4
===
--- php/php-src/branches/PHP_5_3/ext/pdo_oci/config.m4  2011-03-29 18:32:06 UTC 
(rev 309817)
+++ php/php-src/branches/PHP_5_3/ext/pdo_oci/config.m4  2011-03-29 18:40:20 UTC 
(rev 309818)
@@ -71,28 +71,34 @@
   fi

   if test instantclient = `echo $PDO_OCI_DIR | cut -d, -f1` ; then
+AC_CHECK_SIZEOF(long int, 4)
+if test $ac_cv_sizeof_long_int = 4 ; then
+  PDO_OCI_CLIENT_DIR=client
+else
+  PDO_OCI_CLIENT_DIR=client64
+fi
 PDO_OCI_IC_PREFIX=`echo $PDO_OCI_DIR | cut -d, -f2`
 PDO_OCI_IC_VERS=`echo $PDO_OCI_DIR | cut -d, -f3`
 AC_MSG_CHECKING([for oci.h])
-if test -f $PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client/oci.h 
; then
-  
PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client)
-  AC_MSG_RESULT($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client)
-elif test -f 
$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/include/oci.h ; then
-  
PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/include)
-  
AC_MSG_RESULT($PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/include)
+if test -f 
$PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/oci.h ; 
then
+  
PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR)
+  
AC_MSG_RESULT($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR)
+elif test -f 
$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/include/oci.h
 ; then
+  
PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/include)
+  
AC_MSG_RESULT($PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/include)
 elif test -f $PDO_OCI_IC_PREFIX/sdk/include/oci.h ; then
   PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/sdk/include)
   AC_MSG_RESULT($PDO_OCI_IC_PREFIX/sdk/include)
-elif test -f $PDO_OCI_IC_PREFIX/client/include/oci.h ; then
-  PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/client/include)
-  AC_MSG_RESULT($PDO_OCI_IC_PREFIX/client/include)
+elif test -f $PDO_OCI_IC_PREFIX/$PDO_OCI_CLIENT_DIR/include/oci.h ; then
+  PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/$PDO_OCI_CLIENT_DIR/include)
+  AC_MSG_RESULT($PDO_OCI_IC_PREFIX/$PDO_OCI_CLIENT_DIR/include)
 else
   AC_MSG_ERROR([I'm too dumb to figure out where the include dir is in 
your Instant Client install])
 fi
-if test -f 
$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/lib/libclntsh.so ; then
-PDO_OCI_LIB_DIR=$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/lib
-elif test -f $PDO_OCI_IC_PREFIX/client/lib/libclntsh.so ; then
-  PDO_OCI_LIB_DIR=$PDO_OCI_IC_PREFIX/client/lib
+if test -f 
$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/lib/libclntsh.so
 ; then
+
PDO_OCI_LIB_DIR=$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/lib
+elif test -f $PDO_OCI_IC_PREFIX/$PDO_OCI_CLIENT_DIR/lib/libclntsh.so ; 
then
+  PDO_OCI_LIB_DIR=$PDO_OCI_IC_PREFIX/$PDO_OCI_CLIENT_DIR/lib
 elif test -f $PDO_OCI_IC_PREFIX/libclntsh.so ; then
   PDO_OCI_LIB_DIR=$PDO_OCI_IC_PREFIX
 else

Modified: php/php-src/trunk/ext/pdo_oci/config.m4
===
--- php/php-src/trunk/ext/pdo_oci/config.m4 2011-03-29 18:32:06 UTC (rev 
309817)
+++ php/php-src/trunk/ext/pdo_oci/config.m4 2011-03-29 18:40:20 UTC (rev 
309818)
@@ -71,28 +71,34 @@
   fi

   if test instantclient = `echo $PDO_OCI_DIR | cut -d, -f1` ; then
+AC_CHECK_SIZEOF(long int, 4)
+if test $ac_cv_sizeof_long_int = 4 ; then
+  PDO_OCI_CLIENT_DIR=client
+else
+  PDO_OCI_CLIENT_DIR=client64
+fi
 PDO_OCI_IC_PREFIX=`echo $PDO_OCI_DIR | cut -d, -f2`
 PDO_OCI_IC_VERS=`echo $PDO_OCI_DIR | cut -d, -f3`
 AC_MSG_CHECKING([for oci.h])
-if test -f $PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client/oci.h 
; then
-  
PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client)
-  AC_MSG_RESULT($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client)
-elif test -f 
$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/include/oci.h ; then
-  
PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/include)
-  
AC_MSG_RESULT($PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/include)
+if test -f 

[PHP-CVS] svn: /php/php-src/branches/PHP_5_3/ NEWS

2011-03-29 Thread Felipe Pena
felipe   Tue, 29 Mar 2011 18:44:52 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=309819

Log:
- BFN

Changed paths:
U   php/php-src/branches/PHP_5_3/NEWS

Modified: php/php-src/branches/PHP_5_3/NEWS
===
--- php/php-src/branches/PHP_5_3/NEWS   2011-03-29 18:40:20 UTC (rev 309818)
+++ php/php-src/branches/PHP_5_3/NEWS   2011-03-29 18:44:52 UTC (rev 309819)
@@ -40,7 +40,11 @@
 - PDO PostgreSQL driver:
   . Fixed bug #54318 (Non-portable grep option used in PDO pgsql
 configuration). (bwalton at artsci dot utoronto dot ca)
-
+
+- PDO Oracle driver:
+  . Fixed bug #44989 (64bit Oracle RPMs still not supported by pdo-oci).
+(jbnance at tresgeek dot net)
+
 - Phar extension:
   . Fixed bug #54395 (Phar::mount() crashes when calling with wrong 
parameters).
 (Felipe)

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/oci8/config.m4 trunk/ext/oci8/config.m4

2011-03-29 Thread Christopher Jones
sixd Tue, 29 Mar 2011 21:37:45 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=309823

Log:
Refactor OCI8 config.m4: improve messages and merge similar conditionals

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/oci8/config.m4
U   php/php-src/trunk/ext/oci8/config.m4

Modified: php/php-src/branches/PHP_5_3/ext/oci8/config.m4
===
--- php/php-src/branches/PHP_5_3/ext/oci8/config.m4	2011-03-29 20:59:26 UTC (rev 309822)
+++ php/php-src/branches/PHP_5_3/ext/oci8/config.m4	2011-03-29 21:37:45 UTC (rev 309823)
@@ -47,48 +47,37 @@
 ])

 AC_DEFUN([AC_OCI8IC_VERSION],[
-  AC_MSG_CHECKING([Oracle Instant Client version])
-  if test -f $PHP_OCI8_INSTANT_CLIENT/libnnz11.$SHLIB_SUFFIX_NAME; then
-if test -f $PHP_OCI8_INSTANT_CLIENT/libclntsh.$SHLIB_SUFFIX_NAME.11.1; then
-  if test ! -f $PHP_OCI8_INSTANT_CLIENT/libclntsh.$SHLIB_SUFFIX_NAME; then
-AC_MSG_ERROR([Link from $PHP_OCI8_INSTANT_CLIENT/libclntsh.$SHLIB_SUFFIX_NAME to libclntsh.$SHLIB_SUFFIX_NAME.11.1 not found])
-  fi
-  OCI8_ORACLE_VERSION=11.1
-else
-  AC_MSG_ERROR([Oracle Instant Client library version not supported])
+  AC_MSG_CHECKING([Oracle Instant Client library version compatibility])
+  OCI8_LCS_BASE=$PHP_OCI8_INSTANT_CLIENT/libclntsh.$SHLIB_SUFFIX_NAME
+  OCI8_LCS=`ls $OCI8_LCS_BASE.*.1 2 /dev/null | tail -1`  # Oracle 10g, 11g etc
+  OCI8_NNZ=`ls $PHP_OCI8_INSTANT_CLIENT/libnnz*.$SHLIB_SUFFIX_NAME 2 /dev/null | tail -1`
+  if test -f $OCI8_NNZ  test -f $OCI8_LCS; then
+if test ! -f $OCI8_LCS_BASE; then
+  AC_MSG_ERROR([Link from $OCI8_LCS_BASE to $OCI8_LCS_BASE.*.1 not found])
 fi
-  elif test -f $PHP_OCI8_INSTANT_CLIENT/libnnz10.$SHLIB_SUFFIX_NAME; then
-if test -f $PHP_OCI8_INSTANT_CLIENT/libclntsh.$SHLIB_SUFFIX_NAME.10.1; then
-  if test ! -f $PHP_OCI8_INSTANT_CLIENT/libclntsh.$SHLIB_SUFFIX_NAME; then
-AC_MSG_ERROR([Link from $PHP_OCI8_INSTANT_CLIENT/libclntsh.$SHLIB_SUFFIX_NAME to libclntsh.$SHLIB_SUFFIX_NAME.10.1 not found])
-  fi
-  OCI8_ORACLE_VERSION=10.1
-else
-  AC_MSG_ERROR([Oracle Instant Client library version not supported])
-fi
+OCI8_ORACLE_VERSION=`echo $OCI8_LCS | $PHP_OCI8_SED -e 's/.*\.\(.*\)\.1$/\1.1/'`
   else
-AC_MSG_ERROR([Oracle Instant Client libraries not found])
+AC_MSG_ERROR([Oracle Instant Client libraries libnnz.$SHLIB_SUFFIX_NAME and libclntsh.$SHLIB_SUFFIX_NAME not found])
   fi
   AC_MSG_RESULT([$OCI8_ORACLE_VERSION])
 ])

-
 AC_DEFUN([AC_OCI8_ORACLE_VERSION],[
-  AC_MSG_CHECKING([Oracle version])
+  AC_MSG_CHECKING([Oracle library version compatibility])
+  OCI8_LCS_BASE=$OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME
+  OCI8_LCS=`ls $OCI8_LCS_BASE.*.1 2 /dev/null | tail -1`  # Oracle 10g, 11g etc
   if test -s $OCI8_DIR/orainst/unix.rgs; then
 OCI8_ORACLE_VERSION=`grep 'ocommon' $OCI8_DIR/orainst/unix.rgs | $PHP_OCI8_SED 's/[ ][ ]*/:/g' | cut -d: -f 6 | cut -c 2-4`
 test -z $OCI8_ORACLE_VERSION  OCI8_ORACLE_VERSION=7.3
-  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.11.1; then
-OCI8_ORACLE_VERSION=11.1
-  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.10.1; then
-dnl There is no case for Oracle 10.2. Oracle 10.2 libraries have a 10.1 suffix for drop-in compatibility with Oracle 10.1
-OCI8_ORACLE_VERSION=10.1
-  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.9.0; then
+  elif test -f $OCI8_LCS; then
+dnl Oracle 10g, 11g etc.  The x.2 version libraries are named x.1 for drop in compatibility
+OCI8_ORACLE_VERSION=`echo $OCI8_LCS | $PHP_OCI8_SED -e 's/.*\.\(.*\)\.1$/\1.1/'`
+  elif test -f $OCI8_LCS_BASE.9.0; then
 dnl There is no case for Oracle 9.2. Oracle 9.2 libraries have a 9.0 suffix for drop-in compatibility with Oracle 9.0
 OCI8_ORACLE_VERSION=9.0
-  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.8.0; then
+  elif test -f $OCI8_LCS_BASE.8.0; then
 OCI8_ORACLE_VERSION=8.1
-  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.1.0; then
+  elif test -f $OCI8_LCS_BASE.1.0; then
 OCI8_ORACLE_VERSION=8.0
   elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.a; then
 if test -f $OCI8_DIR/$OCI8_LIB_DIR/libcore4.a; then
@@ -97,7 +86,7 @@
   OCI8_ORACLE_VERSION=8.1
 fi
   else
-AC_MSG_ERROR(Oracle client libraries not found)
+AC_MSG_ERROR(Oracle libclntsh.$SHLIB_SUFFIX_NAME client library not found)
   fi
   AC_MSG_RESULT($OCI8_ORACLE_VERSION)
 ])
@@ -106,8 +95,8 @@
 dnl --with-oci8=shared,instantclient,/path/to/client/dir/lib
 dnl or
 dnl --with-oci8=shared,/path/to/oracle/home
-PHP_ARG_WITH(oci8, for Oracle (OCI8) support,
-[  --with-oci8[=DIR]   Include Oracle (OCI8) support. DIR defaults to \$ORACLE_HOME.
+PHP_ARG_WITH(oci8, for Oracle Database OCI8 support,
+[  --with-oci8[=DIR]   Include Oracle Database OCI8 support. DIR defaults to