%global composer_vendor phpseclib %global composer_project phpseclib %global github_owner phpseclib %global github_name phpseclib %global github_commit 906a5fafabe5e6ba51ef3dc65b2722a677908837 %global github_short %(c=%{github_commit}; echo ${c:0:7}) %global major 3 %bcond_without tests Name: php-%{composer_vendor}%{major} Version: 3.0.6 Release: 1%{?dist} Summary: PHP Secure Communications Library License: MIT URL: https://github.com/%{github_owner}/%{github_name} Source0: %{name}-%{version}-%{github_short}.tgz Source1: %{name}-autoload.php # Generate a full archive from git snapshot, with tests Source2: makesrc.sh # remirepo:3 # For test build on all available arch #global debug_package %%{nil} #global __debug_install_post /bin/true BuildArch: noarch %if %{with tests} %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 BuildRequires:(php-composer(paragonie/constant_time_encoding) >= 2 with php-composer(paragonie/constant_time_encoding) < 3) BuildRequires:(php-composer(paragonie/random_compat) >= 2 with php-composer(paragonie/random_compat) < 3) %else BuildRequires: php-paragonie-constant-time-encoding BuildRequires: php-paragonie-random-compat %endif BuildRequires: php-composer(fedora/autoloader) %if 0%{?fedora} >= 32 || 0%{?rhel} >= 9 %global phpunit %{_bindir}/phpunit9 %else %global phpunit %{_bindir}/phpunit6 %endif BuildRequires: %{phpunit} BuildRequires: %{_bindir}/phpab # Optional at runtime, to avoid too muck skipped tests BuildRequires: php-bcmath BuildRequires: php-gmp %endif # from composer.json, "require": { # "paragonie/constant_time_encoding": "^1|^2", # "paragonie/random_compat": "^1.4|^2.0", # "php": ">=5.6.1" # Requires: php(language) >= 5.6.1 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 Requires: (php-composer(paragonie/constant_time_encoding) >= 2 with php-composer(paragonie/constant_time_encoding) < 3) Requires: (php-composer(paragonie/random_compat) >= 2 with php-composer(paragonie/random_compat) < 3) %else Requires: php-paragonie-constant-time-encoding Requires: php-paragonie-random-compat %endif Requires: php-bcmath Requires: php-date Requires: php-gmp Requires: php-hash Requires: php-openssl Requires: php-pcre Requires: php-session Requires: php-standard Requires: php-xml # Autoloader Requires: php-composer(fedora/autoloader) Provides: php-composer(%{composer_vendor}/%{composer_project}) = %{version} %description MIT-licensed pure-PHP implementations of an arbitrary-precision integer arithmetic library, Ed25519 / Ed449 / Curve25519 / Curve449, ECDSA / ECDH (with support for 66 curves), RSA (PKCS#1 v2.2 compliant), DSA / DH, DES / 3DES / RC4 / Rijndael / AES / Blowfish / Twofish / Salsa20 / ChaCha20, GCM / Poly1305. %prep %setup -qn %{github_name}-%{github_commit} cp %{SOURCE1} %{composer_vendor}/autoload.php %build %install mkdir -p %{buildroot}%{_datadir}/php cp -pr %{composer_vendor} %{buildroot}%{_datadir}/php/%{composer_vendor}%{major} %if %{with tests} %check cat << 'EOF' | tee tests/bootstrap.php - 3.0.6-1 - update to 3.0.6 * Mon Feb 15 2021 Remi Collet - 3.0.5-1 - update to 3.0.5 * Tue Jan 26 2021 Remi Collet - 3.0.4-1 - update to 3.0.4 * Mon Jan 18 2021 Remi Collet - 3.0.3-1 - update to 3.0.3 * Mon Jan 4 2021 Remi Collet - 3.0.2-1 - update to 3.0.2 * Mon Dec 21 2020 Remi Collet - 3.0.1-1 - update to 3.0.1 * Thu Dec 17 2020 Remi Collet - 3.0.0-1 - update to 3.0.0 - rename to php-phpseclib3 - install in /usr/share/php/phpseclib3 - raise dependency on PHP 5.6 - add dependency on paragonie/constant_time_encoding - add dependency on paragonie/random_compat * Thu Dec 17 2020 Remi Collet - 2.0.30-1 - update to 2.0.30 - switch to phpunit9 on Fedora * Tue Sep 8 2020 Remi Collet - 2.0.29-1 - update to 2.0.29 * Wed Jul 8 2020 Remi Collet - 2.0.28-1 - update to 2.0.28 * Mon Apr 6 2020 Remi Collet - 2.0.27-1 - update to 2.0.27 * Mon Mar 23 2020 Remi Collet - 2.0.26-1 - update to 2.0.26 * Tue Feb 25 2020 Remi Collet - 2.0.25-1 - update to 2.0.25 * Mon Feb 24 2020 Remi Collet - 2.0.24-1 - update to 2.0.24 * Tue Sep 17 2019 Remi Collet - 2.0.23-1 - update to 2.0.23 * Mon Sep 16 2019 Remi Collet - 2.0.22-1 - update to 2.0.22 * Mon Jul 15 2019 Remi Collet - 2.0.21-1 - update to 2.0.21 * Tue Jun 25 2019 Remi Collet - 2.0.20-1 - update to 2.0.20 * Fri Jun 21 2019 Remi Collet - 2.0.19-1 - update to 2.0.19 * Thu Jun 13 2019 Remi Collet - 2.0.18-1 - update to 2.0.18 * Mon May 27 2019 Remi Collet - 2.0.17-1 - update to 2.0.17 * Mon Mar 11 2019 Remi Collet - 2.0.15-1 - update to 2.0.15 * Thu Jan 31 2019 Remi Collet - 2.0.14-1 - update to 2.0.14 * Tue Dec 18 2018 Remi Collet - 2.0.13-1 - update to 2.0.13 * Mon Nov 5 2018 Remi Collet - 2.0.12-1 - update to 2.0.12 * Mon Apr 16 2018 Remi Collet - 2.0.11-1 - update to 2.0.11 * Tue Feb 20 2018 Remi Collet - 2.0.10-2 - allow to run with old PHPUnit * Tue Feb 20 2018 Remi Collet - 2.0.10-1 - Update to 2.0.10 - skip tests with PHPUnit < 4.8.35 (EPEL-6) * Wed Nov 29 2017 Remi Collet - 2.0.9-1 - Update to 2.0.9 * Mon Oct 23 2017 Remi Collet - 2.0.7-1 - Update to 2.0.7 * Thu Jun 8 2017 Remi Collet - 2.0.6-2 - define correct timezone for the test suite * Mon Jun 5 2017 Remi Collet - 2.0.6-1 - Update to 2.0.6 * Mon May 8 2017 Remi Collet - 2.0.5-1 - Update to 2.0.5 - switch to fedora/autoloader - use SCL of PHP when available for test suite - open https://github.com/phpseclib/phpseclib/issues/1122 - regression with 5.3 - open https://github.com/phpseclib/phpseclib/pull/1121 - fix permission * Tue Oct 4 2016 Remi Collet - 2.0.4-1 - update to 2.0.4 * Fri Sep 2 2016 Remi Collet - 2.0.3-1 - update to 2.0.3 * Tue Jun 7 2016 Remi Collet - 2.0.2-1 - update to 2.0.2 * Tue Jan 19 2016 Remi Collet - 2.0.1-1 - update to 2.0.1 - sources from git snapshot for tests - run test suite with both PHP 5 and 7 when available * Sun Sep 6 2015 Remi Collet - 2.0.0-4 - change source0 to commit reference - add BR for better test coverage - add needed backport stuff for EL-5 in #remirepo * Wed Sep 02 2015 François Kooman - 2.0.0-3 - apply patch for test to avoid loading class that is now autoloaded * Wed Sep 02 2015 François Kooman - 2.0.0-2 - add autoload script - make use of autoload script when running tests during build - fix double inclusion of directory * Sat Aug 08 2015 François Kooman - 2.0.0-1 - initial package