diff options
| -rw-r--r-- | REFLECTION | 145 | ||||
| -rw-r--r-- | REFLECTION-PHP7 | 56 | ||||
| -rw-r--r-- | php-pecl-uopz-php7.spec | 325 | ||||
| -rw-r--r-- | php-pecl-uopz.spec | 130 | ||||
| -rw-r--r-- | uopz-upstream.patch | 62 | 
5 files changed, 158 insertions, 560 deletions
@@ -1,24 +1,6 @@ -Extension [ <persistent> extension #17 uopz version 2.0.7 ] { +Extension [ <persistent> extension #15 uopz version 5.0.1 ] { -  - INI { -    Entry [ uopz.overloads <SYSTEM> ] -      Current = '0' -    } -    Entry [ uopz.backup <SYSTEM> ] -      Current = '1' -    } -    Entry [ uopz.fixup <SYSTEM> ] -      Current = '0' -    } -  } - -  - Constants [24] { -    Constant [ integer ZEND_USER_OPCODE_CONTINUE ] { 0 } -    Constant [ integer ZEND_USER_OPCODE_ENTER ] { 3 } -    Constant [ integer ZEND_USER_OPCODE_LEAVE ] { 4 } -    Constant [ integer ZEND_USER_OPCODE_DISPATCH ] { 2 } -    Constant [ integer ZEND_USER_OPCODE_DISPATCH_TO ] { 256 } -    Constant [ integer ZEND_USER_OPCODE_RETURN ] { 1 } +  - Constants [7] {      Constant [ integer ZEND_ACC_PUBLIC ] { 256 }      Constant [ integer ZEND_ACC_PRIVATE ] { 1024 }      Constant [ integer ZEND_ACC_PROTECTED ] { 512 } @@ -26,121 +8,48 @@ Extension [ <persistent> extension #17 uopz version 2.0.7 ] {      Constant [ integer ZEND_ACC_STATIC ] { 1 }      Constant [ integer ZEND_ACC_FINAL ] { 4 }      Constant [ integer ZEND_ACC_ABSTRACT ] { 2 } -    Constant [ integer ZEND_ACC_CLASS ] { 0 } -    Constant [ integer ZEND_ACC_INTERFACE ] { 128 } -    Constant [ integer ZEND_ACC_TRAIT ] { 288 } -    Constant [ integer ZEND_ACC_FETCH ] { 9223372036854775807 } -    Constant [ integer ZEND_NEW ] { 68 } -    Constant [ integer ZEND_THROW ] { 108 } -    Constant [ integer ZEND_FETCH_CLASS ] { 109 } -    Constant [ integer ZEND_ADD_TRAIT ] { 154 } -    Constant [ integer ZEND_ADD_INTERFACE ] { 144 } -    Constant [ integer ZEND_INSTANCEOF ] { 138 } -    Constant [ integer ZEND_EXIT ] { 79 }    }    - Functions { -    Function [ <internal:uopz> function uopz_overload ] { - -      - Parameters [2] { -        Parameter #0 [ <required> $opcode ] -        Parameter #1 [ <required> $callable ] -      } +    Function [ <internal:uopz> function uopz_set_return ] {      } -    Function [ <internal:uopz> function uopz_backup ] { - -      - Parameters [2] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $function ] -      } +    Function [ <internal:uopz> function uopz_get_return ] {      } -    Function [ <internal:uopz> function uopz_restore ] { - -      - Parameters [2] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $function ] -      } +    Function [ <internal:uopz> function uopz_unset_return ] {      } -    Function [ <internal:uopz> function uopz_copy ] { - -      - Parameters [2] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $function ] -      } +    Function [ <internal:uopz> function uopz_set_mock ] {      } -    Function [ <internal:uopz> function uopz_rename ] { - -      - Parameters [3] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $function ] -        Parameter #2 [ <required> $overload ] -      } +    Function [ <internal:uopz> function uopz_get_mock ] {      } -    Function [ <internal:uopz> function uopz_delete ] { - -      - Parameters [2] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $function ] -      } +    Function [ <internal:uopz> function uopz_unset_mock ] {      } -    Function [ <internal:uopz> function uopz_redefine ] { - -      - Parameters [3] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $constant ] -        Parameter #2 [ <required> $value ] -      } +    Function [ <internal:uopz> function uopz_get_static ] {      } -    Function [ <internal:uopz> function uopz_undefine ] { - -      - Parameters [2] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $constant ] -      } +    Function [ <internal:uopz> function uopz_set_static ] {      } -    Function [ <internal:uopz> function uopz_function ] { - -      - Parameters [4] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $function ] -        Parameter #2 [ <required> $handler ] -        Parameter #3 [ <required> $modifiers ] -      } +    Function [ <internal:uopz> function uopz_set_hook ] {      } -    Function [ <internal:uopz> function uopz_flags ] { - -      - Parameters [3] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $function ] -        Parameter #2 [ <required> $flags ] -      } +    Function [ <internal:uopz> function uopz_get_hook ] {      } -    Function [ <internal:uopz> function uopz_implement ] { - -      - Parameters [2] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $interface ] -      } +    Function [ <internal:uopz> function uopz_unset_hook ] { +    } +    Function [ <internal:uopz> function uopz_add_function ] { +    } +    Function [ <internal:uopz> function uopz_del_function ] {      }      Function [ <internal:uopz> function uopz_extend ] { - -      - Parameters [2] { -        Parameter #0 [ <required> $class ] -        Parameter #1 [ <required> $parent ] -      }      } -    Function [ <internal:uopz> function uopz_compose ] { - -      - Parameters [2] { -        Parameter #0 [ <required> $name ] -        Parameter #1 [ <required> $classes ] -      } +    Function [ <internal:uopz> function uopz_implement ] {      } -    Function [ <internal:uopz> function __uopz_exit_overload ] { - -      - Parameters [1] { -        Parameter #0 [ <required> $status ] -      } +    Function [ <internal:uopz> function uopz_flags ] { +    } +    Function [ <internal:uopz> function uopz_redefine ] { +    } +    Function [ <internal:uopz> function uopz_undefine ] { +    } +    Function [ <internal:uopz> function uopz_set_property ] { +    } +    Function [ <internal:uopz> function uopz_get_property ] {      }    }  } diff --git a/REFLECTION-PHP7 b/REFLECTION-PHP7 deleted file mode 100644 index 69196ce..0000000 --- a/REFLECTION-PHP7 +++ /dev/null @@ -1,56 +0,0 @@ -Extension [ <persistent> extension #15 uopz version 5.0.1 ] { - -  - Constants [7] { -    Constant [ integer ZEND_ACC_PUBLIC ] { 256 } -    Constant [ integer ZEND_ACC_PRIVATE ] { 1024 } -    Constant [ integer ZEND_ACC_PROTECTED ] { 512 } -    Constant [ integer ZEND_ACC_PPP_MASK ] { 1792 } -    Constant [ integer ZEND_ACC_STATIC ] { 1 } -    Constant [ integer ZEND_ACC_FINAL ] { 4 } -    Constant [ integer ZEND_ACC_ABSTRACT ] { 2 } -  } - -  - Functions { -    Function [ <internal:uopz> function uopz_set_return ] { -    } -    Function [ <internal:uopz> function uopz_get_return ] { -    } -    Function [ <internal:uopz> function uopz_unset_return ] { -    } -    Function [ <internal:uopz> function uopz_set_mock ] { -    } -    Function [ <internal:uopz> function uopz_get_mock ] { -    } -    Function [ <internal:uopz> function uopz_unset_mock ] { -    } -    Function [ <internal:uopz> function uopz_get_static ] { -    } -    Function [ <internal:uopz> function uopz_set_static ] { -    } -    Function [ <internal:uopz> function uopz_set_hook ] { -    } -    Function [ <internal:uopz> function uopz_get_hook ] { -    } -    Function [ <internal:uopz> function uopz_unset_hook ] { -    } -    Function [ <internal:uopz> function uopz_add_function ] { -    } -    Function [ <internal:uopz> function uopz_del_function ] { -    } -    Function [ <internal:uopz> function uopz_extend ] { -    } -    Function [ <internal:uopz> function uopz_implement ] { -    } -    Function [ <internal:uopz> function uopz_flags ] { -    } -    Function [ <internal:uopz> function uopz_redefine ] { -    } -    Function [ <internal:uopz> function uopz_undefine ] { -    } -    Function [ <internal:uopz> function uopz_set_property ] { -    } -    Function [ <internal:uopz> function uopz_get_property ] { -    } -  } -} - diff --git a/php-pecl-uopz-php7.spec b/php-pecl-uopz-php7.spec deleted file mode 100644 index ae1e69f..0000000 --- a/php-pecl-uopz-php7.spec +++ /dev/null @@ -1,325 +0,0 @@ -# remirepo spec file for php-pecl-uopz -# -# Copyright (c) 2014-2017 Remi Collet -# License: CC-BY-SA -# http://creativecommons.org/licenses/by-sa/4.0/ -# -# Please, preserve the changelog entries -# -%if 0%{?scl:1} -%global sub_prefix %{scl_prefix} -%scl_package       php-pecl-uopz -%endif - -%global with_zts   0%{!?_without_zts:%{?__ztsphp:1}} -%global pecl_name  uopz -%global ini_name   05-%{pecl_name}.ini - -# see https://github.com/krakjoe/uopz/releases -#global gh_commit  c335700be4dc4350605bc4fb1efd8e96ba51b733 -#global gh_short   %%(c=µ%{gh_commit}; echo ${c:0:7}) -#global gh_owner   krakjoe -#global gh_project uopz - -Summary:        User Operations for Zend -Name:           %{?sub_prefix}php-pecl-%{pecl_name} -Version:        5.0.1 -Release:        4%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')} -License:        PHP -Group:          Development/Languages -URL:            http://pecl.php.net/package/%{pecl_name} -%if 0%{?gh_commit:1} -Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}-%{gh_short}.tar.gz -%else -Source0:        http://pecl.php.net/get/%{pecl_name}-%{version}.tgz -%endif - -Patch0:         %{pecl_name}-upstream.patch - -BuildRequires:  %{?scl_prefix}php-devel > 7 -BuildRequires:  %{?scl_prefix}php-pear - -Requires:       %{?scl_prefix}php(zend-abi) = %{php_zend_api} -Requires:       %{?scl_prefix}php(api) = %{php_core_api} -%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}} - -Provides:       %{?scl_prefix}php-%{pecl_name}               = %{version} -Provides:       %{?scl_prefix}php-%{pecl_name}%{?_isa}       = %{version} -Provides:       %{?scl_prefix}php-pecl(%{pecl_name})         = %{version} -Provides:       %{?scl_prefix}php-pecl(%{pecl_name})%{?_isa} = %{version} -%if "%{?scl_prefix}" != "%{?sub_prefix}" -Provides:       %{?scl_prefix}php-pecl-%{pecl_name}          = %{version}-%{release} -Provides:       %{?scl_prefix}php-pecl-%{pecl_name}%{?_isa}  = %{version}-%{release} -%endif - -%if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1} && 0%{?rhel} -# Other third party repo stuff -Obsoletes:     php53-pecl-%{pecl_name}  <= %{version} -Obsoletes:     php53u-pecl-%{pecl_name} <= %{version} -Obsoletes:     php54-pecl-%{pecl_name}  <= %{version} -Obsoletes:     php54w-pecl-%{pecl_name} <= %{version} -Obsoletes:     php55u-pecl-%{pecl_name} <= %{version} -Obsoletes:     php55w-pecl-%{pecl_name} <= %{version} -Obsoletes:     php56u-pecl-%{pecl_name} <= %{version} -Obsoletes:     php56w-pecl-%{pecl_name} <= %{version} -Obsoletes:     php70u-pecl-%{pecl_name} <= %{version} -Obsoletes:     php70w-pecl-%{pecl_name} <= %{version} -%if "%{php_version}" > "7.1" -Obsoletes:     php71u-pecl-%{pecl_name} <= %{version} -Obsoletes:     php71w-pecl-%{pecl_name} <= %{version} -%endif -%endif - -%if 0%{?fedora} < 20 && 0%{?rhel} < 7 -# Filter shared private -%{?filter_provides_in: %filter_provides_in %{_libdir}/.*\.so$} -%{?filter_setup} -%endif - - -%description -User Operations for Zend: doing things you probably shouldn't since 2014. - -The uopz extension exposes Zend engine functionality normally used at -compilation and execution time in order to allow modification of the -internal structures that represent PHP code. - -It supports the following activities: -- Overloading some Zend opcodes including exit/new and composure opcodes -- Renaming functions and methods -- Aliasing functions and methods -- Deletion of functions and methods -- Redefinition of constants -- Deletion of constants -- Runtime composition and modification of classes - -Documentation: http://php.net/uopz - -Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')%{?scl: as Software Collection (%{scl} by %{?scl_vendor}%{!?scl_vendor:rh})}. - - -%prep -%setup -q -c -%if 0%{?gh_commit:1} -mv %{gh_project}-%{gh_commit} NTS -# Temporary, until released on PECL -%{__php} -r ' -  $pkg = simplexml_load_file("NTS/package.xml"); -  $pkg->date = "2016-04-12"; -  $pkg->version->release = "%{version}"; -  $pkg->version->release = "%{version}"; -  $pkg->stability->release = "beta"; -  $pkg->stability->api = "beta"; -  $pkg->asXML("package.xml"); -' -%else -mv %{pecl_name}-%{version} NTS -%endif - -# Don't install/register tests -sed -e 's/role="test"/role="src"/' \ -    %{?_licensedir:-e '/LICENSE/s/role="doc"/role="src"/' } \ -    -i package.xml - -cd NTS -%patch0 -p1 -b .upstream - -# Sanity check, really often broken -extver=$(sed -n '/#define PHP_UOPZ_VERSION/{s/.* "//;s/".*$//;p}' uopz.h) -if test "x${extver}" != "x%{version}"; then -   : Error: Upstream extension version is ${extver}, expecting %{version}. -   exit 1 -fi -cd .. - -# Create configuration files -cat << EOF | tee %{ini_name} -; Enable '%{summary}' extension module -extension=%{pecl_name}.so -EOF - -%if %{with_zts} -# Duplicate source tree for NTS / ZTS build -cp -pr NTS ZTS -%endif - - -%build -cd NTS -%{_bindir}/phpize -%configure \ -    --with-php-config=%{_bindir}/php-config -make %{?_smp_mflags} - -%if %{with_zts} -cd ../ZTS -%{_bindir}/zts-phpize -%configure \ -    --with-php-config=%{_bindir}/zts-php-config -make %{?_smp_mflags} -%endif - - -%install -make -C NTS install INSTALL_ROOT=%{buildroot} - -# install config file -install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name} - -# Install XML package description -install -D -m 644 package.xml %{buildroot}%{pecl_xmldir}/%{name}.xml - -%if %{with_zts} -make -C ZTS install INSTALL_ROOT=%{buildroot} -install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name} -%endif - -# Documentation -for i in $(grep 'role="doc"' package.xml | sed -e 's/^.*name="//;s/".*$//') -do install -Dpm 644 NTS/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i -done - - -%if 0%{?fedora} < 24 -# when pear installed alone, after us -%triggerin -- %{?scl_prefix}php-pear -if [ -x %{__pecl} ] ; then -    %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || : -fi - -# posttrans as pear can be installed after us -%posttrans -if [ -x %{__pecl} ] ; then -    %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || : -fi - -%postun -if [ $1 -eq 0 -a -x %{__pecl} ] ; then -    %{pecl_uninstall} %{pecl_name} >/dev/null || : -fi -%endif - - -%check -cd NTS -: Minimal load test for NTS extension -%{__php} --no-php-ini \ -    --define extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \ -    --modules | grep %{pecl_name} - -: Upstream test suite  for NTS extension -TEST_PHP_EXECUTABLE=%{__php} \ -TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_extdir}/%{pecl_name}.so" \ -NO_INTERACTION=1 \ -REPORT_EXIT_STATUS=1 \ -%{__php} -n run-tests.php - -%if %{with_zts} -cd ../ZTS -: Minimal load test for ZTS extension -%{__ztsphp} --no-php-ini \ -    --define extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so \ -    --modules | grep %{pecl_name} - -: Upstream test suite  for ZTS extension -TEST_PHP_EXECUTABLE=%{_bindir}/zts-php \ -TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so" \ -NO_INTERACTION=1 \ -REPORT_EXIT_STATUS=1 \ -%{_bindir}/zts-php -n run-tests.php -%endif - - -%files -%{?_licensedir:%license NTS/LICENSE} -%doc %{pecl_docdir}/%{pecl_name} -%{pecl_xmldir}/%{name}.xml - -%config(noreplace) %{php_inidir}/%{ini_name} -%{php_extdir}/%{pecl_name}.so - -%if %{with_zts} -%config(noreplace) %{php_ztsinidir}/%{ini_name} -%{php_ztsextdir}/%{pecl_name}.so -%endif - - -%changelog -* Thu Dec  1 2016 Remi Collet <remi@fedoraproject.org> - 5.0.1-4 -- rebuild with PHP 7.1.0 GA - -* Wed Sep 14 2016 Remi Collet <remi@fedoraproject.org> - 5.0.1-3 -- rebuild for PHP 7.1 new API version - -* Thu Jun  9 2016 Remi Collet <remi@fedoraproject.org> - 5.0.1-2 -- add upstream patch for PHP 7.1 - -* Wed Apr 13 2016 Remi Collet <remi@fedoraproject.org> - 5.0.1-1 -- update to 5.0.1 - -* Wed Apr 13 2016 Remi Collet <remi@fedoraproject.org> - 5.0.0-1 -- update to 5.0.0 for PHP 7 -- sources from github (not yet released on pecl) - -* Tue Mar  8 2016 Remi Collet <remi@fedoraproject.org> - 2.0.7-2 -- adapt for F24 - -* Wed Mar 04 2015 Remi Collet <remi@fedoraproject.org> - 2.0.7-1 -- Update to 2.0.7 -- drop runtime dependency on pear, new scriptlets - -* Wed Dec 24 2014 Remi Collet <remi@fedoraproject.org> - 2.0.6-1.1 -- Fedora 21 SCL mass rebuild - -* Wed Oct 15 2014 Remi Collet <remi@fedoraproject.org> - 2.0.6-1 -- Update to 2.0.6 -- don't provide test suite - -* Tue Aug 26 2014 Remi Collet <rcollet@redhat.com> - 2.0.5-2 -- improve SCL build - -* Thu Jun 05 2014 Remi Collet <remi@fedoraproject.org> - 2.0.5-1 -- Update to 2.0.5 (stable) - -* Tue Apr  8 2014 Remi Collet <remi@fedoraproject.org> - 2.0.4-2 -- add numerical prefix to extension configuration files - -* Fri Apr 04 2014 Remi Collet <remi@fedoraproject.org> - 2.0.4-1 -- Update to 2.0.4 (stable) -- improve uopz.ini (comments) - -* Thu Apr 03 2014 Remi Collet <remi@fedoraproject.org> - 2.0.3-1 -- Update to 2.0.3 (stable) - -* Wed Apr 02 2014 Remi Collet <remi@fedoraproject.org> - 2.0.2-1 -- Update to 2.0.2 (stable) - -* Tue Apr 01 2014 Remi Collet <remi@fedoraproject.org> - 2.0.1-1 -- Update to 2.0.1 (stable) - -* Mon Mar 31 2014 Remi Collet <remi@fedoraproject.org> - 2.0.0-1 -- Update to 2.0.0 (2014-03-31 06:00:49, stable) - -* Sun Mar 30 2014 Remi Collet <remi@fedoraproject.org> - 1.0.11-1 -- Update to 1.0.11 (2014-03-30 14:05:44, beta) - -* Fri Mar 28 2014 Remi Collet <remi@fedoraproject.org> - 1.0.5-1 -- Update to 1.0.5 (2014-03-28 00:48:31, beta) - -* Thu Mar 27 2014 Remi Collet <remi@fedoraproject.org> - 1.0.4-1 -- Update to 1.0.4 (2014-03-27 18:34:03, beta) - -* Thu Mar 27 2014 Remi Collet <remi@fedoraproject.org> - 1.0.4-0 -- pre-release test build - -* Tue Mar 25 2014 Remi Collet <remi@fedoraproject.org> - 1.0.3-1 -- Update to 1.0.3 (2014-03-24 19:37:04, beta) - -* Mon Mar 24 2014 Remi Collet <remi@fedoraproject.org> - 1.0.2-1 -- Update to 1.0.2 (2014-03-24 10:34:02, beta) - -* Mon Mar 24 2014 Remi Collet <remi@fedoraproject.org> - 1.0.1-1 -- Update to 1.0.1 (2014-03-23 19:03:27, beta) - -* Sun Mar 23 2014 Remi Collet <remi@fedoraproject.org> - 1.0.0-1 -- initial package, version 1.0.0 (12:55, beta) diff --git a/php-pecl-uopz.spec b/php-pecl-uopz.spec index 74b7f61..9e411ad 100644 --- a/php-pecl-uopz.spec +++ b/php-pecl-uopz.spec @@ -7,35 +7,36 @@  # Please, preserve the changelog entries  #  %if 0%{?scl:1} -%if "%{scl}" == "rh-php56" -%global sub_prefix more-php56- -%else  %global sub_prefix %{scl_prefix} -%endif -%scl_package        php-pecl-uopz +%scl_package       php-pecl-uopz  %endif -%global with_zts  0%{?__ztsphp:1} -%global pecl_name uopz +%global with_zts   0%{!?_without_zts:%{?__ztsphp:1}} +%global pecl_name  uopz +%global ini_name   05-%{pecl_name}.ini -%if "%{php_version}" < "5.6" -# uopz should be loaded before opcache (k as krakjoe) -%global ini_name  k-%{pecl_name}.ini -%else -%global ini_name  05-%{pecl_name}.ini -%endif +# see https://github.com/krakjoe/uopz/releases +#global gh_commit  c335700be4dc4350605bc4fb1efd8e96ba51b733 +#global gh_short   %%(c=µ%{gh_commit}; echo ${c:0:7}) +#global gh_owner   krakjoe +#global gh_project uopz  Summary:        User Operations for Zend  Name:           %{?sub_prefix}php-pecl-%{pecl_name} -Version:        2.0.7 -Release:        2%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')} +Version:        5.0.1 +Release:        5%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}  License:        PHP  Group:          Development/Languages  URL:            http://pecl.php.net/package/%{pecl_name} +%if 0%{?gh_commit:1} +Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}-%{gh_short}.tar.gz +%else  Source0:        http://pecl.php.net/get/%{pecl_name}-%{version}.tgz +%endif -BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -BuildRequires:  %{?scl_prefix}php-devel > 5.4 +Patch0:         %{pecl_name}-upstream.patch + +BuildRequires:  %{?scl_prefix}php-devel > 7  BuildRequires:  %{?scl_prefix}php-pear  Requires:       %{?scl_prefix}php(zend-abi) = %{php_zend_api} @@ -57,13 +58,19 @@ Obsoletes:     php53-pecl-%{pecl_name}  <= %{version}  Obsoletes:     php53u-pecl-%{pecl_name} <= %{version}  Obsoletes:     php54-pecl-%{pecl_name}  <= %{version}  Obsoletes:     php54w-pecl-%{pecl_name} <= %{version} -%if "%{php_version}" > "5.5"  Obsoletes:     php55u-pecl-%{pecl_name} <= %{version}  Obsoletes:     php55w-pecl-%{pecl_name} <= %{version} -%endif -%if "%{php_version}" > "5.6"  Obsoletes:     php56u-pecl-%{pecl_name} <= %{version}  Obsoletes:     php56w-pecl-%{pecl_name} <= %{version} +Obsoletes:     php70u-pecl-%{pecl_name} <= %{version} +Obsoletes:     php70w-pecl-%{pecl_name} <= %{version} +%if "%{php_version}" > "7.1" +Obsoletes:     php71u-pecl-%{pecl_name} <= %{version} +Obsoletes:     php71w-pecl-%{pecl_name} <= %{version} +%endif +%if "%{php_version}" > "7.2" +Obsoletes:     php72u-pecl-%{pecl_name} <= %{version} +Obsoletes:     php72w-pecl-%{pecl_name} <= %{version}  %endif  %endif @@ -97,7 +104,21 @@ Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSIO  %prep  %setup -q -c +%if 0%{?gh_commit:1} +mv %{gh_project}-%{gh_commit} NTS +# Temporary, until released on PECL +%{__php} -r ' +  $pkg = simplexml_load_file("NTS/package.xml"); +  $pkg->date = "2016-04-12"; +  $pkg->version->release = "%{version}"; +  $pkg->version->release = "%{version}"; +  $pkg->stability->release = "beta"; +  $pkg->stability->api = "beta"; +  $pkg->asXML("package.xml"); +' +%else  mv %{pecl_name}-%{version} NTS +%endif  # Don't install/register tests  sed -e 's/role="test"/role="src"/' \ @@ -105,7 +126,7 @@ sed -e 's/role="test"/role="src"/' \      -i package.xml  cd NTS -#sed -e /PHP_UOPZ_VERSION/s/2.0.0/%{version}/ -i uopz.h +%patch0 -p1 -b .upstream  # Sanity check, really often broken  extver=$(sed -n '/#define PHP_UOPZ_VERSION/{s/.* "//;s/".*$//;p}' uopz.h) @@ -116,39 +137,14 @@ fi  cd ..  # Create configuration files -cat << EOF | tee NTS/%{ini_name} +cat << EOF | tee %{ini_name}  ; Enable '%{summary}' extension module -%if "%{php_version}" > "5.5" -zend_extension=%{pecl_name}.so -%else -zend_extension=%{php_extdir}/%{pecl_name}.so -%endif - -; Configuration -; http://php.net/manual/en/uopz.configuration.php -;uopz.overloads=0 -;uopz.backup=1 -;uopz.fixup=0 +extension=%{pecl_name}.so  EOF  %if %{with_zts}  # Duplicate source tree for NTS / ZTS build  cp -pr NTS ZTS - -cat << EOF | tee ZTS/%{ini_name} -; Enable '%{summary}' extension module -%if "%{php_version}" > "5.5" -zend_extension=%{pecl_name}.so -%else -zend_extension=%{php_ztsextdir}/%{pecl_name}.so -%endif - -; Configuration -; http://php.net/manual/en/uopz.configuration.php -;uopz.overloads=0 -;uopz.backup=1 -;uopz.fixup=0 -EOF  %endif @@ -169,19 +165,17 @@ make %{?_smp_mflags}  %install -rm -rf %{buildroot} -  make -C NTS install INSTALL_ROOT=%{buildroot}  # install config file -install -D -m 644 NTS/%{ini_name} %{buildroot}%{php_inidir}/%{ini_name} +install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name}  # Install XML package description  install -D -m 644 package.xml %{buildroot}%{pecl_xmldir}/%{name}.xml  %if %{with_zts}  make -C ZTS install INSTALL_ROOT=%{buildroot} -install -D -m 644 ZTS/%{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name} +install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name}  %endif  # Documentation @@ -214,12 +208,12 @@ fi  cd NTS  : Minimal load test for NTS extension  %{__php} --no-php-ini \ -    --define zend_extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \ +    --define extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \      --modules | grep %{pecl_name}  : Upstream test suite  for NTS extension  TEST_PHP_EXECUTABLE=%{__php} \ -TEST_PHP_ARGS="-n -d zend_extension=$PWD/modules/%{pecl_name}.so" \ +TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_extdir}/%{pecl_name}.so" \  NO_INTERACTION=1 \  REPORT_EXIT_STATUS=1 \  %{__php} -n run-tests.php @@ -228,24 +222,19 @@ REPORT_EXIT_STATUS=1 \  cd ../ZTS  : Minimal load test for ZTS extension  %{__ztsphp} --no-php-ini \ -    --define zend_extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so \ +    --define extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so \      --modules | grep %{pecl_name}  : Upstream test suite  for ZTS extension  TEST_PHP_EXECUTABLE=%{_bindir}/zts-php \ -TEST_PHP_ARGS="-n -d zend_extension=$PWD/modules/%{pecl_name}.so" \ +TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so" \  NO_INTERACTION=1 \  REPORT_EXIT_STATUS=1 \  %{_bindir}/zts-php -n run-tests.php  %endif -%clean -rm -rf %{buildroot} - -  %files -%defattr(-,root,root,-)  %{?_licensedir:%license NTS/LICENSE}  %doc %{pecl_docdir}/%{pecl_name}  %{pecl_xmldir}/%{name}.xml @@ -260,6 +249,25 @@ rm -rf %{buildroot}  %changelog +* Fri Jun 23 2017 Remi Collet <remi@fedoraproject.org> - 5.0.1-5 +- add upstream patch for PHP 7.2 + +* Thu Dec  1 2016 Remi Collet <remi@fedoraproject.org> - 5.0.1-4 +- rebuild with PHP 7.1.0 GA + +* Wed Sep 14 2016 Remi Collet <remi@fedoraproject.org> - 5.0.1-3 +- rebuild for PHP 7.1 new API version + +* Thu Jun  9 2016 Remi Collet <remi@fedoraproject.org> - 5.0.1-2 +- add upstream patch for PHP 7.1 + +* Wed Apr 13 2016 Remi Collet <remi@fedoraproject.org> - 5.0.1-1 +- update to 5.0.1 + +* Wed Apr 13 2016 Remi Collet <remi@fedoraproject.org> - 5.0.0-1 +- update to 5.0.0 for PHP 7 +- sources from github (not yet released on pecl) +  * Tue Mar  8 2016 Remi Collet <remi@fedoraproject.org> - 2.0.7-2  - adapt for F24 diff --git a/uopz-upstream.patch b/uopz-upstream.patch index 35a29a7..fc956be 100644 --- a/uopz-upstream.patch +++ b/uopz-upstream.patch @@ -224,3 +224,65 @@ index 11b7f5f..98e9c37 100644   		}   	} +From 90fb02322be03a3dec2f4e70db18b5626e8915c0 Mon Sep 17 00:00:00 2001 +From: Joe Watkins <krakjoe@php.net> +Date: Fri, 20 Jan 2017 07:37:07 +0000 +Subject: [PATCH] add 7.2 to travis, fix 7.2 build + +--- + .travis.yml |  1 + + src/copy.c  | 11 ++++++++++- + 2 files changed, 11 insertions(+), 1 deletion(-) + +diff --git a/src/copy.c b/src/copy.c +index 889eada..a1c937c 100644 +--- a/src/copy.c ++++ b/src/copy.c +@@ -165,8 +165,17 @@ static inline zend_arg_info* uopz_copy_arginfo(zend_op_array *op_array, zend_arg + 	while (it < end) { + 		if (info[it].name) + 			info[it].name = zend_string_copy(old[it].name); ++#if PHP_VERSION_ID >= 70200 ++		if (ZEND_TYPE_IS_SET(old[it].type) && ZEND_TYPE_IS_CLASS(old[it].type)) { ++			info[it].type = ZEND_TYPE_ENCODE_CLASS( ++				zend_string_new( ++					ZEND_TYPE_NAME(info[it].type)),  ++				ZEND_TYPE_ALLOW_NULL(info[it].type)); ++		} ++#else + 		if (info[it].class_name) +-			info[it].class_name = zend_string_copy(old[it].class_name); ++			info[it].class_name = zend_string_new(old[it].class_name); ++#endif + 		it++; + 	} + 	 +From 9634704d803c9b85efa897599545cb5dac646146 Mon Sep 17 00:00:00 2001 +From: Joe Watkins <krakjoe@php.net> +Date: Sun, 22 Jan 2017 19:20:22 +0000 +Subject: [PATCH] there is no zend_string_new here + +--- + src/copy.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/copy.c b/src/copy.c +index a1c937c..c8ca411 100644 +--- a/src/copy.c ++++ b/src/copy.c +@@ -168,13 +168,13 @@ static inline zend_arg_info* uopz_copy_arginfo(zend_op_array *op_array, zend_arg + #if PHP_VERSION_ID >= 70200 + 		if (ZEND_TYPE_IS_SET(old[it].type) && ZEND_TYPE_IS_CLASS(old[it].type)) { + 			info[it].type = ZEND_TYPE_ENCODE_CLASS( +-				zend_string_new( ++				zend_string_copy( + 					ZEND_TYPE_NAME(info[it].type)),  + 				ZEND_TYPE_ALLOW_NULL(info[it].type)); + 		} + #else + 		if (info[it].class_name) +-			info[it].class_name = zend_string_new(old[it].class_name); ++			info[it].class_name = zend_string_copy(old[it].class_name); + #endif + 		it++; + 	}  | 
