From a02a9d8798ba68cfbb0effc8ffdb6cc4516076f4 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Wed, 26 Nov 2014 14:18:51 +0100 Subject: php55-php 5.5.20RC1 + embedded --- php-5.5.19-embed.patch | 12 ++++++++++ php.spec | 62 ++++++++++++++++++++++++++++++++++++++------------ 2 files changed, 60 insertions(+), 14 deletions(-) create mode 100644 php-5.5.19-embed.patch diff --git a/php-5.5.19-embed.patch b/php-5.5.19-embed.patch new file mode 100644 index 0000000..6053b39 --- /dev/null +++ b/php-5.5.19-embed.patch @@ -0,0 +1,12 @@ +--- php-5.5.19/sapi/embed/config.m4.embed ++++ php-5.5.19/sapi/embed/config.m4 +@@ -12,7 +12,8 @@ if test "$PHP_EMBED" != "no"; then + case "$PHP_EMBED" in + yes|shared) + PHP_EMBED_TYPE=shared +- INSTALL_IT="\$(mkinstalldirs) \$(INSTALL_ROOT)\$(prefix)/lib; \$(INSTALL) -m 0755 $SAPI_SHARED \$(INSTALL_ROOT)\$(prefix)/lib" ++ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -release \$(PHP_MAJOR_VERSION).\$(PHP_MINOR_VERSION)" ++ INSTALL_IT="\$(mkinstalldirs) \$(INSTALL_ROOT)\$(libdir); \$(LIBTOOL) --mode=install \$(INSTALL) -m 0755 \$(OVERALL_TARGET) \$(INSTALL_ROOT)\$(libdir)" + ;; + static) + PHP_EMBED_TYPE=static diff --git a/php.spec b/php.spec index a33ebbe..d8b569e 100644 --- a/php.spec +++ b/php.spec @@ -25,6 +25,9 @@ # Adds -z now to the linker flags %global _hardened_build 1 +# version used for php embedded library soname +%global embed_version 5.5 + # Ugly hack. Harcoded values to avoid relocation. %global _httpd_mmn %(cat %{_root_includedir}/httpd/.mmn 2>/dev/null || echo 0) %global _httpd_confdir %{_root_sysconfdir}/httpd/conf.d @@ -124,12 +127,12 @@ %global db_devel libdb-devel %endif -#global rcver RC1 +%global rcver RC1 Summary: PHP scripting language for creating dynamic web sites Name: %{?scl_prefix}php -Version: 5.5.19 -Release: 2%{?dist} +Version: 5.5.20 +Release: 0.1.RC1%{?dist} # All files licensed under PHP version 3.01, except # Zend is licensed under Zend # TSRM is licensed under BSD @@ -156,6 +159,7 @@ Source51: opcache-default.blacklist # Build fixes Patch5: php-5.2.0-includedir.patch +Patch6: php-5.5.19-embed.patch Patch7: php-5.3.0-recode.patch Patch8: php-5.4.7-libdb.patch @@ -179,9 +183,6 @@ Patch47: php-5.4.9-phpinfo.patch Patch91: php-5.3.7-oci8conf.patch # Upstream fixes (100+) -Patch101: php-bug68423.patch -Patch102: php-bug68421.patch -Patch103: php-bug68420.patch # Security fixes (200+) @@ -226,12 +227,9 @@ Requires(pre): httpd %endif -%if 0%{?fedora} < 20 && 0%{?rhel} < 7 -# Don't provides extensions, which are not shared library, as .so -%{?filter_provides_in: %filter_provides_in %{_libdir}/php/modules/.*\.so$} -%{?filter_provides_in: %filter_provides_in %{_httpd_moddir}/.*\.so$} +# Don't provides extensions, or shared libraries (embedded) +%{?filter_provides_in: %filter_provides_in %{_libdir}/.*\.so$} %{?filter_setup} -%endif %description @@ -309,6 +307,19 @@ used by the LiteSpeed Web Server (LSAPI enabled PHP). %endif +%package embedded +Summary: PHP library for embedding in applications +Group: System Environment/Libraries +Requires: %{?scl_prefix}php-common%{?_isa} = %{version}-%{release} +# doing a real -devel package for just the .so symlink is a bit overkill +Provides: %{?scl_prefix}php-embedded-devel = %{version}-%{release} +Provides: %{?scl_prefix}php-embedded-devel%{?_isa} = %{version}-%{release} + +%description embedded +The %{?scl_prefix}php-embedded package contains a library which can be embedded +into applications to provide PHP scripting language support. + + %package common Group: Development/Languages Summary: Common files for PHP @@ -827,6 +838,7 @@ support for using the enchant library to PHP. %setup -q -n php-%{version}%{?rcver} %patch5 -p1 -b .includedir +%patch6 -p1 -b .embed %patch7 -p1 -b .recode %patch8 -p1 -b .libdb @@ -844,9 +856,6 @@ support for using the enchant library to PHP. %patch91 -p1 -b .remi-oci8 # upstream patches -%patch101 -p1 -b .bug68423 -%patch102 -p1 -b .bug68421 -%patch103 -p1 -b .bug68420 # security patches @@ -872,6 +881,7 @@ cp ext/bcmath/libbcmath/COPYING.LIB libbcmath_COPYING mkdir \ build-fpm \ build-apache \ + build-embedded \ build-cgi # ----- Manage known as failed test ------- @@ -1184,6 +1194,15 @@ build --enable-fpm \ ${without_shared} popd +# Build for inclusion as embedded script language into applications, +# /usr/lib[64]/libphp5.so +pushd build-embedded +build --enable-embed \ + --without-mysql \ + --disable-pdo \ + ${without_shared} +popd + %check %if %runselftest @@ -1213,6 +1232,10 @@ unset NO_INTERACTION REPORT_EXIT_STATUS MALLOC_CHECK_ %install [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT +# Install the version for embedded script language in applications + php_embed.h +make -C build-embedded install-sapi install-headers \ + INSTALL_ROOT=$RPM_BUILD_ROOT + # Install the php-fpm binary make -C build-fpm install-fpm \ INSTALL_ROOT=$RPM_BUILD_ROOT @@ -1540,6 +1563,7 @@ if [ -f /etc/rc.d/init.d/%{?scl_prefix}php-fpm ]; then fi %endif + %{!?_licensedir:%global license %%doc} %files @@ -1630,6 +1654,11 @@ fi %endif %endif +%files embedded +%defattr(-,root,root,-) +%{_libdir}/libphp5.so +%{_libdir}/libphp5-%{embed_version}.so + %files devel %defattr(-,root,root) %{_bindir}/php-config @@ -1695,6 +1724,11 @@ fi %changelog +* Wed Nov 26 2014 Remi Collet 5.5.20-0.1.RC1 +- update to 5.5.20RC1 +- add embedded sub package +- filter all libraries to avoid provides + * Sun Nov 16 2014 Remi Collet 5.5.19-2 - FPM: add upstream patch for https://bugs.php.net/68421 access.format=R doesn't log ipv6 address -- cgit