diff options
| author | Remi Collet <remi@remirepo.net> | 2023-09-22 10:26:56 +0200 | 
|---|---|---|
| committer | Remi Collet <remi@php.net> | 2023-09-22 10:26:56 +0200 | 
| commit | 996ce01045eb5c8c2adcfc1d870b3f9dc1fa357f (patch) | |
| tree | 2cd436530b88c9ae07a782ff8a38e2030f330596 | |
| parent | 4cd70b4fae36d30414edfb40fc06fe6c16da30fb (diff) | |
use official Oracle Instant Client RPM
| -rw-r--r-- | php-7.2.0-oci8conf.patch | 24 | ||||
| -rw-r--r-- | php.spec | 32 | 
2 files changed, 21 insertions, 35 deletions
| diff --git a/php-7.2.0-oci8conf.patch b/php-7.2.0-oci8conf.patch index 0ad16a1..d026575 100644 --- a/php-7.2.0-oci8conf.patch +++ b/php-7.2.0-oci8conf.patch @@ -10,26 +10,4 @@ diff -up ./ext/ldap/php_ldap.h.remi-oci8 ./ext/ldap/php_ldap.h   extern zend_module_entry ldap_module_entry;   #define ldap_module_ptr &ldap_module_entry -diff -up ./ext/oci8/config.m4.remi-oci8 ./ext/oci8/config.m4 ---- ./ext/oci8/config.m4.remi-oci8	2017-06-20 15:45:39.000000000 +0200 -+++ ./ext/oci8/config.m4	2017-06-20 16:55:01.640203868 +0200 -@@ -372,6 +372,7 @@ if test "$PHP_OCI8" != "no"; then -  -     dnl Header directory for Instant Client SDK RPM install -     OCISDKRPMINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!^/usr/lib/oracle/\(.*\)/client\('${PHP_OCI8_IC_LIBDIR_SUFFIX}'\)*/lib[/]*$!/usr/include/oracle/\1/client\2!'` -+    OCISDKRPMINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!^/usr/\(lib64\|lib\)/oracle/\(.*\)/\(client64\|client\)/lib[/]*$!/usr/include/oracle/\2/\3!'` -  -     dnl Header directory for Instant Client SDK zip file install -     OCISDKZIPINC=$PHP_OCI8_INSTANT_CLIENT/sdk/include -diff -up ./ext/pdo_oci/config.m4.remi-oci8 ./ext/pdo_oci/config.m4 ---- ./ext/pdo_oci/config.m4.remi-oci8	2017-06-20 16:55:01.640203868 +0200 -+++ ./ext/pdo_oci/config.m4	2017-06-20 17:16:03.053538358 +0200 -@@ -93,7 +93,7 @@ if test "$PHP_PDO_OCI" != "no"; then -  -     AC_MSG_CHECKING([for oci.h]) -     dnl Header directory for Instant Client SDK RPM install --    OCISDKRPMINC=`echo "$PDO_OCI_LIB_DIR" | $PHP_PDO_OCI_SED -e 's!^\(.*\)/lib/oracle/\(.*\)/\('${PDO_OCI_CLIENT_DIR}'\)/lib[/]*$!\1/include/oracle/\2/\3!'` -+    OCISDKRPMINC=`echo "$PDO_OCI_LIB_DIR" | $PHP_PDO_OCI_SED -e 's!^\(.*\)/\(lib64\|lib\)/oracle/\(.*\)/\('${PDO_OCI_CLIENT_DIR}'\)/lib[/]*$!\1/include/oracle/\3/\4!'` -  -     dnl Header directory for manual installation -     OCISDKMANINC=`echo "$PDO_OCI_LIB_DIR" | $PHP_PDO_OCI_SED -e 's!^\(.*\)/lib[/]*$!\1/include!'` + @@ -55,8 +55,15 @@  %global mysql_sock %(mysql_config --socket  2>/dev/null || echo /var/lib/mysql/mysql.sock) -%global oraclever 21.10 +%ifarch aarch64 +%global oraclever 19.19 +%global oraclelib 19.1 +%global oracledir 19.19 +%else +%global oraclever 21.11  %global oraclelib 21.1 +%global oracledir 21 +%endif  # Build for LiteSpeed Web Server (LSAPI)  %global with_lsws     1 @@ -646,7 +653,14 @@ Summary:        A module for PHP applications that use OCI8 databases  Group:          Development/Languages  # All files licensed under PHP version 3.01  License:        PHP +%ifarch aarch64 +BuildRequires:  oracle-instantclient%{oraclever}-devel +# Should requires libclntsh.so.19.1()(aarch-64), but it's not provided by Oracle RPM. +Requires:       libclntsh.so.%{oraclelib} +AutoReq:        0 +%else  BuildRequires:  oracle-instantclient-devel >= %{oraclever} +%endif  Requires:       %{?scl_prefix}php-pdo%{?_isa} = %{version}-%{release}  Provides:       %{?scl_prefix}php_database  Provides:       %{?scl_prefix}php-pdo_oci @@ -655,8 +669,6 @@ Obsoletes:      %{?scl_prefix}php-pecl-oci8         <= %{oci8ver}  Conflicts:      %{?scl_prefix}php-pecl-oci8         >  %{oci8ver}  Provides:       %{?scl_prefix}php-pecl(oci8)         = %{oci8ver}  Provides:       %{?scl_prefix}php-pecl(oci8)%{?_isa} = %{oci8ver} -# Should requires libclntsh.so.18.3, but it's not provided by Oracle RPM. -AutoReq:        0  %description oci8  The %{?scl_prefix}php-oci8 packages provides the OCI8 extension version %{oci8ver} @@ -666,13 +678,9 @@ The extension is linked with Oracle client libraries %{oraclever}  (Oracle Instant Client).  For details, see Oracle's note  "Oracle Client / Server Interoperability Support" (ID 207303.1). -You must install libclntsh.so.%{oraclelib} to use this package, provided -in the database installation, or in the free Oracle Instant Client -available from Oracle. - -Notice: -- %{?scl_prefix}php-oci8 provides oci8 and pdo_oci extensions from php sources. -- %{?scl_prefix}php-pecl-oci8 only provides oci8 extension. +You must install libclntsh.so.%{oraclelib} to use this package, +provided by Oracle Instant Client RPM available from Oracle on: +https://www.oracle.com/database/technologies/instant-client/downloads.html  Documentation is at http://php.net/oci8 and http://php.net/pdo_oci  %endif @@ -1286,8 +1294,8 @@ build --libdir=%{_libdir}/php \        --with-mysqli=shared,mysqlnd \        --with-mysql-sock=%{mysql_sock} \  %if %{with_oci8} -      --with-oci8=shared,instantclient,%{_root_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ -      --with-pdo-oci=shared,instantclient,%{_root_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ +         --with-oci8=shared,instantclient,%{_root_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \ +      --with-pdo-oci=shared,instantclient,%{_root_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \  %endif  %if %{with_interbase}        --with-interbase=shared \ | 
