]> granicus.if.org Git - php/commitdiff
64-bit related changes
authorAntony Dovgal <tony2001@php.net>
Sun, 12 Sep 2004 06:38:31 +0000 (06:38 +0000)
committerAntony Dovgal <tony2001@php.net>
Sun, 12 Sep 2004 06:38:31 +0000 (06:38 +0000)
./configure will now behave differently if $ORACLE_HOME/lib32 exists
(this mostly happens at Solaris AFAIK)

ext/oci8/config.m4

index adb60f587c01494a9a1d2934600d4edbf544c553..d2873a7969576c9328f0f5dad061448df3eb6c21 100644 (file)
@@ -18,21 +18,36 @@ AC_DEFUN(PHP_OCI_IF_DEFINED,[
   ])
 ])
 
+AC_DEFUN(AC_OCI8_CHECK_LIB_DIR,[
+  PHP_CHECK_64BIT([ TMP_OCI8_LIB_DIR=lib32 ], [ TMP_OCI8_LIB_DIR=lib ])
+  AC_MSG_CHECKING([OCI8 libraries dir])
+  if test -d "$OCI8_DIR/lib" -a ! -d "$OCI8_DIR/lib32"; then
+       OCI8_LIB_DIR=lib
+  elif ! test -d "$OCI8_DIR/lib" -a -d "$OCI8_DIR/lib32"; then
+       OCI8_LIB_DIR=lib32
+  elif test -d "$OCI8_DIR/lib" -a -d "$OCI8_DIR/lib32"; then
+    OCI8_LIB_DIR=$TMP_OCI8_LIB_DIR
+  else
+    AC_MSG_ERROR(Oracle-OCI8 libraries directory not found)
+  fi
+  AC_MSG_RESULT($OCI8_LIB_DIR)
+])
+
 AC_DEFUN(AC_OCI8_VERSION,[
   AC_MSG_CHECKING([Oracle version])
   if test -s "$OCI8_DIR/orainst/unix.rgs"; then
     OCI8_VERSION=`grep '"ocommon"' $OCI8_DIR/orainst/unix.rgs | sed 's/[ ][ ]*/:/g' | cut -d: -f 6 | cut -c 2-4`
     test -z "$OCI8_VERSION" && OCI8_VERSION=7.3
-  elif test -f $OCI8_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.10.1; then
+  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.10.1; then
     OCI8_VERSION=10.1    
-  elif test -f $OCI8_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.9.0; then
+  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.9.0; then
     OCI8_VERSION=9.0
-  elif test -f $OCI8_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.8.0; then
+  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.8.0; then
     OCI8_VERSION=8.1
-  elif test -f $OCI8_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.1.0; then
+  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.$SHLIB_SUFFIX_NAME.1.0; then
     OCI8_VERSION=8.0
-  elif test -f $OCI8_DIR/lib/libclntsh.a; then 
-    if test -f $OCI8_DIR/lib/libcore4.a; then 
+  elif test -f $OCI8_DIR/$OCI8_LIB_DIR/libclntsh.a; then 
+    if test -f $OCI8_DIR/$OCI8_LIB_DIR/libcore4.a; then 
       OCI8_VERSION=8.0
     else
       OCI8_VERSION=8.1
@@ -41,7 +56,7 @@ AC_DEFUN(AC_OCI8_VERSION,[
     AC_MSG_ERROR(Oracle-OCI8 needed libraries not found)
   fi
   AC_MSG_RESULT($OCI8_VERSION)
-])                                                                                                                                                                
+])
 
 PHP_ARG_WITH(oci8, for Oracle-OCI8 support,
 [  --with-oci8[=DIR]       Include Oracle-oci8 support. Default DIR is ORACLE_HOME.])
@@ -55,6 +70,8 @@ if test "$PHP_OCI8" != "no"; then
   fi
   AC_MSG_RESULT($OCI8_DIR)
 
+  AC_OCI8_CHECK_LIB_DIR($OCI8_DIR)
+
   if test -d "$OCI8_DIR/rdbms/public"; then
     PHP_ADD_INCLUDE($OCI8_DIR/rdbms/public)
     OCI8_INCLUDES="$OCI8_INCLUDES -I$OCI8_DIR/rdbms/public"
@@ -72,24 +89,25 @@ if test "$PHP_OCI8" != "no"; then
     OCI8_INCLUDES="$OCI8_INCLUDES -I$OCI8_DIR/plsql/public"
   fi
 
-  if test -f "$OCI8_DIR/lib/sysliblist"; then
-    PHP_EVAL_LIBLINE(`cat $OCI8_DIR/lib/sysliblist`, OCI8_SYSLIB)
-  elif test -f "$OCI8_DIR/rdbms/lib/sysliblist"; then
-    PHP_EVAL_LIBLINE(`cat $OCI8_DIR/rdbms/lib/sysliblist`, OCI8_SYSLIB)
+  if test -f "$OCI8_DIR/$OCI8_LIB_DIR/sysliblist"; then
+    PHP_EVAL_LIBLINE(`cat $OCI8_DIR/$OCI8_LIB_DIR/sysliblist`, OCI8_SYSLIB)
+  elif test -f "$OCI8_DIR/rdbms/$OCI8_LIB_DIR/sysliblist"; then
+    PHP_EVAL_LIBLINE(`cat $OCI8_DIR/rdbms/$OCI8_LIB_DIR/sysliblist`, OCI8_SYSLIB)
   fi
 
   AC_OCI8_VERSION($OCI8_DIR)
+
   case $OCI8_VERSION in
     8.0)
       PHP_ADD_LIBRARY_WITH_PATH(nlsrtl3, "", OCI8_SHARED_LIBADD)
       PHP_ADD_LIBRARY_WITH_PATH(core4, "", OCI8_SHARED_LIBADD)
       PHP_ADD_LIBRARY_WITH_PATH(psa, "", OCI8_SHARED_LIBADD)
-      PHP_ADD_LIBRARY_WITH_PATH(clntsh, $OCI8_DIR/lib, OCI8_SHARED_LIBADD)
+      PHP_ADD_LIBRARY_WITH_PATH(clntsh, $OCI8_DIR/$OCI8_LIB_DIR, OCI8_SHARED_LIBADD)
       ;;
 
     8.1)
       PHP_ADD_LIBRARY(clntsh, 1, OCI8_SHARED_LIBADD)
-      PHP_ADD_LIBPATH($OCI8_DIR/lib, OCI8_SHARED_LIBADD)
+      PHP_ADD_LIBPATH($OCI8_DIR/$OCI8_LIB_DIR, OCI8_SHARED_LIBADD)
 
       dnl 
       dnl OCI_ATTR_STATEMENT is not available in all 8.1.x versions
@@ -99,7 +117,7 @@ if test "$PHP_OCI8" != "no"; then
 
     9.0)
       PHP_ADD_LIBRARY(clntsh, 1, OCI8_SHARED_LIBADD)
-      PHP_ADD_LIBPATH($OCI8_DIR/lib, OCI8_SHARED_LIBADD)
+      PHP_ADD_LIBPATH($OCI8_DIR/$OCI8_LIB_DIR, OCI8_SHARED_LIBADD)
       AC_DEFINE(HAVE_OCI8_ATTR_STATEMENT,1,[ ])
 
       dnl These functions are only available in version >= 9.2
@@ -110,16 +128,16 @@ if test "$PHP_OCI8" != "no"; then
           AC_DEFINE(HAVE_OCI_9_2,1,[ ])
           OCI8_VERSION=9.2
         ], [], [
-          -L$OCI8_DIR/lib $OCI8_SHARED_LIBADD
+          -L$OCI8_DIR/$OCI8_LIB_DIR $OCI8_SHARED_LIBADD
         ])
       ], [], [
-        -L$OCI8_DIR/lib $OCI8_SHARED_LIBADD
+        -L$OCI8_DIR/$OCI8_LIB_DIR $OCI8_SHARED_LIBADD
       ])
       ;;
       
     10.1)
       PHP_ADD_LIBRARY(clntsh, 1, OCI8_SHARED_LIBADD)
-      PHP_ADD_LIBPATH($OCI8_DIR/lib, OCI8_SHARED_LIBADD)
+      PHP_ADD_LIBPATH($OCI8_DIR/$OCI8_LIB_DIR, OCI8_SHARED_LIBADD)
       AC_DEFINE(HAVE_OCI8_ATTR_STATEMENT,1,[ ])
       AC_DEFINE(HAVE_OCI_9_2,1,[ ])
       ;;
@@ -140,10 +158,10 @@ if test "$PHP_OCI8" != "no"; then
       PHP_ADD_LIBRARY(ocijdbc8, 1, OCI8_SHARED_LIBADD)
       AC_DEFINE(HAVE_OCI8_TEMP_LOB,1,[ ])
     ], [], [
-      -L$OCI8_DIR/lib $OCI8_SHARED_LIBADD
+      -L$OCI8_DIR/$OCI8_LIB_DIR $OCI8_SHARED_LIBADD
     ])
   ], [
-    -L$OCI8_DIR/lib $OCI8_SHARED_LIBADD
+    -L$OCI8_DIR/$OCI8_LIB_DIR $OCI8_SHARED_LIBADD
   ])
 
   dnl
@@ -153,7 +171,7 @@ if test "$PHP_OCI8" != "no"; then
   [
     AC_DEFINE(PHP_OCI8_HAVE_COLLECTIONS,1,[ ])
   ], [], [
-    -L$OCI8_DIR/lib $OCI8_SHARED_LIBADD
+    -L$OCI8_DIR/$OCI8_LIB_DIR $OCI8_SHARED_LIBADD
   ])