# remirepo spec file for php-erusev-parsedown, from: # # Fedora spec file for php-erusev-parsedown # # Copyright (c) 2017-2019 Shawn Iwinski # # License: MIT # http://opensource.org/licenses/MIT # # Please preserve changelog entries # %global github_owner erusev %global github_name parsedown %global github_version 1.7.1 %global github_commit 92e9c27ba0e74b8b028b111d1b6f956a15c01fc1 %global composer_vendor erusev %global composer_project parsedown # "php": ">=5.3.0" %global php_min_ver 5.3.0 # Build using "--without tests" to disable tests %global with_tests 0%{!?_without_tests:1} %{!?phpdir: %global phpdir %{_datadir}/php} Name: php-%{composer_vendor}-%{composer_project} Version: %{github_version} Release: 1%{?github_release}%{?dist} Summary: Markdown parser in PHP License: MIT URL: http://parsedown.org # GitHub export does not include tests. # Run php-erusev-parsedown-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: php-composer(phpunit/phpunit) BuildRequires: php-mbstring ## phpcompatinfo (computed from version 1.7.1) BuildRequires: php-pcre BuildRequires: php-spl ## Autoloader BuildRequires: php-fedora-autoloader-devel %endif # composer.json Requires: php(language) >= %{php_min_ver} Requires: php-mbstring # phpcompatinfo (computed from version 1.7.1) Requires: php-pcre # Autoloader Requires: php-composer(fedora/autoloader) # Composer Provides: php-composer(%{composer_vendor}/%{composer_project}) = %{version} %description %{summary}. Autoloader: %{phpdir}/%{composer_vendor}/%{composer_project}/autoload.php %prep %setup -qn %{github_name}-%{github_commit} %build : Create autoloader cat <<'AUTOLOAD' | tee autoload.php '/Parsedown.php', ), __DIR__); AUTOLOAD %install mkdir -p %{buildroot}%{phpdir}/%{composer_vendor}/%{composer_project} cp -rp Parsedown.php autoload.php \ %{buildroot}%{phpdir}/%{composer_vendor}/%{composer_project}/ %check %if %{with_tests} : Create tests bootstrap %{_bindir}/phpab --output bootstrap.php test cat <<'BOOTSTRAP' | tee -a bootstrap.php require_once '%{buildroot}%{phpdir}/%{composer_vendor}/%{composer_project}/autoload.php'; if (!class_exists('PHPUnit\\Framework\\TestCase')) { class_alias('PHPUnit_Framework_TestCase', 'PHPUnit\\Framework\\TestCase'); } BOOTSTRAP : Upstream tests RETURN_CODE=0 PHPUNIT=$(which phpunit) for PHP_EXEC in php php70 php71 php72 php73; do if [ -z "$PHP_EXEC" ] || which $PHP_EXEC; then $PHP_EXEC $PHPUNIT --verbose --bootstrap bootstrap.php \ || RETURN_CODE=1 fi done exit $RETURN_CODE %else : Tests skipped %endif %files %{!?_licensedir:%global license %%doc} %license LICENSE.txt %doc *.md %doc composer.json %dir %{phpdir}/%{composer_vendor} %{phpdir}/%{composer_vendor}/%{composer_project} %changelog * Sun Feb 24 2019 Shawn Iwinski - 1.7.1-1 - Update to 1.7.1 (RHBZ #1569512 / RHBZ #1569513 / RHBZ #1569514 / CVE-2018-1000162) * Thu Dec 14 2017 Shawn Iwinski - 1.6.4-1 - Update to 1.6.4 (RHBZ #1513209) * Sat Jul 08 2017 Shawn Iwinski - 1.6.3-1 - Update to 1.6.3 (RHBZ #1468067) - Add "get source" script because upstream attributes removed tests from snapshot * Sun Jun 11 2017 Shawn Iwinski - 1.6.2-2 - Fix directory ownership * Tue May 30 2017 Shawn Iwinski - 1.6.2-1 - Initial package