%global composer_vendor marcusschwarz %global composer_project lesserphp %{!?phpdir: %global phpdir %{_datadir}/php} %global pkgdir %{phpdir}/%{composer_vendor}-%{composer_project} Name: php-%{composer_vendor}-%{composer_project} Version: 0.5.4 Release: 2%{?dist} Summary: A compiler for LESS written in PHP License: MIT or GPLv3 URL: https://www.maswaba.de/lesserphpdocs/ %global repo_owner MarcusSchwarz %global repo_name lesserphp Source0: https://github.com/%{repo_owner}/%{repo_name}/archive/v%{version}/%{repo_name}-%{version}.tar.gz BuildArch: noarch BuildRequires: php-composer(phpunit/phpunit) BuildRequires: php-composer(theseer/autoload) Requires: php-cli >= 5.3.0 Requires: php-ctype Requires: php-date Requires: php-fileinfo Requires: php-pcre Requires: php-composer(fedora/autoloader) # Composer Provides: php-composer(%{composer_vendor}/%{composer_project}) = %{version} # This project is a fork of lessphp, which was previously packaged for Fedora Obsoletes: php-lessphp <= 0.5.0 %description lesserphp is a compiler that generates CSS from a superset language which adds a collection of convenient features often seen in other languages. All CSS is compatible with LESS, so you can start using new features with your existing CSS. It is designed to be compatible with less.js (https://lesscss.org/), and suitable as a drop in replacement for PHP projects. Autoloader: %{pkgdir}/autoload.php %prep %setup -q -n %{repo_name}-%{version} # Fix include paths sed -e 's|^require "lessify.inc.php";$|require "%{pkgdir}/autoload.php";|' -i lessify sed -e 's|^require $path."lessc.inc.php";$|require "%{pkgdir}/autoload.php";|' -i plessc # Fix version -- Should submit a patch upstream for this... sed 's|"v0.5.2"|"v%{version}"|' -i lessc.inc.php %build # Create autoloader phpab --template fedora --output autoload.php \ lessc.inc.php lessify.inc.php cat autoload.php %install # Library install -d -m 755 %{buildroot}%{pkgdir} install -m 644 -p autoload.php lessc.inc.php lessify.inc.php %{buildroot}%{pkgdir}/ # Executables install -d -m 755 %{buildroot}%{_bindir} install -m 0755 -p lessify %{buildroot}%{_bindir}/lessify install -m 0755 -p plessc %{buildroot}%{_bindir}/plessc %check phpunit --verbose --bootstrap %{buildroot}%{pkgdir}/autoload.php %files %license LICENSE %doc *.md %doc composer.json %{pkgdir}/ %{_bindir}/lessify %{_bindir}/plessc %changelog * Sat Mar 07 2020 Artur Iwicki - 0.5.4-2 - Fix the License: tag - Preserve timestamps during %%install * Mon Mar 02 2020 Artur Iwicki - 0.5.4-1 - Initial packaging