From 06f0281b93763fb605a0f153c08bc59d13176066 Mon Sep 17 00:00:00 2001
From: Remi Collet <remi@remirepo.net>
Date: Wed, 8 Jan 2020 15:45:35 +0100
Subject: duplicate ZF

---
 .gitignore             |   8 ++
 Makefile               |   3 +
 composer.json          |  97 +++++++++++++++
 makesrc.sh             |  28 +++++
 php-laminas-cache.spec | 313 +++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 449 insertions(+)
 create mode 100644 .gitignore
 create mode 100644 Makefile
 create mode 100644 composer.json
 create mode 100755 makesrc.sh
 create mode 100644 php-laminas-cache.spec

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..fc9aa8c
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,8 @@
+clog
+package-*.xml
+*.tgz
+*.tar.gz
+*.tar.xz
+*.tar.xz.asc
+*.src.rpm
+*/*rpm
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..a2cd659
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,3 @@
+SRCDIR := $(shell pwd)
+NAME := $(shell basename $(SRCDIR))
+include ../../../common/Makefile
diff --git a/composer.json b/composer.json
new file mode 100644
index 0000000..d662ed4
--- /dev/null
+++ b/composer.json
@@ -0,0 +1,97 @@
+{
+    "name": "zendframework/zend-cache",
+    "description": "Caching implementation with a variety of storage options, as well as codified caching strategies for callbacks, classes, and output",
+    "license": "BSD-3-Clause",
+    "keywords": [
+        "zendframework",
+        "zf",
+        "cache",
+        "psr-6",
+        "psr-16"
+    ],
+    "support": {
+        "docs": "https://docs.zendframework.com/zend-cache/",
+        "issues": "https://github.com/zendframework/zend-cache/issues",
+        "source": "https://github.com/zendframework/zend-cache",
+        "rss": "https://github.com/zendframework/zend-cache/releases.atom",
+        "chat": "https://zendframework-slack.herokuapp.com",
+        "forum": "https://discourse.zendframework.com/c/questions/components"
+    },
+    "require": {
+        "php": "^5.6 || ^7.0",
+        "psr/cache": "^1.0",
+        "psr/simple-cache": "^1.0",
+        "zendframework/zend-eventmanager": "^2.6.3 || ^3.2",
+        "zendframework/zend-servicemanager": "^2.7.8 || ^3.3",
+        "zendframework/zend-stdlib": "^3.2.1"
+    },
+    "require-dev": {
+        "cache/integration-tests": "^0.16",
+        "phpbench/phpbench": "^0.13",
+        "phpunit/phpunit": "^5.7.27 || ^6.5.8 || ^7.1.2",
+        "zendframework/zend-coding-standard": "~1.0.0",
+        "zendframework/zend-serializer": "^2.6",
+        "zendframework/zend-session": "^2.7.4"
+    },
+    "suggest": {
+        "zendframework/zend-serializer": "Zend\\Serializer component",
+        "zendframework/zend-session": "Zend\\Session component",
+        "ext-apc": "APC or compatible extension, to use the APC storage adapter",
+        "ext-apcu": "APCU >= 5.1.0, to use the APCu storage adapter",
+        "ext-dba": "DBA, to use the DBA storage adapter",
+        "ext-memcache": "Memcache >= 2.0.0 to use the Memcache storage adapter",
+        "ext-memcached": "Memcached >= 1.0.0 to use the Memcached storage adapter",
+        "ext-mongo": "Mongo, to use MongoDb storage adapter",
+        "ext-mongodb": "MongoDB, to use the ExtMongoDb storage adapter",
+        "ext-redis": "Redis, to use Redis storage adapter",
+        "ext-wincache": "WinCache, to use the WinCache storage adapter",
+        "ext-xcache": "XCache, to use the XCache storage adapter",
+        "mongodb/mongodb": "Required for use with the ext-mongodb adapter",
+        "mongofill/mongofill": "Alternative to ext-mongo - a pure PHP implementation designed as a drop in replacement"
+    },
+    "autoload": {
+        "files": [
+            "autoload/patternPluginManagerPolyfill.php"
+        ],
+        "psr-4": {
+            "Zend\\Cache\\": "src/"
+        }
+    },
+    "autoload-dev": {
+        "psr-4": {
+            "ZendTest\\Cache\\": "test/",
+            "ZendBench\\Cache\\": "benchmark/"
+        },
+        "files": [
+            "test/autoload.php"
+        ]
+    },
+    "config": {
+        "process-timeout": 600,
+        "sort-packages": true
+    },
+    "provide": {
+        "psr/cache-implementation": "1.0",
+        "psr/simple-cache-implementation": "1.0"
+    },
+    "extra": {
+        "branch-alias": {
+            "dev-master": "2.9.x-dev",
+            "dev-develop": "2.10.x-dev"
+        },
+        "zf": {
+            "component": "Zend\\Cache",
+            "config-provider": "Zend\\Cache\\ConfigProvider"
+        }
+    },
+    "scripts": {
+        "check": [
+            "@cs-check",
+            "@test"
+        ],
+        "cs-check": "phpcs",
+        "cs-fix": "phpcbf",
+        "test": "phpunit --colors=always",
+        "test-coverage": "phpunit --colors=always --coverage-clover clover.xml"
+    }
+}
diff --git a/makesrc.sh b/makesrc.sh
new file mode 100755
index 0000000..87d223d
--- /dev/null
+++ b/makesrc.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+NAME=$(basename $PWD)
+OWNER=$(sed   -n '/^%global gh_owner/{s/.* //;p}'   $NAME.spec)
+PROJECT=$(sed -n '/^%global gh_project/{s/.* //;p}' $NAME.spec)
+VERSION=$(sed -n '/^Version:/{s/.* //;p}'           $NAME.spec)
+COMMIT=$(sed  -n '/^%global gh_commit/{s/.* //;p}'  $NAME.spec)
+SHORT=${COMMIT:0:7}
+
+echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION\n"
+
+echo "Cloning..."
+rm -rf $PROJECT-$COMMIT
+git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT
+
+echo "Getting commit..."
+pushd $PROJECT-$COMMIT
+git checkout $COMMIT
+cp composer.json ../composer.json
+popd
+
+echo "Archiving..."
+tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT
+
+echo "Cleaning..."
+rm -rf $PROJECT-$COMMIT
+
+echo "Done."
diff --git a/php-laminas-cache.spec b/php-laminas-cache.spec
new file mode 100644
index 0000000..84e4b95
--- /dev/null
+++ b/php-laminas-cache.spec
@@ -0,0 +1,313 @@
+# remirepo/Fedora spec file for php-zendframework-zend-cache
+#
+# 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    cffd54a2dc4db094976d3b3f05e418a047cc9110
+%global gh_short     %(c=%{gh_commit}; echo ${c:0:7})
+%global gh_owner     zendframework
+%global gh_project   zend-cache
+%global php_home     %{_datadir}/php
+%global library      Cache
+%if %{bootstrap}
+%global with_tests   0%{?_with_tests:1}
+%else
+%global with_tests   0%{!?_without_tests:1}
+%endif
+
+Name:           php-%{gh_owner}-%{gh_project}
+Version:        2.9.0
+Release:        1%{?dist}
+Summary:        Zend Framework %{library} component
+
+License:        BSD
+URL:            https://zendframework.github.io/%{gh_project}/
+Source0:        %{gh_commit}/%{name}-%{version}-%{gh_short}.tgz
+Source1:        makesrc.sh
+
+BuildArch:      noarch
+# Tests
+%if %{with_tests}
+BuildRequires:  php(language) >= 5.6
+BuildRequires:  php-reflection
+BuildRequires:  php-date
+BuildRequires:  php-pcre
+BuildRequires:  php-spl
+# remirepo:1
+%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
+BuildRequires:  (php-composer(psr/cache)                         >= 1.0   with php-composer(psr/cache)                         < 2)
+BuildRequires:  (php-composer(psr/simple-cache)                  >= 1.0   with php-composer(psr/simple-cache)                  < 2)
+BuildRequires:  (php-autoloader(%{gh_owner}/zend-eventmanager)   >= 3.2   with php-autoloader(%{gh_owner}/zend-eventmanager)   < 4)
+BuildRequires:  (php-autoloader(%{gh_owner}/zend-servicemanager) >= 3.3   with php-autoloader(%{gh_owner}/zend-servicemanager) < 4)
+BuildRequires:  (php-autoloader(%{gh_owner}/zend-stdlib)         >= 3.2.1 with php-autoloader(%{gh_owner}/zend-stdlib)         < 4)
+# From composer, "require-dev": {
+#        "cache/integration-tests": "^0.16",
+#        "phpbench/phpbench": "^0.13",
+#        "phpunit/phpunit": "^5.7.27 || ^6.5.8 || ^7.1.2",
+#        "zendframework/zend-coding-standard": "~1.0.0",
+#        "zendframework/zend-serializer": "^2.6",
+#        "zendframework/zend-session": "^2.7.4"
+%global phpunit %{_bindir}/phpunit7
+BuildRequires:  phpunit7 >= 7.1.2
+# remirepo:14
+%else
+BuildRequires:  php-composer(psr/cache)                         <  2
+BuildRequires:  php-composer(psr/cache)                         >= 1.0
+BuildRequires:  php-composer(psr/simple-cache)                  <  2
+BuildRequires:  php-composer(psr/simple-cache)                  >= 1.0
+BuildRequires:  php-autoloader(%{gh_owner}/zend-eventmanager)   <  4
+BuildRequires:  php-autoloader(%{gh_owner}/zend-eventmanager)   >= 3.2
+BuildRequires:  php-autoloader(%{gh_owner}/zend-servicemanager) <  4
+BuildRequires:  php-autoloader(%{gh_owner}/zend-servicemanager) >= 3.3
+BuildRequires:  php-autoloader(%{gh_owner}/zend-stdlib)         <  4
+BuildRequires:  php-autoloader(%{gh_owner}/zend-stdlib)         >= 3.2.1
+%global phpunit %{_bindir}/phpunit6
+BuildRequires:  phpunit6 >= 6.5.8
+%endif
+BuildRequires:  php-cache-integration-tests >= 0.16
+BuildRequires:  php-composer(%{gh_owner}/zend-serializer)       >= 2.6
+BuildRequires:  php-composer(%{gh_owner}/zend-session)          >= 2.7.4
+# Autoloader
+BuildRequires:  php-composer(%{gh_owner}/zend-loader)           >= 2.5
+BuildRequires:  php-fedora-autoloader-devel
+%endif
+
+# From composer, "require": {
+#        "php": "^5.6 || ^7.0",
+#        "psr/cache": "^1.0",
+#        "psr/simple-cache": "^1.0",
+#        "zendframework/zend-eventmanager": "^2.6.3 || ^3.2",
+#        "zendframework/zend-servicemanager": "^2.7.8 || ^3.3",
+#        "zendframework/zend-stdlib": "^2.7.7 || ^3.1"
+Requires:       php(language) >= 5.6
+%if ! %{bootstrap}
+# remirepo:1
+%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
+Requires:       (php-composer(psr/cache)                         >= 1.0   with php-composer(psr/cache)                         < 2)
+Requires:       (php-composer(psr/simple-cache)                  >= 1.0   with php-composer(psr/simple-cache)                  < 2)
+Requires:       (php-autoloader(%{gh_owner}/zend-eventmanager)   >= 3.2   with php-autoloader(%{gh_owner}/zend-eventmanager)   < 4)
+Requires:       (php-autoloader(%{gh_owner}/zend-servicemanager) >= 3.3   with php-autoloader(%{gh_owner}/zend-servicemanager) < 4)
+Requires:       (php-autoloader(%{gh_owner}/zend-stdlib)         >= 3.2.1 with php-autoloader(%{gh_owner}/zend-stdlib)         < 4)
+# remirepo:12
+%else
+Requires:       php-composer(psr/cache)                         <  2
+Requires:       php-composer(psr/cache)                         >= 1.0
+Requires:       php-composer(psr/simple-cache)                  <  2
+Requires:       php-composer(psr/simple-cache)                  >= 1.0
+Requires:       php-autoloader(%{gh_owner}/zend-eventmanager)   <  4
+Requires:       php-autoloader(%{gh_owner}/zend-eventmanager)   >= 3.2
+Requires:       php-autoloader(%{gh_owner}/zend-servicemanager) <  4
+Requires:       php-autoloader(%{gh_owner}/zend-servicemanager) >= 3.3
+Requires:       php-autoloader(%{gh_owner}/zend-stdlib)         <  4
+Requires:       php-autoloader(%{gh_owner}/zend-stdlib)         >= 3.2.1
+%endif
+# From composer, "suggest": {
+#        "zendframework/zend-serializer": "Zend\\Serializer component",
+#        "zendframework/zend-session": "Zend\\Session component",
+#        "ext-apcu": "APCU, to use the APC storage adapter",
+#        "ext-apc": "APC or compatible extension, to use the APC storage adapter",
+#        "ext-apcu": "APCU >= 5.1.0, to use the APCu storage adapter",
+#        "ext-dba": "DBA, to use the DBA storage adapter",
+#        "ext-memcache": "Memcache >= 2.0.0 to use the Memcache storage adapter",
+#        "ext-memcached": "Memcached >= 1.0.0 to use the Memcached storage adapter",
+#        "ext-mongo": "Mongo, to use MongoDb storage adapter",
+#        "ext-mongodb": "MongoDB, to use the ExtMongoDb storage adapter",
+#        "ext-redis": "Redis, to use Redis storage adapter",
+#        "ext-wincache": "WinCache, to use the WinCache storage adapter",
+#        "ext-xcache": "XCache, to use the XCache storage adapter",
+#        "mongodb/mongodb": "Required for use with the ext-mongodb adapter",
+#        "mongofill/mongofill": "Alternative to ext-mongo - a pure PHP implementation designed as a drop in replacement"
+Suggests:       php-composer(%{gh_owner}/zend-serializer)
+Suggests:       php-composer(%{gh_owner}/zend-session)
+Suggests:       php-pecl(apcu)
+Suggests:       php-dba
+Suggests:       php-pecl(memcache)
+Suggests:       php-pecl(memcached)
+Suggests:       php-pecl(redis)
+Suggests:       php-composer(mongodb/mongodb)
+%endif
+# From phpcompatinfo report for version 2.9.0
+Requires:       php-reflection
+Requires:       php-date
+Requires:       php-pcre
+Requires:       php-spl
+# Autoloader
+Requires:       php-composer(fedora/autoloader)
+
+Obsoletes:      php-ZendFramework2-%{library}           < 2.5
+Obsoletes:      php-ZendFramework2-%{library}-apc       < 2.5
+Obsoletes:      php-ZendFramework2-%{library}-memcached < 2.5
+Provides:       php-ZendFramework2-%{library}           = %{version}
+Provides:       php-ZendFramework2-%{library}-apc       = %{version}
+Provides:       php-ZendFramework2-%{library}-memcached = %{version}
+Provides:       php-composer(%{gh_owner}/%{gh_project}) = %{version}
+Provides:       php-autoloader(%{gh_owner}/%{gh_project}) = %{version}
+Provides:       php-composer(psr/cache-implementation)        = 1.0
+Provides:       php-composer(psr/simple-cache-implementation) = 1.0
+
+
+%description
+Zend\Cache provides a general cache system for PHP.
+The Zend\Cache component is able to cache different patterns
+(class, object, output, etc) using different storage adapters
+(DB, File, Memcache, etc).
+
+Documentation: https://zendframework.github.io/%{gh_project}/
+
+
+%prep
+%setup -q -n %{gh_project}-%{gh_commit}
+
+mv LICENSE.md LICENSE
+
+mv autoload/*.php src
+
+%build
+: Create dependency autoloader - deprecated
+cat << 'EOF' | tee autoload.php
+<?php
+require_once __DIR__ . '/%{library}/patternPluginManagerPolyfill.php';
+require_once '%{php_home}/Psr/Cache/autoload.php';
+require_once '%{php_home}/Psr/SimpleCache/autoload.php';
+EOF
+
+: Create autoloader
+phpab --template fedora --output src/autoload.php src
+cat << 'EOF' | tee -a src/autoload.php
+\Fedora\Autoloader\Dependencies::required([
+    '%{php_home}/Psr/Cache/autoload.php',
+    '%{php_home}/Psr/SimpleCache/autoload.php',
+    '%{php_home}/Zend/Stdlib/autoload.php',
+    '%{php_home}/Zend/ServiceManager/autoload.php',
+    '%{php_home}/Zend/EventManager/autoload.php',
+    __DIR__ . '/patternPluginManagerPolyfill.php',
+]);
+\Fedora\Autoloader\Dependencies::optional([
+    '%{php_home}/Zend/Serializer/autoload.php',
+    '%{php_home}/Zend/Session/autoload.php',
+    '%{php_home}/MongoDB/autoload.php',
+]);
+EOF
+
+
+
+%install
+mkdir -p   %{buildroot}%{php_home}/Zend/
+cp -pr src %{buildroot}%{php_home}/Zend/%{library}
+
+install -m644 autoload.php %{buildroot}%{php_home}/Zend/%{library}-autoload.php
+
+
+%check
+%if %{with_tests}
+mkdir vendor
+cat << 'EOF' | tee vendor/autoload.php
+<?php
+require_once '%{buildroot}%{php_home}/Zend/%{library}/autoload.php';
+# For BR without new autoloader
+\Fedora\Autoloader\Dependencies::required([
+    '%{php_home}/Cache/IntegrationTests/autoload.php',
+    '%{php_home}/Zend/autoload.php',
+]);
+\Fedora\Autoloader\Autoload::addPsr4('ZendTest\\%{library}\\', dirname(__DIR__) . '/test');
+EOF
+
+# Try to slowdown tests with erratic results
+sed -e '/unlinkDelay/s/5000/50000/' \
+    -e '/usleep/s/1000/10000/' \
+    -i test/Storage/Adapter/FilesystemTest.php
+
+ret=0
+for cmdarg in "php %{phpunit}"  php71 php72 php73 php74; do
+  if which $cmdarg; then
+    set $cmdarg
+    $1 ${2:-%{_bindir}/phpunit7} --verbose || ret=1
+  fi
+done
+exit $ret
+%else
+: Test suite disabled
+%endif
+
+
+%files
+# remirepo:1
+%{!?_licensedir:%global license %%doc}
+%license LICENSE
+%doc *.md
+%doc composer.json
+%{php_home}/Zend/%{library}
+%{php_home}/Zend/%{library}-autoload.php
+
+
+%changelog
+* Fri Aug 30 2019 Remi Collet <remi@remirepo.net> - 2.9.0-1
+- update to 2.9.0
+- raise dependency on zend-stdlib 3.2.1
+
+* Thu Aug 29 2019 Remi Collet <remi@remirepo.net> - 2.8.3-2
+- update to 2.8.3
+
+* Sun Nov 25 2018 Remi Collet <remi@remirepo.net> - 2.8.2-4
+- fix autoloader for psr/cache and psr/simple-cache
+
+* Wed May  2 2018 Remi Collet <remi@remirepo.net> - 2.8.2-2
+- update to 2.8.2
+
+* Thu Apr 26 2018 Remi Collet <remi@remirepo.net> - 2.8.1-2
+- update to 2.8.1
+
+* Thu Apr 26 2018 Remi Collet <remi@remirepo.net> - 2.8.0-4
+- add optional dependency on mongodb/mongodb
+
+* Thu Apr 26 2018 Remi Collet <remi@remirepo.net> - 2.8.0-2
+- update to 2.8.0
+- raise dependency on PHP 5.6
+- add dependency on psr/cache
+- add dependency on psr/simple-cache
+- raise dependency on zend-eventmanager 3.2
+- raise dependency on zend-servicemanager 3.3
+- raise dependency on zend-stdlib 3.1
+- use range dependencies (F27+)
+- switch to phpunit6 or phpunit7
+
+* Fri Nov 24 2017 Remi Collet <remi@remirepo.net> - 2.7.2-6
+- switch from zend-loader to fedora/autoloader
+
+* Tue Nov 14 2017 Remi Collet <remi@fedoraproject.org> - 2.7.2-5
+- try to slowdown tests with erratic result (FTBFS)
+
+* Tue Oct 31 2017 Remi Collet <remi@fedoraproject.org> - 2.7.2-4
+- fix FTBFS from Koschei, add upstream patch for PHP 7.2
+
+* Fri Dec 16 2016 Remi Collet <remi@fedoraproject.org> - 2.7.2-1
+- update to 2.7.2
+
+* Fri May 13 2016 Remi Collet <remi@fedoraproject.org> - 2.7.1-1
+- update to 2.7.1
+
+* Wed Apr 13 2016 Remi Collet <remi@fedoraproject.org> - 2.7.0-1
+- update to 2.7.0
+
+* Sat Feb 13 2016 Remi Collet <remi@fedoraproject.org> - 2.6.1-1
+- update to 2.6.1
+
+* Fri Feb 12 2016 Remi Collet <remi@fedoraproject.org> - 2.6.0-1
+- update to 2.6.0
+- raise dependency on zend-stdlib >= 2.7
+- raise dependency on zend-servicemanager >= 2.7.5
+- raise dependency on zend-eventmanager >= 2.6.2
+
+* Wed Sep 16 2015 Remi Collet <remi@fedoraproject.org> - 2.5.3-1
+- update to 2.5.3
+- zend-serializer is    optional
+
+* Thu Aug  6 2015 Remi Collet <remi@fedoraproject.org> - 2.5.2-2
+- add missing obsoletes
+
+* Tue Aug  4 2015 Remi Collet <remi@fedoraproject.org> - 2.5.2-1
+- initial package
-- 
cgit