]> git.pld-linux.org Git - packages/php.git/blobdiff - php.spec
mod_php configuration fixed
[packages/php.git] / php.spec
index 7aa06b3b2e1178476e67e282dce52ef37c40ff2f..fefb54de55b507c45c70b1540ff54da07cc022d9 100644 (file)
--- a/php.spec
+++ b/php.spec
@@ -6,8 +6,6 @@
 # - update imap myrights patch (needs api porting)
 # --with-libmbfl=DIR      MBSTRING: Use external libmbfl.  DIR is the libmbfl base install directory BUNDLED
 # --with-onig=DIR         MBSTRING: Use external oniguruma. DIR is the oniguruma install prefix.
-# UNPACKAGED EXTENSION NOTES:
-# - com_dotnet is Win32-only
 # TODO:
 # - fileinfo extension bundles magic db in library: data_file.c (dump of magic.mgc) is 14M
 #   - 2.3M fileinfo.so php54-fileinfo-5.4.6-0.15.x86_64
 # - ttyname_r() misdetected http://bugs.php.net/bug.php?id=48820
 # - wddx: restore session support (not compiled in due DL extension check)
 # - modularize standard (output from pure php -m)?
-# - WARNING: Phar: sha256/sha512 signature support disabled if ext/hash is
-#   built shared, also PHAR_HAVE_OPENSSL is false if openssl is built shared.
-#   make it runtime dep and add Suggests (or php warning messages)
 # - some mods should be shared:
 #$ php -m
 # [PHP Modules]
 # Core
 # date
 # libxml
-# phpdbg_webhelper
 # Reflection
 # standard
 #
@@ -79,8 +73,7 @@
 %bcond_without mbstring        # without mbstring extension module
 %bcond_without mcrypt          # without mbcrypt extension module
 %bcond_without mhash           # without mhash extension (supported by hash extension)
-%bcond_with    mysql           # without ext/mysql support (ext removed)
-%bcond_without mysqli          # without mysqli support (Requires mysql > 4.1)
+%bcond_without mysqli          # without mysqli support (Requires mysql >= 4.1)
 %bcond_without mysqlnd         # without mysqlnd support in mysql related extensions
 %bcond_with    oci             # with Oracle oci8 extension module     (BR: proprietary libs)
 %bcond_without odbc            # without ODBC extension module
 %bcond_without snmp            # without SNMP extension module
 %bcond_without sqlite2         # without SQLite extension module
 %bcond_without sqlite3         # without SQLite3 extension module
-%bcond_with    sybase_ct       # without Sybase-CT extension module (ext removed in 7.0.0)
 %bcond_without tidy            # without Tidy extension module
 %bcond_without wddx            # without WDDX extension module
 %bcond_without xmlrpc          # without XML-RPC extension module
 %undefine      with_filter
 %endif
 
-%define                rel     1
-%define                subver  RC3
 %define                orgname php
 %define                ver_suffix 70
 %define                php_suffix %{!?with_default_php:%{ver_suffix}}
@@ -154,18 +144,17 @@ Summary(pt_BR.UTF-8):     A linguagem de script PHP
 Summary(ru.UTF-8):     PHP Версии 7 - язык препроцессирования HTML-файлов, выполняемый на сервере
 Summary(uk.UTF-8):     PHP Версії 7 - мова препроцесування HTML-файлів, виконувана на сервері
 Name:          %{orgname}%{php_suffix}
-Version:       7.0.0
-Release:       %{rel}.%{subver}
+Version:       7.0.1
+Release:       2
 Epoch:         4
 # All files licensed under PHP version 3.01, except
 # Zend is licensed under Zend
 # TSRM is licensed under BSD
 License:       PHP 3.01 and Zend and BSD
 Group:         Libraries
-#Source0:      http://www.php.net/distributions/%{orgname}-%{version}.tar.xz
-Source0:       https://downloads.php.net/~ab/php-%{version}%{subver}.tar.xz
-# Source0-md5: 8ee634c37dabd88562e2d3ff978cfbe1
-Source2:       %{orgname}-mod_%{orgname}.conf
+Source0:       http://www.php.net/distributions/%{orgname}-%{version}.tar.xz
+# Source0-md5: 23aba67d57d53145becacb982ed498d5
+Source2:       %{orgname}-mod_php.conf
 Source3:       %{orgname}-cgi-fcgi.ini
 Source4:       %{orgname}-apache.ini
 Source5:       %{orgname}-cli.ini
@@ -198,7 +187,6 @@ Patch27:    %{orgname}-config-dir.patch
 Patch29:       %{orgname}-fcgi-graceful.patch
 Patch31:       %{orgname}-fcgi-error_log-no-newlines.patch
 Patch34:       %{orgname}-libtool.patch
-Patch35:       %{orgname}-tds.patch
 #Patch36:      %{orgname}-mysql-charsetphpini.patch
 #Patch37:      %{orgname}-mysqli-charsetphpini.patch
 #Patch38:      %{orgname}-pdo_mysql-charsetphpini.patch
@@ -225,6 +213,8 @@ Patch67:    mysql-lib-ver-mismatch.patch
 Patch68:       php-mysql-ssl-context.patch
 Patch69:       fpm-conf-split.patch
 Patch70:       mysqlnd-ssl.patch
+Patch71:       libdb-info.patch
+Patch72:       phar-hash-shared.patch
 URL:           http://www.php.net/
 %{?with_interbase:%{!?with_interbase_inst:BuildRequires:       Firebird-devel >= 1.0.2.908-2}}
 %{?with_pspell:BuildRequires:  aspell-devel >= 2:0.50.0}
@@ -238,11 +228,12 @@ BuildRequires:    db-devel >= 4.0
 BuildRequires: elfutils-devel
 %{?with_enchant:BuildRequires: enchant-devel >= 1.1.3}
 %{?with_kerberos5:BuildRequires:       heimdal-devel}
+%{?with_fpm:BuildRequires:     libapparmor-devel}
 %{?with_system_libzip:BuildRequires:   libzip-devel >= 0.10.1-2}
 %{!?with_mysqlnd:BuildRequires:        mysql-devel}
 BuildRequires: pkgconfig
 BuildRequires: sed >= 4.0
-%if %{with sybase_ct} || %{with pdo_dblib}
+%if %{with pdo_dblib}
 BuildRequires: freetds-devel >= 0.82
 %endif
 BuildRequires: freetype-devel >= 1:2.5.1
@@ -269,7 +260,7 @@ BuildRequires:      libxslt-devel >= 1.1.0
 %{?with_mm:BuildRequires:      mm-devel >= 1.3.0}
 %{?with_ldap:BuildRequires:    openldap-devel >= 2.3.0}
 %if %{with openssl} || %{with ldap}
-BuildRequires: openssl-devel >= 0.9.7d
+BuildRequires: openssl-devel >= 0.9.8
 %endif
 %{?with_gcov:BuildRequires:    lcov}
 %{?with_snmp:%{?with_tests:BuildRequires:      mibs-net-snmp}}
@@ -278,7 +269,6 @@ BuildRequires:      openssl-devel >= 0.9.7d
 BuildRequires: pam-devel
 %{?with_pcre:BuildRequires:    pcre-devel >= 8.10}
 BuildRequires: pkgconfig
-%{?with_pgsql:BuildRequires:   postgresql-backend-devel >= 7.2}
 %{?with_pgsql:BuildRequires:   postgresql-devel}
 BuildRequires: readline-devel
 %{?with_recode:BuildRequires:  recode-devel >= 3.5d-3}
@@ -307,9 +297,9 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                _sysconfdir                     %{php_sysconfdir}
 
 # must be in sync with source. extra check ensuring that it is so is done in %%build
-%define                php_api_version         20131218
-%define                zend_module_api         20141001
-%define                zend_extension_api      320140815
+%define                php_api_version         20151012
+%define                zend_module_api         20151012
+%define                zend_extension_api      320151012
 %define                php_pdo_api_version     20150127
 
 # Extension versions
@@ -1100,27 +1090,6 @@ support.
 %description mcrypt -l pl.UTF-8
 Moduł PHP dodający możliwość szyfrowania poprzez bibliotekę mcrypt.
 
-%package mysql
-Summary:       MySQL database module for PHP
-Summary(pl.UTF-8):     Moduł bazy danych MySQL dla PHP
-Summary(pt_BR.UTF-8):  Um módulo para aplicações PHP que usam bancos de dados MySQL
-Group:         Libraries
-URL:           http://www.php.net/manual/en/book.mysql.php
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
-%{?with_mysqlnd:Requires:      %{name}-mysqlnd = %{epoch}:%{version}-%{release}}
-Provides:      php(mysql)
-Obsoletes:     php-mysql < 4:5.3.28-7
-
-%description mysql
-This is a dynamic shared object (DSO) for PHP that will add MySQL
-database support.
-
-%description mysql -l pl.UTF-8
-Moduł PHP umożliwiający dostęp do bazy danych MySQL.
-
-%description mysql -l pt_BR.UTF-8
-Um módulo para aplicações PHP que usam bancos de dados MySQL.
-
 %package mysqli
 Summary:       MySQLi module for PHP
 Summary(pl.UTF-8):     Moduł MySQLi dla PHP
@@ -1472,6 +1441,7 @@ Group:            Libraries
 URL:           http://www.php.net/manual/en/book.phar.php
 Requires:      %{name}-common = %{epoch}:%{version}-%{release}
 Requires:      %{name}-spl = %{epoch}:%{version}-%{release}
+Requires:      %{name}-hash = %{epoch}:%{version}-%{release}
 Suggests:      %{name}-cli
 # zlib is required by phar program, but as phar cli is optional should the dep be too
 Suggests:      %{name}-zlib
@@ -1703,24 +1673,6 @@ baz danych. SQLite sam jest serwerem. Biblioteka SQLite czyta i
 zapisuje dane bezpośrednio z/do plików baz danych znajdujących się na
 dysku.
 
-%package sybase-ct
-Summary:       Sybase-CT extension module for PHP
-Summary(pl.UTF-8):     Moduł Sybase-CT dla PHP
-Group:         Libraries
-URL:           http://www.php.net/manual/en/book.sybase.php
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
-Provides:      php(sybase-ct)
-Obsoletes:     php-sybase
-Obsoletes:     php-sybase-ct < 4:5.3.28-7
-
-%description sybase-ct
-This is a dynamic shared object (DSO) for PHP that will add Sybase and
-MS SQL databases support through CT-lib.
-
-%description sybase-ct -l pl.UTF-8
-Moduł PHP dodający obsługę baz danych Sybase oraz MS SQL poprzez
-CT-lib.
-
 %package sysvmsg
 Summary:       SysV msg extension module for PHP
 Summary(pl.UTF-8):     Moduł SysV msg dla PHP
@@ -1968,12 +1920,7 @@ compression support to PHP.
 Moduł PHP umożliwiający używanie kompresji zlib.
 
 %prep
-%if 1
-%setup -q -n %{orgname}-%{version}%{?subver}
-%else
-%setup -qc -n %{orgname}-%{version}
-mv php-src-*/* .
-%endif
+%setup -q -n %{orgname}-%{version}
 cp -p php.ini-production php.ini
 %patch0 -p1
 %patch1 -p1
@@ -2000,7 +1947,6 @@ cp -p php.ini-production php.ini
 %if "%{pld_release}" != "ac"
 %patch34 -p1
 %endif
-%{?with_sybase_ct:%patch35 -p1}
 #%patch36 -p1
 #%patch37 -p1
 #%patch38 -p1
@@ -2044,12 +1990,17 @@ exit 1
 %patch67 -p1
 #%patch68 -p1 DROP or update to 7.0 APIs
 %patch70 -p1
+%patch71 -p1
+%patch72 -p1
 
 sed -i -e '/PHP_ADD_LIBRARY_WITH_PATH/s#xmlrpc,#xmlrpc-epi,#' ext/xmlrpc/config.m4
 
 # cleanup backups after patching
 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
 
+# com_dotnet is Win32-only
+%{__rm} -r ext/com_dotnet
+
 # conflict seems to be resolved by recode patches
 %{__rm} ext/recode/config9.m4
 
@@ -2109,13 +2060,31 @@ mv Zend/tests/bug39438.phpt{,.disable}
 %{__rm} -r ext/sqlite3/tests
 %endif
 
+# ----- Manage known as failed test -------
+# affected by systzdata patch
+%{__rm} ext/date/tests/timezone_location_get.phpt
+%{__rm} ext/date/tests/timezone_version_get.phpt
+%{__rm} ext/date/tests/timezone_version_get_basic1.phpt
+# Should be skipped but fails sometime
+%{__rm} ext/standard/tests/file/file_get_contents_error001.phpt
+# fails sometimes
+%{__rm} ext/sockets/tests/mcast_ipv?_recv.phpt
+# causes stack exhausion
+%{__rm} Zend/tests/bug54268.phpt
+%{__rm} Zend/tests/bug68412.phpt
+
+# avoid issues when two builds run simultaneously
+%ifarch %{x8664}
+sed -e 's/64321/64322/' -i ext/openssl/tests/*.phpt
+%endif
+
 # skip XFAILs
 # no point testing stuff that is knowingly broken
-find -name '*.phpt' | xargs grep XFAIL -l | xargs rm -v
+find -name '*.phpt' | xargs grep '^--XFAIL--' -l | xargs rm -v
 
 env \
 %ifarch %{ix86}
-ix86= x8664=:
+ix86= x8664=: \
 %endif
 %ifarch %{x8664}
 ix86=: x8664= \
@@ -2390,7 +2359,6 @@ for sapi in $sapis; do
        %{?with_recode:--with-recode=shared} \
        %{__with_without ereg regex system} \
        %{?with_snmp:--with-snmp=shared} \
-       %{?with_sybase_ct:--with-sybase-ct=shared,/usr} \
        %{!?with_pdo_sqlite:--without-pdo-sqlite} \
        %{__with_without sqlite3 sqlite3 shared,/usr} \
        %{?with_tidy:--with-tidy=shared} \
@@ -2482,7 +2450,7 @@ generate_inifiles() {
                [ "$mod" = "spl" ] && conf="SPL.ini"
                # session needs to be loaded before php-pecl-http, php-pecl-memcache, php-pecl-session_mysql
                [ "$mod" = "session" ] && conf="Session.ini"
-               # mysqlnd needs to be loaded before mysql,mysqli,pdo_mysqli
+               # mysqlnd needs to be loaded before mysqli,pdo_mysqli
                [ "$mod" = "mysqlnd" ] && conf="MySQLND.ini"
                echo "+ $conf"
                cat > conf.d/$conf <<-EOF
@@ -2512,6 +2480,7 @@ exit 1
 cat <<'EOF' > run-tests.sh
 #!/bin/sh
 export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
+export SKIP_ONLINE_TESTS=1
 unset TZ LANG LC_ALL || :
 %{__make} test \
        EXTENSION_DIR=modules \
@@ -2567,7 +2536,7 @@ v=$(echo %{version} | cut -d. -f1-2)
 %if %{with apache2}
 libtool --mode=install install -p sapi/apache2handler/libphp7.la $RPM_BUILD_ROOT%{_libdir}/apache
 mv $RPM_BUILD_ROOT%{_libdir}/apache/libphp7{,-$v}.so
-ln -s libphp7-$v.so $RPM_BUILD_ROOT%{_libdir}/apache/libphp7.so
+ln -s libphp7-$v.so $RPM_BUILD_ROOT%{_libdir}/apache/mod_php.so
 %endif
 
 # install litespeed sapi
@@ -2597,11 +2566,11 @@ cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/php-cgi-fcgi.ini
 
 # install FCGI PM
 %if %{with fpm}
-install -d $RPM_BUILD_ROOT{%{_sysconfdir}/fpm.d,%{_sbindir}}
+install -d $RPM_BUILD_ROOT{%{_sysconfdir}/php-fpm.d,%{_sbindir}}
 libtool --mode=install install -p sapi/fpm/php-fpm $RPM_BUILD_ROOT%{_sbindir}/%{name}-fpm
 cp -p sapi/fpm/php-fpm.8 $RPM_BUILD_ROOT%{_mandir}/man8/%{name}-fpm.8
 cp -p sapi/fpm/php-fpm.conf $RPM_BUILD_ROOT%{_sysconfdir}
-cp -p sapi/fpm/www.conf $RPM_BUILD_ROOT%{_sysconfdir}/fpm.d
+cp -p sapi/fpm/www.conf $RPM_BUILD_ROOT%{_sysconfdir}/php-fpm.d
 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
 install -p %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-fpm
 install -d $RPM_BUILD_ROOT/etc/logrotate.d
@@ -2612,9 +2581,9 @@ cp -p %{SOURCE11} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}-fpm
 
 %{__sed} -i -e '
        s#/usr/lib/php#%{php_extensiondir}#
-       s#/etc/php#%{_sysconfdir}#
+       s#/etc/php/#%{_sysconfdir}/#
        s#@processname@#%{name}-fpm#g
-' $RPM_BUILD_ROOT{/etc/{rc.d/init.d/%{name}-fpm,logrotate.d/%{name}-fpm},%{_sysconfdir}/php-fpm.conf,%{_sysconfdir}/fpm.d/www.conf}
+' $RPM_BUILD_ROOT{/etc/{rc.d/init.d/%{name}-fpm,logrotate.d/%{name}-fpm},%{_sysconfdir}/php-fpm.conf,%{_sysconfdir}/php-fpm.d/www.conf}
 %endif
 
 # install Embedded API
@@ -2775,6 +2744,9 @@ if [ ! -e /usr/share/browscap/php_browscap.ini ]; then
        %{__sed} -i -e 's#^browscap = /usr/share/browscap/php_browscap.ini#;&#' %{_sysconfdir}/php.ini
 fi
 
+%triggerpostun -n apache-mod_%{name} -- apache-mod_%{name} < 4:7.0.0-2.RC4
+sed -i -e 's#modules/libphp[57].so#modules/mod_php.so#g' /etc/httpd/conf.d/*_mod_php.conf
+
 # common macros called at extension post/postun scriptlet
 %define        extension_scripts() \
 %post %1 \
@@ -2813,7 +2785,6 @@ fi
 %extension_scripts ldap
 %extension_scripts mbstring
 %extension_scripts mcrypt
-%extension_scripts mysql
 %extension_scripts mysqli
 %extension_scripts mysqlnd
 %extension_scripts oci8
@@ -2843,7 +2814,6 @@ fi
 %extension_scripts sockets
 %extension_scripts spl
 %extension_scripts sqlite3
-%extension_scripts sybase-ct
 %extension_scripts sysvmsg
 %extension_scripts sysvsem
 %extension_scripts sysvshm
@@ -2864,7 +2834,7 @@ fi
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/httpd/conf.d/*_mod_php.conf
 %dir %{_sysconfdir}/apache2handler.d
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php-apache2handler.ini
-%attr(755,root,root) %{_libdir}/apache/libphp7.so
+%attr(755,root,root) %{_libdir}/apache/mod_php.so
 %attr(755,root,root) %{_libdir}/apache/libphp7-*.*.so
 %endif
 
@@ -2905,9 +2875,9 @@ fi
 %files fpm
 %defattr(644,root,root,755)
 %doc sapi/fpm/{CREDITS,LICENSE}
-%dir %{_sysconfdir}/fpm.d
+%dir %{_sysconfdir}/php-fpm.d
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php-fpm.conf
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fpm.d/www.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php-fpm.d/www.conf
 %attr(755,root,root) %{_sbindir}/%{name}-fpm
 %{_mandir}/man8/%{name}-fpm.8*
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}-fpm
@@ -3142,14 +3112,6 @@ fi
 %attr(755,root,root) %{php_extensiondir}/mcrypt.so
 %endif
 
-%if %{with mysql}
-%files mysql
-%defattr(644,root,root,755)
-%doc ext/mysql/CREDITS
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mysql.ini
-%attr(755,root,root) %{php_extensiondir}/mysql.so
-%endif
-
 %if %{with mysqli}
 %files mysqli
 %defattr(644,root,root,755)
@@ -3387,14 +3349,6 @@ fi
 %attr(755,root,root) %{php_extensiondir}/sqlite3.so
 %endif
 
-%if %{with sybase_ct}
-%files sybase-ct
-%defattr(644,root,root,755)
-%doc ext/sybase_ct/CREDITS
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/sybase_ct.ini
-%attr(755,root,root) %{php_extensiondir}/sybase_ct.so
-%endif
-
 %files sysvmsg
 %defattr(644,root,root,755)
 %doc ext/sysvmsg/CREDITS
This page took 0.043761 seconds and 4 git commands to generate.