# remirepo/fedora spec file for php-composer-pcre # # Copyright (c) 2021 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # %bcond_without tests %global gh_commit 3d322d715c43a1ac36c7fe215fa59336265500f2 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) #global gh_date 20150717 %global gh_owner composer %global gh_project pcre %global ns_vendor Composer %global ns_project Pcre %global php_home %{_datadir}/php %global major %nil Name: php-%{gh_owner}-%{gh_project}%{major} Version: 1.0.0 Release: 1%{?gh_date:.%{gh_date}git%{gh_short}}%{?dist} Summary: PCRE wrapping library version 1 License: MIT URL: https://github.com/%{gh_owner}/%{gh_project} # git snapshot to get upstream test suite Source0: %{name}-%{version}-%{gh_short}.tgz Source1: makesrc.sh BuildArch: noarch %if %{with tests} # For tests BuildRequires: php(language) >= 5.3.2 BuildRequires: php-pcre BuildRequires: php-spl # From composer.json, "require-dev": { # "symfony/phpunit-bridge": "^4.2 || ^5", # "phpstan/phpstan": "^1", # "phpstan/phpstan-strict-rules": "^1.1" %global phpunit /usr/bin/phpunit9 BuildRequires: %{phpunit} # Autoloader BuildRequires: php-fedora-autoloader-devel %endif # From composer.json, "require": { # "php": "^5.3.2 || ^7.0 || ^8.0" Requires: php(language) >= 5.3.2 # From phpcompatinfo report for version 1.0.0 Requires: php-pcre Requires: php-spl # Autoloader Requires: php-composer(fedora/autoloader) Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version} %description PCRE wrapping library that offers type-safe preg_* replacements. This library gives you a way to ensure preg_* functions do not fail silently, returning unexpected nulls that may not be handled. It also makes it easier ot work with static analysis tools like PHPStan or Psalm as it simplifies and reduces the possible return values from all the preg_* functions which are quite packed with edge cases. Autoloader: %{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}/autoload.php %prep %setup -q -n %{gh_project}-%{gh_commit} %build : Generate classmap autoloader phpab --template fedora --output src/autoload.php src %install : Library mkdir -p %{buildroot}%{php_home}/%{ns_vendor}/ cp -pr src %{buildroot}%{php_home}/%{ns_vendor}/%{ns_project}%{major} %check %if %{with tests} mkdir vendor cat << 'EOF' | tee vendor/autoload.php - 1.0.0-1 - initial package, version 1.0.0