From 51c5220adbf816edb0c5fdaccc63d18c777f9045 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Mon, 7 Apr 2008 21:55:20 +0000 Subject: [PATCH] PECL #13523 (x86_64 build). Make OCI8 buildable with PHP 4.3.9. --- ext/oci8/config.m4 | 6 +++--- ext/oci8/oci8_collection.c | 12 ++++++++++++ ext/oci8/package2.xml | 4 ++-- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/ext/oci8/config.m4 b/ext/oci8/config.m4 index 062972c07f..d97f95c5ca 100644 --- a/ext/oci8/config.m4 +++ b/ext/oci8/config.m4 @@ -134,8 +134,8 @@ if test "$PHP_OCI8" != "no"; then IFS=$ac_IFS oci8_php_version=`expr [$]1 \* 1000000 + [$]2 \* 1000 + [$]3` - if test "$oci8_php_version" -le "4003010"; then - AC_MSG_ERROR([You need at least PHP 4.3.10 to be able to use this version of OCI8. PHP $php_version found]) + if test "$oci8_php_version" -lt "4003009"; then + AC_MSG_ERROR([You need at least PHP 4.3.9 to be able to use this version of OCI8. PHP $php_version found]) else AC_MSG_RESULT([$php_version, ok]) fi @@ -328,7 +328,7 @@ dnl version in /usr/lib AC_MSG_CHECKING([Oracle Instant Client SDK header directory]) dnl Header directory for Instant Client SDK RPM install - OCISDKRPMINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!^/usr/lib/oracle/\(.*\)/client/lib[/]*$!/usr/include/oracle/\1/client!'` + OCISDKRPMINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!^/usr/lib/oracle/\(.*\)/client\('${LIBDIR_SUFFIX}'\)*/lib[/]*$!/usr/include/oracle/\1/client\2!'` dnl Header directory for Instant Client SDK zip file install OCISDKZIPINC=$PHP_OCI8_INSTANT_CLIENT/sdk/include diff --git a/ext/oci8/oci8_collection.c b/ext/oci8/oci8_collection.c index d9cb796a9c..0475bd2136 100644 --- a/ext/oci8/oci8_collection.c +++ b/ext/oci8/oci8_collection.c @@ -344,7 +344,13 @@ int php_oci_collection_append_number(php_oci_collection *collection, char *numbe OCINumber oci_number; php_oci_connection *connection = collection->connection; +#if (PHP_MAJOR_VERSION == 4 && PHP_MINOR_VERSION == 3 && PHP_RELEASE_VERSION < 10) + /* minimum PHP version ext/oci8/config.m4 accepts is 4.3.9 */ + element_double = strtod(number, NULL); +#else + /* zend_strtod was introduced in PHP 4.3.10 */ element_double = zend_strtod(number, NULL); +#endif PHP_OCI_CALL_RETURN(connection->errcode, OCINumberFromReal, (connection->err, &element_double, sizeof(double), &oci_number)); @@ -626,7 +632,13 @@ int php_oci_collection_element_set_number(php_oci_collection *collection, long i OCINumber oci_number; php_oci_connection *connection = collection->connection; +#if (PHP_MAJOR_VERSION == 4 && PHP_MINOR_VERSION == 3 && PHP_RELEASE_VERSION < 10) + /* minimum PHP version ext/oci8/config.m4 accepts is 4.3.9 */ + element_double = strtod(number, NULL); +#else + /* zend_strtod was introduced in PHP 4.3.10 */ element_double = zend_strtod(number, NULL); +#endif PHP_OCI_CALL_RETURN(connection->errcode, OCINumberFromReal, (connection->err, &element_double, sizeof(double), &oci_number)); diff --git a/ext/oci8/package2.xml b/ext/oci8/package2.xml index 974432af56..b38924a49f 100644 --- a/ext/oci8/package2.xml +++ b/ext/oci8/package2.xml @@ -298,7 +298,7 @@ Refine DRCP connection pooling functionality - 4.3.11 + 4.3.9 6.0.0 6.0.0 @@ -309,7 +309,7 @@ Refine DRCP connection pooling functionality oci8 - + -- 2.50.1