Blob Blame History Raw
# Enable XS implementation
%bcond_without perl_PerlX_Maybe_enables_xs

Name:           perl-PerlX-Maybe
Version:        1.202
Release:        1%{?dist}
Summary:        Return a pair only if they are both defined
# LICENSE:      GPL+ or Artistic
# COPYRIGHT:    Public Domain
License:        (GPL+ or Artistic) and Public Domain
URL:            https://metacpan.org/release/PerlX-Maybe
Source0:        https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/PerlX-Maybe-%{version}.tar.gz
BuildArch:      noarch
BuildRequires:  coreutils
BuildRequires:  make
BuildRequires:  perl-generators
BuildRequires:  perl-interpreter
BuildRequires:  perl(ExtUtils::MakeMaker) >= 6.76
BuildRequires:  perl(strict)
# Run-time:
BuildRequires:  perl(:VERSION) >= 5.6
BuildRequires:  perl(Carp)
BuildRequires:  perl(Exporter)
BuildRequires:  perl(Exporter::Tiny)
BuildRequires:  perl(Scalar::Util)
BuildRequires:  perl(warnings)
%if %{with perl_PerlX_Maybe_enables_xs}
# Optional run-time:
BuildRequires:  perl(PerlX::Maybe::XS) >= 0.003
%endif
# Tests:
BuildRequires:  perl(Test::More) >= 0.61
Requires:       perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
Requires:       perl(Exporter)
Requires:       perl(Exporter::Tiny)
%if %{with perl_PerlX_Maybe_enables_xs}
Recommends:     perl(PerlX::Maybe::XS) >= 0.003
%endif

# Filter under-specified dependencies
%global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^perl\\(Test::More\\)$

%description
This Perl module provides a syntax sugar for passing a pair of variables only
if both of them match some criteria (to be defined usually).

%package tests
Summary:        Tests for %{name}
Requires:       %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires:       perl-Test-Harness
%if %{with perl_PerlX_Maybe_enables_xs}
Requires:       perl(PerlX::Maybe::XS) >= 0.003
%endif
Requires:       perl(Test::More) >= 0.61

%description tests
Tests from %{name}. Execute them
with "%{_libexecdir}/%{name}/test".

%prep
%setup -q -n PerlX-Maybe-%{version}

%build
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1
%{make_build}

%install
%{make_install}
%{_fixperms} %{buildroot}/*
# Install tests
mkdir -p %{buildroot}%{_libexecdir}/%{name}
cp -a t %{buildroot}%{_libexecdir}/%{name}
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
#!/bin/bash
set -e
cd %{_libexecdir}/%{name}
%if %{with perl_PerlX_Maybe_enables_xs}
# This actually tests PerlX::Maybe::XS implementation
unset PERLX_MAYBE_IMPLEMENTATION
prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
%endif
# So we run all tests again enforing pure Perl implementation
export PERLX_MAYBE_IMPLEMENTATION=PP
prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
EOF
chmod +x %{buildroot}%{_libexecdir}/%{name}/test

%check
export HARNESS_OPTIONS=j$(perl -e 'if ($ARGV[0] =~ /.*-j([0-9][0-9]*).*/) {print $1} else {print 1}' -- '%{?_smp_mflags}')
%if %{with perl_PerlX_Maybe_enables_xs}
# This actually tests PerlX::Maybe::XS implementation
unset PERLX_MAYBE_IMPLEMENTATION
make test
%endif
# So we run all tests again enforing pure Perl implementation
PERLX_MAYBE_IMPLEMENTATION=PP make test

%files
%license LICENSE
%doc Changes COPYRIGHT CREDITS README
%{perl_vendorlib}/*
%{_mandir}/man3/*

%files tests
%{_libexecdir}/%{name}

%changelog
* Tue Mar 15 2022 Petr Pisar <ppisar@redhat.com> - 1.202-1
- 1.202 bump
- License corrected to "(GPL+ or Artistic) and Public Domain"
- Package tests

* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.201-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

* Fri May 21 2021 Jitka Plesnikova <jplesnik@redhat.com> - 1.201-9
- Perl 5.34 rebuild

* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.201-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.201-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Tue Jun 23 2020 Jitka Plesnikova <jplesnik@redhat.com> - 1.201-6
- Perl 5.32 rebuild

* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.201-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.201-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

* Fri May 31 2019 Jitka Plesnikova <jplesnik@redhat.com> - 1.201-3
- Perl 5.30 rebuild

* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.201-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Mon Nov 26 2018 Petr Pisar <ppisar@redhat.com> - 1.201-1
- 1.201 bump

* Thu Oct 11 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1.200-1
- 1.200 bump

* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.001-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Thu Jun 28 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1.001-2
- Perl 5.28 rebuild

* Mon Mar 12 2018 Petr Pisar <ppisar@redhat.com> 1.001-1
- Specfile autogenerated by cpanspec 1.78.