summaryrefslogtreecommitdiffstats
path: root/php-laminas-ldap.spec
diff options
context:
space:
mode:
Diffstat (limited to 'php-laminas-ldap.spec')
-rw-r--r--php-laminas-ldap.spec144
1 files changed, 90 insertions, 54 deletions
diff --git a/php-laminas-ldap.spec b/php-laminas-ldap.spec
index 2319f51..47bcd7a 100644
--- a/php-laminas-ldap.spec
+++ b/php-laminas-ldap.spec
@@ -1,17 +1,19 @@
-# remirepo/Fedora spec file for php-zendframework-zend-ldap
+# remirepo/Fedora spec file for php-laminas-ldap
#
-# Copyright (c) 2015-2018 Remi Collet
+# Copyright (c) 2015-2020 Remi Collet
# License: CC-BY-SA
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
#
%global bootstrap 0
-%global gh_commit 525ec97cd18a42a953c6a78c1019f967d2539b88
+%global gh_commit 52d67bbe6095da4e7e3578407e44322a6d7874ce
%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
-%global gh_owner zendframework
-%global gh_project zend-ldap
+%global gh_owner laminas
+%global gh_project laminas-ldap
+%global zf_name zend-ldap
%global php_home %{_datadir}/php
+%global namespace Laminas
%global library Ldap
%if %{bootstrap}
%global with_tests 0%{?_with_tests:1}
@@ -19,13 +21,13 @@
%global with_tests 0%{!?_without_tests:1}
%endif
-Name: php-%{gh_owner}-%{gh_project}
+Name: php-%{gh_project}
Version: 2.10.1
Release: 1%{?dist}
-Summary: Zend Framework %{library} component
+Summary: %{namespace} Framework %{library} component
License: BSD
-URL: https://zendframework.github.io/%{gh_project}/
+URL: https://github.com/%{gh_owner}/%{gh_project}
Source0: %{gh_commit}/%{name}-%{version}-%{gh_short}.tgz
Source1: makesrc.sh
@@ -34,55 +36,59 @@ BuildArch: noarch
%if %{with_tests}
BuildRequires: php(language) >= 5.6
BuildRequires: php-ldap
+# remirepo:1
+%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-zendframework-bridge) >= 1.0 with php-autoloader(%{gh_owner}/laminas-zendframework-bridge) < 2)
+# From composer, "require-dev": {
+# "laminas/laminas-coding-standard": "~1.0.0",
+# "laminas/laminas-config": "^2.5",
+# "laminas/laminas-eventmanager": "^2.6.3 || ^3.0.1",
+# "laminas/laminas-stdlib": "^2.7 || ^3.0",
+# "php-mock/php-mock-phpunit": "^1.1.2 || ^2.1.1",
+# "phpunit/phpunit": "^5.7.27 || ^6.5.8 || ^7.1.2"
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-config) >= 2.5 with php-autoloader(%{gh_owner}/laminas-config) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-eventmanager) >= 3.0.1 with php-autoloader(%{gh_owner}/laminas-eventmanager) < 4)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-stdlib) >= 3.2.1 with php-autoloader(%{gh_owner}/laminas-stdlib) < 4)
+BuildRequires: (php-composer(php-mock/php-mock-phpunit) >= 2.1.1 with php-composer(php-mock/php-mock-phpunit) < 3)
+# remirepo:7
+%else
+BuildRequires: php-laminas-zendframework-bridge
+BuildRequires: php-laminas-config
+BuildRequires: php-laminas-eventmanager
+BuildRequires: php-laminas-stdlib
+BuildRequires: php-mock-phpunit2
+%endif
+%global phpunit %{_bindir}/phpunit7
+BuildRequires: phpunit7 >= 7.1.2
BuildRequires: php-date
BuildRequires: php-iconv
BuildRequires: php-json
BuildRequires: php-mbstring
BuildRequires: php-pcre
BuildRequires: php-spl
-# From composer, "require-dev": {
-# "php-mock/php-mock-phpunit": "^1.1.2 || ^2.1.1",
-# "phpunit/phpunit": "^5.7.27 || ^6.5.8 || ^7.1.2",
-# "zendframework/zend-coding-standard": "~1.0.0",
-# "zendframework/zend-config": "^2.5",
-# "zendframework/zend-eventmanager": "^2.6.3 || ^3.0.1",
-# "zendframework/zend-stdlib": "^2.7 || ^3.0"
-BuildRequires: php-autoloader(%{gh_owner}/zend-config) >= 2.5
-BuildRequires: php-autoloader(%{gh_owner}/zend-eventmanager) >= 2.6.3
-BuildRequires: php-autoloader(%{gh_owner}/zend-stdlib) >= 2.7
-# remirepo:1
-%if 0%{?fedora} >= 27 || 0%{?rhel8}
-%global phpunit %{_bindir}/phpunit7
-BuildRequires: phpunit7 >= 7.1.2
-BuildRequires: (php-mock-phpunit2 >= 2.1.1 with php-mock-phpunit2 < 3)
-# remirepo:5
-%else
-%global phpunit %{_bindir}/phpunit6
-BuildRequires: phpunit6 >= 6.5.8
-BuildRequires: php-mock-phpunit2 >= 2.1.1
-%endif
-BuildRequires: php-composer(phpunit/phpunit) >= 4.6
%endif
# Autoloader
BuildRequires: php-fedora-autoloader-devel
# From composer, "require": {
# "php": "^5.6 || ^7.0",
-# "ext-ldap": "*"
+# "ext-ldap": "*",
+# "laminas/laminas-zendframework-bridge": "^1.0"
Requires: php(language) >= 5.6
Requires: php-ldap
-%if ! %{bootstrap}
-# From composer, "suggest": {
-# "zendframework/zend-eventmanager": "Zend\\EventManager component"
-# remirepo:1
-%if 0%{?fedora} >= 21 || 0%{?rhel8}
-Suggests: php-autoloader(%{gh_owner}/zend-eventmanager) >= 2.6.3
# remirepo:1
-%endif
+%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
+Requires: (php-autoloader(%{gh_owner}/laminas-zendframework-bridge) >= 1.0 with php-autoloader(%{gh_owner}/laminas-zendframework-bridge) < 2)
+# From composer, "suggest": {
+# "laminas/laminas-eventmanager": "Laminas\\EventManager component"
+Suggests: php-autoloader(%{gh_owner}/laminas-eventmanager)
+# remirepo:3
+%else
+Requires: php-laminas-zendframework-bridge
%endif
# Autoloader
Requires: php-composer(fedora/autoloader)
-# From phpcompatinfo report for version 2.10.0
+# From phpcompatinfo report for version 2.10.1
Requires: php-date
Requires: php-iconv
Requires: php-json
@@ -90,17 +96,23 @@ Requires: php-mbstring
Requires: php-pcre
Requires: php-spl
-Obsoletes: php-ZendFramework2-%{library} < 2.5
-Provides: php-ZendFramework2-%{library} = %{version}
-Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version}
+# remirepo:2
+Obsoletes: php-ZendFramework2-%{library} < 2.5
+Provides: php-ZendFramework2-%{library} = %{version}
+# Compatibily ensure by the bridge
+Obsoletes: php-zendframework-%{zf_name} < 2.10.1-99
+Provides: php-zendframework-%{zf_name} = %{version}-99
+Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version}
+Provides: php-composer(zendframework/%{zf_name}) = %{version}
Provides: php-autoloader(%{gh_owner}/%{gh_project}) = %{version}
+Provides: php-autoloader(zendframework/%{zf_name}) = %{version}
%description
-Zend\Ldap\Ldap is a class for performing LDAP operations including but
+%{namespace}\Ldap\Ldap is a class for performing LDAP operations including but
not limited to binding, searching and modifying entries in an LDAP directory.
-Documentation: https://zendframework.github.io/%{gh_project}/
+Documentation: https://docs.laminas.dev/%{gh_project}/
%prep
@@ -114,16 +126,30 @@ mv LICENSE.md LICENSE
phpab --template fedora --output src/autoload.php src
cat << 'EOF' | tee -a src/autoload.php
\Fedora\Autoloader\Dependencies::optional([
- '%{php_home}/Zend/Config/autoload.php',
- '%{php_home}/Zend/EventManager/autoload.php',
- '%{php_home}/Zend/Stdlib/autoload.php',
+ '%{php_home}/%{namespace}/Config/autoload.php',
+ '%{php_home}/%{namespace}/EventManager/autoload.php',
+ '%{php_home}/%{namespace}/Stdlib/autoload.php',
+]);
+EOF
+
+cat << 'EOF' | tee zf.php
+<?php
+require_once '%{php_home}/Fedora/Autoloader/autoload.php';
+\Fedora\Autoloader\Dependencies::required([
+ '%{php_home}/%{namespace}/ZendFrameworkBridge/autoload.php',
+ dirname(dirname(__DIR__)) . '/%{namespace}/%{library}/autoload.php',
]);
EOF
%install
-mkdir -p %{buildroot}%{php_home}/Zend/
-cp -pr src %{buildroot}%{php_home}/Zend/%{library}
+: Laminas library
+mkdir -p %{buildroot}%{php_home}/%{namespace}/
+cp -pr src %{buildroot}%{php_home}/%{namespace}/%{library}
+
+: Zend equiv
+mkdir -p %{buildroot}%{php_home}/Zend/%{library}
+cp -pr zf.php %{buildroot}%{php_home}/Zend/%{library}/autoload.php
%check
@@ -131,17 +157,24 @@ cp -pr src %{buildroot}%{php_home}/Zend/%{library}
mkdir vendor
cat << 'EOF' | tee vendor/autoload.php
<?php
-require_once '%{buildroot}%{php_home}/Zend/%{library}/autoload.php';
+require_once '%{buildroot}%{php_home}/%{namespace}/%{library}/autoload.php';
\Fedora\Autoloader\Dependencies::required([
'%{php_home}/phpmock2/phpunit/autoload.php',
]);
-\Fedora\Autoloader\Autoload::addPsr4('ZendTest\\%{library}\\', dirname(__DIR__) . '/test');
+\Fedora\Autoloader\Autoload::addPsr4('%{namespace}Test\\%{library}\\', dirname(__DIR__) . '/test');
EOF
# Need investigation
sed -e 's/PHPUnit_Util_ErrorHandler/IGNORE_PHPUnit_Util_ErrorHandler/' -i test/ErrorHandlerTest.php
+: check compat autoloader
+php -r '
+require "%{buildroot}%{php_home}/Zend/%{library}/autoload.php";
+exit (class_exists("\\Zend\\%{library}\\Ldap") ? 0 : 1);
+'
+
+: upstream test suite
ret=0
-for cmdarg in "php %{phpunit}" php71 php72 php73 php74; do
+for cmdarg in "php %{phpunit}" php72 php73 php74; do
if which $cmdarg; then
set $cmdarg
$1 ${2:-%{_bindir}/phpunit7} || ret=1
@@ -159,11 +192,14 @@ exit $ret
%license LICENSE
%doc *.md
%doc composer.json
-%dir %{php_home}/Zend
- %{php_home}/Zend/%{library}
+%{php_home}/Zend/%{library}
+%{php_home}/%{namespace}/%{library}
%changelog
+* Fri Jan 10 2020 Remi Collet <remi@remirepo.net> - 2.8.0-1
+- switch to Laminas
+
* Fri Oct 18 2019 Remi Collet <remi@remirepo.net> - 2.10.1-1
- update to 2.10.1 (no change)