# remirepo spec file for php-amqplib, from: # # Fedora spec file for php-amqplib # # Copyright (c) 2017-2021 Shawn Iwinski # # License: MIT # http://opensource.org/licenses/MIT # # Please preserve changelog entries # %global github_owner php-amqplib %global github_name php-amqplib %global github_version 3.0.0 %global github_commit c0a8eade209b7e43d6a405303d8de716dfd02749 %global composer_vendor php-amqplib %global composer_project php-amqplib # "php": "^7.0|~8.0.0" %global php_min_ver 7.0 # "phpseclib/phpseclib": "^2.0|^3.0" %global phpseclib_min_ver 2.0 %global phpseclib_max_ver 4.0 # Build using "--without tests" to disable tests %global with_tests 0%{!?_without_tests:1} # Range dependencies supported? %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 %global with_range_dependencies 1 %else %global with_range_dependencies 0 %endif %{!?phpdir: %global phpdir %{_datadir}/php} Name: %{composer_project} Version: %{github_version} Release: 2%{?github_release}%{?dist} Summary: Pure PHP implementation of the AMQP protocol License: LGPLv2+ URL: https://github.com/%{github_owner}/%{github_name} # GitHub export does not include tests # Run php-amqplib-get-source.sh to create full source Source0: %{name}-%{github_version}-%{github_commit}.tar.gz Source1: %{name}-get-source.sh BuildArch: noarch # Tests %if %{with_tests} ## composer.json BuildRequires: php(language) >= %{php_min_ver} BuildRequires: phpunit9 BuildRequires: php-curl BuildRequires: php-mbstring BuildRequires: php-sockets %if %{with_range_dependencies} BuildRequires: (php-composer(phpseclib/phpseclib) >= %{phpseclib_min_ver} with php-composer(phpseclib/phpseclib) < %{phpseclib_max_ver}) %else BuildRequires: php-phpseclib >= %{phpseclib_min_ver} %endif ## phpcompatinfo for version 3.0.0 BuildRequires: php-date BuildRequires: php-hash BuildRequires: php-json BuildRequires: php-pcntl BuildRequires: php-pcre BuildRequires: php-reflection BuildRequires: php-spl ## Autoloader BuildRequires: php-composer(fedora/autoloader) %endif # composer.json Requires: php(language) >= %{php_min_ver} %if %{with_range_dependencies} Requires: (php-composer(phpseclib/phpseclib) >= %{phpseclib_min_ver} with php-composer(phpseclib/phpseclib) < %{phpseclib_max_ver}) %else Requires: php-phpseclib >= %{phpseclib_min_ver} %endif Requires: php-mbstring Requires: php-sockets # phpcompatinfo for version 3.0.0 Requires: php-date Requires: php-pcntl Requires: php-pcre Requires: php-spl # Autoloader Requires: php-composer(fedora/autoloader) # Weak dependencies %if 0%{?fedora} >= 21 Suggests: php-pcntl %endif # Conflicts ## composer.json Conflicts: php(language) = 7.4.0 Conflicts: php(language) = 7.4.1 # Standard "php-{COMPOSER_VENDOR}-{COMPOSER_PROJECT}" naming Provides: php-%{composer_vendor}-%{composer_project} = %{version}-%{release} Provides: %{composer_vendor}-%{composer_project} = %{version}-%{release} # Composer Provides: php-composer(%{composer_vendor}/%{composer_project}) = %{version} %description This library is a pure PHP implementation of the AMQP 0-9-1 protocol [1]. It's been tested against RabbitMQ [2]. Autoloader: %{phpdir}/PhpAmqpLib/autoload.php [1] http://www.rabbitmq.com/tutorials/amqp-concepts.html [2] http://www.rabbitmq.com/ %prep %setup -qn %{github_name}-%{github_commit} %build : Create autoloader cat <<'AUTOLOAD' | tee PhpAmqpLib/autoload.php - 3.0.0-1 - Update to 3.0.0 (RHBZ #1882890) - Fix FTBFS (RHBZ #1987805) - Note: Major version upgrade required because v3 introduces PHP8 compatibility which is required for f35+ - Use PHPUnit 9 * Sat Sep 05 2020 Shawn Iwinski - 2.12.0-2 - Require phpseclib for runtime in additional to build require * Sat Sep 05 2020 Shawn Iwinski - 2.12.0-1 - Update to 2.12.0 (RHBZ #1742616) * Sun May 26 2019 Shawn Iwinski - 2.9.2-1 - Update to 2.9.2 (RHBZ #1535736) * Fri May 10 2019 Shawn Iwinski - 2.7.3-1 - Update to 2.7.3 - Update license from LGPLv2 to LGPLv2+ * Fri Nov 03 2017 Shawn Iwinski - 2.7.0-2 - Set default timezone in tests' bootstrap * Wed Oct 25 2017 Shawn Iwinski - 2.7.0-1 - Initial package