X-Git-Url: https://git.tld-linux.org/?a=blobdiff_plain;f=php.spec;h=4f270f6c5ec3c70e41931c488e8245c032c566f8;hb=cf803f4380625807621480d31ea3fda3a7e703d8;hp=3118228097f8587917aead8346cf9ce3cfed8bd4;hpb=cbb351308ea3449c2411290c1fcf88886d2ae30c;p=packages%2Fphp.git diff --git a/php.spec b/php.spec index 3118228..4f270f6 100644 --- a/php.spec +++ b/php.spec @@ -24,9 +24,6 @@ # standard # # Conditional build: -# - packaging options -%bcond_without alternatives # use alternatives system to select default phar and php-fpm -%bcond_with default_php # build this PHP as default PHP in system (disables alternatives) # - General options: %bcond_without embed # disable building Embedded API %bcond_with gcov # Enable Code coverage reporting @@ -111,10 +108,6 @@ %undefine with_litespeed %endif -%if %{with default_php} -%undefine with_alternatives -%endif - # mm is not thread safe %if %{with zts} %undefine with_mm @@ -141,8 +134,7 @@ %endif %define orgname php -%define ver_suffix 70 -%define php_suffix %{!?with_default_php:%{ver_suffix}} +%define php_suffix 70 Summary: PHP: Hypertext Preprocessor Summary(fr.UTF-8): Le langage de script embarque-HTML PHP Summary(pl.UTF-8): Język skryptowy PHP @@ -150,7 +142,7 @@ 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.15 +Version: 7.0.25 Release: 1 Epoch: 4 # All files licensed under PHP version 3.01, except @@ -159,7 +151,7 @@ Epoch: 4 License: PHP 3.01 and Zend and BSD Group: Libraries Source0: http://www.php.net/distributions/%{orgname}-%{version}.tar.xz -# Source0-md5: dca23412f3e3b3987e582091b751925d +# Source0-md5: 93e84a3997a411edd27abd3f148f6794 Source2: %{orgname}-mod_php.conf Source3: %{orgname}-cgi-fcgi.ini Source4: %{orgname}-apache.ini @@ -171,7 +163,6 @@ Source13: dep-tests.sh Source14: skip-tests.sh Patch0: %{orgname}-shared.patch Patch1: %{orgname}-tld.patch -Patch2: %{orgname}-mail.patch Patch3: %{orgname}-link-libs.patch Patch4: intl-stdc++.patch Patch5: %{orgname}-filter-shared.patch @@ -186,7 +177,7 @@ Patch17: %{orgname}-readline.patch Patch18: %{orgname}-nohttpd.patch Patch21: %{orgname}-dba-link.patch Patch22: %{orgname}-both-apxs.patch -Patch23: %{orgname}-builddir.patch +Patch23: %{orgname}-paths.patch Patch24: %{orgname}-zlib-for-getimagesize.patch Patch25: %{orgname}-stupidapache_version.patch Patch26: %{orgname}-pear.patch @@ -201,8 +192,6 @@ Patch41: %{orgname}-fpm-config.patch Patch42: %{orgname}-fpm-shared.patch Patch43: %{orgname}-silent-session-cleanup.patch Patch44: %{orgname}-include_path.patch -Patch45: %{orgname}-imap-annotations.patch -Patch46: %{orgname}-imap-myrights.patch Patch47: suhosin.patch Patch50: extension-shared-optional-dep.patch Patch51: spl-shared.patch @@ -210,13 +199,10 @@ Patch52: pcre-shared.patch Patch53: fix-test-run.patch Patch55: bug-52078-fileinode.patch Patch59: %{orgname}-systzdata.patch -Patch60: %{orgname}-oracle-instantclient.patch Patch62: mcrypt-libs.patch Patch65: system-libzip.patch Patch66: php-db.patch Patch67: mysql-lib-ver-mismatch.patch -# https://bugs.php.net/bug.php?id=68344 -Patch68: php-mysql-ssl-context.patch Patch69: fpm-conf-split.patch Patch70: mysqlnd-ssl.patch Patch71: libdb-info.patch @@ -258,7 +244,6 @@ BuildRequires: libpng-devel >= 1.0.8 %{?with_webp:BuildRequires: libwebp-devel} BuildRequires: tokyocabinet-devel BuildRequires: libtool >= 2:2.4.6 -%endif BuildRequires: libxml2-devel >= 1:2.7.6-4 BuildRequires: libxslt-devel >= 1.1.0 %{?with_mm:BuildRequires: mm-devel >= 1.3.0} @@ -298,7 +283,8 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define php_sysconfdir /etc/%{name} %define php_extensiondir %{_libdir}/%{name} -%define _sysconfdir %{php_sysconfdir} +%define php_datadir /usr/share/php/%{name} +%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 20151012 @@ -438,7 +424,7 @@ Summary: PHP as CLI interpreter Summary(pl.UTF-8): PHP jako interpreter działający z linii poleceń Group: Development/Languages/PHP Requires: %{name}-common = %{epoch}:%{version}-%{release} -Provides: php-program +Requires: alternatives Obsoletes: php-cli < 4:5.3.28-7 %description cli @@ -472,7 +458,7 @@ Requires(postun): /usr/sbin/userdel Requires(pre): /bin/id Requires(pre): /usr/sbin/useradd Requires: %{name}-common = %{epoch}:%{version}-%{release} -%{?with_alternatives:Requires: alternatives} +Requires: alternatives Requires: php-dirs >= 1.4-2 Requires: rc-scripts Provides: php(fcgi) @@ -591,8 +577,6 @@ Obsoletes: php52-devel Obsoletes: php53-devel Obsoletes: php54-devel Obsoletes: php55-devel -Obsoletes: php56-devel -Obsoletes: php71-devel %description devel The php-devel package lets you compile dynamic extensions to PHP. @@ -1457,7 +1441,7 @@ URL: http://php.net/manual/en/book.phar.php Requires: %{name}-common = %{epoch}:%{version}-%{release} Requires: %{name}-hash = %{epoch}:%{version}-%{release} Requires: %{name}-spl = %{epoch}:%{version}-%{release} -%{?with_alternatives:Requires: alternatives} +Requires: alternatives Suggests: %{name}-cli # zlib is required by phar program, but as phar cli is optional should the dep be too Suggests: %{name}-zlib @@ -1940,7 +1924,6 @@ Moduł PHP umożliwiający używanie kompresji zlib. cp -p php.ini-production php.ini %patch0 -p1 %patch1 -p1 -#%patch2 -p1 %patch3 -p1 %patch5 -p1 %patch6 -p1 @@ -1970,8 +1953,6 @@ cp -p php.ini-production php.ini %endif %patch43 -p1 %patch44 -p1 -#%patch45 -p1 # imap annotations. fixme -#%patch46 -p1 # imap myrights. fixme %if %{with suhosin} %patch47 -p1 %endif @@ -1982,12 +1963,10 @@ cp -p php.ini-production php.ini %undos ext/spl/tests/SplFileInfo_getInode_basic.phpt %patch55 -p1 %patch59 -p1 -%patch60 -p1 %patch62 -p1 %{?with_system_libzip:%patch65 -p1} %patch66 -p1 %patch67 -p1 -#%patch68 -p1 %patch70 -p1 %patch71 -p1 %patch72 -p1 @@ -2131,8 +2110,8 @@ if test "$ver" != "%{pharver}"; then : Update the pharver macro and rebuild. exit 1 fi -ver=$(sed -n '/#define PHP_SQLITE3_VERSION/{s/.* "//;s/".*$//;p}' ext/sqlite3/php_sqlite3.h) -if test "$ver" != "%{sqlite3ver}"; then +ver=$(awk '/#define PHP_SQLITE3_VERSION/ {print $3}' ext/sqlite3/php_sqlite3.h | xargs) +if test "$ver" != "PHP_VERSION"; then : Error: Upstream Sqlite3 version is now ${ver}, expecting %{sqlite3ver}. : Update the sqlite3ver macro and rebuild. exit 1 @@ -2255,10 +2234,12 @@ for sapi in $sapis; do %configure \ EXTRA_LDFLAGS="%{rpmldflags}" \ + --program-suffix=%{php_suffix} \ $sapi_args \ %if "%{!?configure_cache:0}%{?configure_cache}" == "0" --cache-file=config.cache \ %endif + --datadir=%{php_datadir} \ --with-libdir=%{_lib} \ --with-config-file-path=%{_sysconfdir} \ --with-config-file-scan-dir=%{_sysconfdir}/conf.d \ @@ -2515,17 +2496,13 @@ cp -pf Makefile.cli Makefile phpbuilddir=%{_libdir}/%{name}/build \ INSTALL_ROOT=$RPM_BUILD_ROOT -%if %{without default_php} # version the .phar files %{__mv} $RPM_BUILD_ROOT%{_bindir}/phar{,%{php_suffix}}.phar %{__mv} $RPM_BUILD_ROOT%{_mandir}/man1/phar{,%{php_suffix}}.1 -%endif -%if %{with alternatives} # touch for ghost %{__rm} $RPM_BUILD_ROOT%{_bindir}/phar touch $RPM_BUILD_ROOT%{_bindir}/phar touch $RPM_BUILD_ROOT%{_mandir}/man1/phar.1 -%endif # version suffix v=$(echo %{version} | cut -d. -f1-2) @@ -2546,14 +2523,14 @@ libtool --mode=install install -p sapi/litespeed/php $RPM_BUILD_ROOT%{_sbindir}/ %{__make} -f Makefile.phpdbg install-phpdbg \ INSTALL="libtool --mode=install install -p" \ INSTALL_ROOT=$RPM_BUILD_ROOT - -%if %{without default_php} -# version the phpdbg files -%{__mv} $RPM_BUILD_ROOT%{_bindir}/phpdbg{,%{ver_suffix}} -%{__mv} $RPM_BUILD_ROOT%{_mandir}/man1/phpdbg{,%{ver_suffix}}.1 -%endif %endif +# touch for ghost +touch $RPM_BUILD_ROOT%{_bindir}/phpize +touch $RPM_BUILD_ROOT%{_mandir}/man1/phpize.1 +touch $RPM_BUILD_ROOT%{_bindir}/php-config +touch $RPM_BUILD_ROOT%{_mandir}/man1/php-config.1 + %if %{with milter} %{__make} -f Makefile.milter install-milter \ INSTALL_ROOT=$RPM_BUILD_ROOT @@ -2581,10 +2558,8 @@ install -p %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-fpm install -d $RPM_BUILD_ROOT/etc/logrotate.d cp -p %{SOURCE11} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}-fpm -%if %{with alternatives} # touch for ghost for alternatives touch $RPM_BUILD_ROOT%{_sbindir}/php-fpm -%endif %{__sed} -i -e ' s#/usr/lib/php#%{php_extensiondir}#g @@ -2597,24 +2572,15 @@ touch $RPM_BUILD_ROOT%{_sbindir}/php-fpm %if %{with embed} # we could use install-headers from Makefile.embed, but that would reinstall all headers # install-sapi installs to wrong dir, so just do it all manually -install -d $RPM_BUILD_ROOT%{_includedir}/php/sapi/embed +install -d $RPM_BUILD_ROOT%{_includedir}/php/php%{php_suffix}/sapi/embed install -p libs/libphp7.so $RPM_BUILD_ROOT%{_libdir} -cp -p sapi/embed/php_embed.h $RPM_BUILD_ROOT%{_includedir}/php/sapi/embed +cp -p sapi/embed/php_embed.h $RPM_BUILD_ROOT%{_includedir}/php/php%{php_suffix}/sapi/embed %endif -# install CLI -# versioned suffix is always installed -libtool --mode=install install -p sapi/cli/php $RPM_BUILD_ROOT%{_bindir}/php%{ver_suffix} -cp -p sapi/cli/php.1 $RPM_BUILD_ROOT%{_mandir}/man1/php%{ver_suffix}.1 - -%if %{with default_php} -# man for php -echo ".so php%{ver_suffix}.1" >$RPM_BUILD_ROOT%{_mandir}/man1/php.1 -# link as /usr/bin/php -ln -sf php%{ver_suffix} $RPM_BUILD_ROOT%{_bindir}/php -# php.cli link for backward compatibility -ln -sf php $RPM_BUILD_ROOT%{_bindir}/php.cli -%endif +# CLI +# touch for ghost +touch $RPM_BUILD_ROOT%{_bindir}/php +touch $RPM_BUILD_ROOT%{_mandir}/man1/php.1 cp -p php.ini $RPM_BUILD_ROOT%{_sysconfdir}/php.ini cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/php-cli.ini @@ -2655,16 +2621,16 @@ for fn in ltmain.sh config/ltmain.sh build-aux/ltmain.sh; do ln -snf $f $RPM_BUILD_ROOT%{_libdir}/%{name}/build break done -sed -i -e '/^phpdir/ s,/php/build,/%{name}/build,' $RPM_BUILD_ROOT%{_bindir}/phpize +sed -i -e '/^phpdir/ s,/php/build,/%{name}/build,' $RPM_BUILD_ROOT%{_bindir}/phpize%{php_suffix} # for php-pecl-mailparse -install -d $RPM_BUILD_ROOT%{_includedir}/php/ext/mbstring -cp -p ext/mbstring/libmbfl/mbfl/*.h $RPM_BUILD_ROOT%{_includedir}/php/ext/mbstring +install -d $RPM_BUILD_ROOT%{_includedir}/php/php%{php_suffix}/ext/mbstring +cp -p ext/mbstring/libmbfl/mbfl/*.h $RPM_BUILD_ROOT%{_includedir}/php/php%{php_suffix}/ext/mbstring # tests -install -d $RPM_BUILD_ROOT%{php_data_dir}/tests/php -install -p run-tests.php $RPM_BUILD_ROOT%{php_data_dir}/tests/php/run-tests.php -cp -a tests/* $RPM_BUILD_ROOT%{php_data_dir}/tests/php +install -d $RPM_BUILD_ROOT%{php_datadir}/tests/php +install -p run-tests.php $RPM_BUILD_ROOT%{php_datadir}/tests/php/run-tests.php +cp -a tests/* $RPM_BUILD_ROOT%{php_datadir}/tests/php # fix install paths, avoid evil rpaths sed -i -e "s|^libdir=.*|libdir='%{_libdir}'|" $RPM_BUILD_ROOT%{_libdir}/libphp_common.la @@ -2684,23 +2650,43 @@ if [ "$1" = "0" ]; then %service -q httpd restart fi +%post cli +update-alternatives \ + --install %{_bindir}/php php %{_bindir}/php%{php_suffix} %{php_suffix} \ + --slave %{_mandir}/man1/php.1 php.1 %{_mandir}/man1/php%{php_suffix}.1* || : + +%postun cli +if [ $1 -eq 0 ]; then + update-alternatives --remove php %{_bindir}/php || : +fi + +%post devel +update-alternatives \ + --install %{_bindir}/phpize phpize %{_bindir}/phpize%{php_suffix} %{php_suffix} \ + --slave %{_mandir}/man1/php.1 php.1 %{_mandir}/man1/php%{php_suffix}.1* || : +update-alternatives \ + --install %{_bindir}/php-config php-config %{_bindir}/php-config%{php_suffix} %{php_suffix} \ + --slave %{_mandir}/man1/php.1 php.1 %{_mandir}/man1/php%{php_suffix}.1* || : + +%postun devel +if [ $1 -eq 0 ]; then + update-alternatives --remove phpize %{_bindir}/phpize || : + update-alternatives --remove php-config %{_bindir}/php-config || : +fi + %pre fpm %useradd -u 51 -r -s /bin/false -c "HTTP User" -g http http %post fpm /sbin/chkconfig --add %{name}-fpm %service %{name}-fpm restart -%if %{with alternatives} -update-alternatives --install %{_sbindir}/php-fpm php-fpm %{_sbindir}/php%{ver_suffix}-fpm %{ver_suffix} || : -%endif +update-alternatives --install %{_sbindir}/php-fpm php-fpm %{_sbindir}/php%{php_suffix}-fpm %{php_suffix} || : %preun fpm if [ "$1" = "0" ]; then %service %{name}-fpm stop /sbin/chkconfig --del %{name}-fpm -%if %{with alternatives} update-alternatives --remove php-fpm %{_sbindir}/php-fpm || : -%endif fi %postun fpm @@ -2856,19 +2842,15 @@ fi \ %post phar %ext_post -%if %{with alternatives} update-alternatives \ - --install %{_bindir}/phar phar %{_bindir}/phar%{ver_suffix}.phar %{ver_suffix} \ - --slave %{_mandir}/man1/phar.1 phar.1 %{_mandir}/man1/phar%{ver_suffix}.1* || : -%endif + --install %{_bindir}/phar phar %{_bindir}/phar%{php_suffix}.phar %{php_suffix} \ + --slave %{_mandir}/man1/phar.1 phar.1 %{_mandir}/man1/phar%{php_suffix}.1* || : %postun phar %ext_postun -%if %{with alternatives} if [ $1 -eq 0 ]; then update-alternatives --remove phar %{_bindir}/phar || : fi -%endif %if %{with apache2} %files -n apache-mod_%{name} @@ -2905,13 +2887,10 @@ fi %defattr(644,root,root,755) %dir %{_sysconfdir}/cli.d %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php-cli.ini -%attr(755,root,root) %{_bindir}/php%{ver_suffix} -%{_mandir}/man1/php%{ver_suffix}.1* -%if %{with default_php} -%attr(755,root,root) %{_bindir}/php -%attr(755,root,root) %{_bindir}/php.cli -%{_mandir}/man1/php.1* -%endif +%attr(755,root,root) %{_bindir}/php%{php_suffix} +%{_mandir}/man1/php%{php_suffix}.1* +%ghost %{_bindir}/php +%ghost %{_mandir}/man1/php.1* %if %{with fpm} %files fpm @@ -2921,9 +2900,7 @@ fi %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php-fpm.conf %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php-fpm.d/www.conf %attr(755,root,root) %{_sbindir}/%{name}-fpm -%if %{with alternatives} %ghost %{_sbindir}/php-fpm -%endif %{_mandir}/man8/%{name}-fpm.8* %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}-fpm %attr(754,root,root) /etc/rc.d/init.d/%{name}-fpm @@ -2949,6 +2926,7 @@ fi %dir %{_sysconfdir}/conf.d %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php.ini %attr(755,root,root) %{_libdir}/libphp_common-*.so +%dir %{php_datadir} %dir %{php_extensiondir} %doc ext/session/mod_files.sh @@ -2956,14 +2934,18 @@ fi %files devel %defattr(644,root,root,755) %doc CODING_STANDARDS README.{EXT_SKEL,PARAMETER_PARSING_API,SELF-CONTAINED-EXTENSIONS,STREAMS,SUBMITTING_PATCH,TESTING,TESTING2,UNIX-BUILD-SYSTEM,input_filter} -%attr(755,root,root) %{_bindir}/phpize -%attr(755,root,root) %{_bindir}/php-config +%attr(755,root,root) %{_bindir}/phpize%{php_suffix} +%attr(755,root,root) %{_bindir}/php-config%{php_suffix} +%ghost %{_bindir}/phpize +%ghost %{_bindir}/php-config %attr(755,root,root) %{_libdir}/libphp_common.so %{_libdir}/libphp_common.la -%{_includedir}/php +%{_includedir}/php/php%{php_suffix} %{_libdir}/%{name}/build -%{_mandir}/man1/php-config.1* -%{_mandir}/man1/phpize.1* +%{_mandir}/man1/php-config%{php_suffix}.1* +%ghost %{_mandir}/man1/php-config.1* +%{_mandir}/man1/phpize%{php_suffix}.1* +%ghost %{_mandir}/man1/phpize.1* %if %{with bcmath} %files bcmath @@ -3302,12 +3284,8 @@ fi %attr(755,root,root) %{_bindir}/phar%{php_suffix}.phar %{_mandir}/man1/phar%{php_suffix}.1* %{_mandir}/man1/phar.phar.1* -%if %{with alternatives} %ghost %{_bindir}/phar -%ghost %{_mandir}/man1/phar.1 -%else -%attr(755,root,root) %{_bindir}/phar -%endif +%ghost %{_mandir}/man1/phar.1* %endif %if %{with posix} @@ -3419,18 +3397,18 @@ fi %files tests %defattr(644,root,root,755) -%dir %{php_data_dir}/tests -%dir %{php_data_dir}/tests/php -%{php_data_dir}/tests/php/basic -%{php_data_dir}/tests/php/classes -%{php_data_dir}/tests/php/func -%{php_data_dir}/tests/php/lang -%{php_data_dir}/tests/php/output -%{php_data_dir}/tests/php/run-test -%{php_data_dir}/tests/php/security -%{php_data_dir}/tests/php/strings -%{php_data_dir}/tests/php/quicktester.inc -%attr(755,root,root) %{php_data_dir}/tests/php/run-tests.php +%dir %{php_datadir}/tests +%dir %{php_datadir}/tests/php +%{php_datadir}/tests/php/basic +%{php_datadir}/tests/php/classes +%{php_datadir}/tests/php/func +%{php_datadir}/tests/php/lang +%{php_datadir}/tests/php/output +%{php_datadir}/tests/php/run-test +%{php_datadir}/tests/php/security +%{php_datadir}/tests/php/strings +%{php_datadir}/tests/php/quicktester.inc +%attr(755,root,root) %{php_datadir}/tests/php/run-tests.php %if %{with tidy} %files tidy