From 1b2b848812146f051bb82bbb3a466ba13e569c24 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 22 Sep 2023 08:26:00 +0200 Subject: use oracle client library version 21.11 on x86_64, 19.19 on aarch64 use official Oracle Instant Client RPM --- failed.txt | 4 ++-- php80.spec | 57 ++++++++++++++++++++++++++++++++------------------------- 2 files changed, 34 insertions(+), 27 deletions(-) diff --git a/failed.txt b/failed.txt index 6fb2547..6258c28 100644 --- a/failed.txt +++ b/failed.txt @@ -5,14 +5,14 @@ $ grep -ar 'Tests failed' /var/lib/mock/*/build.log /var/lib/mock/el7x80/build.log:Tests failed : 0 /var/lib/mock/el8x80/build.log:Tests failed : 0 /var/lib/mock/el9x80/build.log:Tests failed : 0 -/var/lib/mock/fc36x80/build.log:Tests failed : 0 /var/lib/mock/fc37x80/build.log:Tests failed : 0 /var/lib/mock/fc38x80/build.log:Tests failed : 2 +/var/lib/mock/fc39x80/build.log:Tests failed : 2 el8x: 5 ext/standard/tests/strings/setlocale_variation2.phpt -fc38x: +fc38x, fc39x: 3 openssl_error_string() tests (OpenSSL >= 3.0) [ext/openssl/tests/openssl_error_string_basic_openssl3.phpt] 3 openssl_private_decrypt() tests [ext/openssl/tests/openssl_private_decrypt_basic.phpt] diff --git a/php80.spec b/php80.spec index e985627..5517d68 100644 --- a/php80.spec +++ b/php80.spec @@ -24,8 +24,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), you can disable using --without tests %bcond_without lsws @@ -69,7 +76,11 @@ %bcond_without firebird # Build ZTS extension or only NTS using --without zts +%ifarch x86_64 %bcond_without zts +%else +%bcond_with zts +%endif # Debug build, using --with debug %bcond_with debug @@ -107,7 +118,7 @@ Summary: PHP scripting language for creating dynamic web sites Name: php Version: %{upver}%{?rcver:~%{rcver}} -Release: 1%{?dist} +Release: 2%{?dist} # All files licensed under PHP version 3.01, except # Zend is licensed under Zend # TSRM is licensed under BSD @@ -384,6 +395,7 @@ Summary: Common files for PHP # regex, libmagic are licensed under BSD License: PHP and BSD +Requires: tzdata %if %{with libpcre} %global pcre2_buildver %(pkg-config --silence-errors --modversion libpcre2-8 2>/dev/null || echo 10.30) Requires: pcre2%{?_isa} >= %{pcre2_buildver} @@ -740,7 +752,14 @@ Interbase/Firebird databases. Summary: A module for PHP applications that use OCI8 databases # 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: php-pdo%{?_isa} = %{version}-%{release} Provides: php_database Provides: php-pdo_oci @@ -749,8 +768,6 @@ Obsoletes: php-pecl-oci8 <= %{oci8ver} Conflicts: php-pecl-oci8 > %{oci8ver} Provides: php-pecl(oci8) = %{oci8ver} Provides: php-pecl(oci8)%{?_isa} = %{oci8ver} -# Should requires libclntsh.so.18.3, but it's not provided by Oracle RPM. -AutoReq: 0 %if 0%{?rhel} == 7 Obsoletes: php53-oci8, php53u-oci8, php54-oci8, php54w-oci8, php55u-oci8, php55w-oci8, php56u-oci8, php56w-oci8 Obsoletes: php70u-oci8, php70w-oci8, php71u-oci8, php71w-oci8, php72u-oci8, php72w-oci8 @@ -767,13 +784,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: -- php-oci8 provides oci8 and pdo_oci extensions from php sources. -- 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 @@ -1473,13 +1486,8 @@ build --libdir=%{_libdir}/php \ --with-mysqli=shared,mysqlnd \ --with-mysql-sock=%{mysql_sock} \ %if %{with oci8} -%ifarch x86_64 - --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ - --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ -%else - --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ - --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ -%endif + --with-oci8=shared,instantclient,%{_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \ + --with-pdo-oci=shared,instantclient,%{_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \ %endif %if %{with firebird} --with-pdo-firebird=shared \ @@ -1616,13 +1624,8 @@ build --includedir=%{_includedir}/php-zts \ --with-mysql-sock=%{mysql_sock} \ --enable-mysqlnd-threading \ %if %{with oci8} -%ifarch x86_64 - --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ - --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ -%else - --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ - --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ -%endif + --with-oci8=shared,instantclient,%{_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \ + --with-pdo-oci=shared,instantclient,%{_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \ %endif %if %{with firebird} --with-pdo-firebird=shared \ @@ -2198,6 +2201,10 @@ fi %changelog +* Thu Sep 21 2023 Remi Collet - 8.0.30-2 +- use oracle client library version 21.11 on x86_64, 19.19 on aarch64 +- use official Oracle Instant Client RPM + * Thu Aug 3 2023 Remi Collet - 8.0.30-1 - Update to 8.0.30 - http://www.php.net/releases/8_0_30.php - move httpd/nginx wants directive to config files in /etc -- cgit