# Perform optional tests %bcond_without perl_Shell_enables_optional_tests Name: perl-Shell Version: 0.73 Release: 30%{?dist} Summary: Run shell commands transparently within perl License: GPL-1.0-or-later OR Artistic-1.0-Perl URL: https://metacpan.org/release/Shell Source0: https://cpan.metacpan.org/authors/id/F/FE/FERREIRA/Shell-%{version}.tar.gz BuildArch: noarch BuildRequires: make BuildRequires: perl-generators BuildRequires: perl-interpreter BuildRequires: perl(Config) BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76 # Run-time BuildRequires: perl(:VERSION) >= 5.6 BuildRequires: perl(constant) BuildRequires: perl(File::Spec::Functions) BuildRequires: perl(strict) BuildRequires: perl(warnings) # Tests BuildRequires: perl(Test::More) %if %{with perl_Shell_enables_optional_tests} # Optional tests: BuildRequires: perl(Test::Pod) >= 1.18 %endif %description Using Shell while importing "foo" creates a subroutine "foo" in the name space of the importing package. Calling "foo" with arguments "arg1", "arg2", ... results in a shell command "foo arg1 arg2...", where the function name and the arguments are joined with a blank. This package is included as a show case, illustrating a few Perl features. It shouldn't be used for production programs. %package tests Summary: Tests for %{name} Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: perl-Test-Harness Requires: perl(warnings) %description tests Tests from %{name}. Execute them with "%{_libexecdir}/%{name}/test". %prep %setup -q -n Shell-%{version} %if !%{with perl_shell_enables_optional_tests} rm t/99_pod.t perl -i -ne 'print $_ unless m{^t/99_pod\.t}' MANIFEST %endif # Correct shebangs for F in t/*.t; do perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#![\s./]*perl}{$Config{startperl}}' "$F" chmod +x "$F" done %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} %if %{with perl_shell_enables_optional_tests} rm %{buildroot}%{_libexecdir}/%{name}/t/99pod.t %endif cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF' #!/bin/sh cd %{_libexecdir}/%{name} && exec 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}') make test %files %doc Changes README %{perl_vendorlib}/Shell.pm %{_mandir}/man3/Shell.* %files tests %{_libexecdir}/%{name} %changelog * Mon Apr 28 2025 Jitka Plesnikova - 0.73-30 - Perl 5.42 rebuild * Mon Feb 10 2025 Petr Pisar - 0.73-29 - Modernize a spec file - Package the tests * Sat Jan 18 2025 Fedora Release Engineering - 0.73-28 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild * Tue Aug 06 2024 Miroslav Suchý - 0.73-27 - convert license to SPDX * Fri Jul 19 2024 Fedora Release Engineering - 0.73-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Thu Jan 25 2024 Fedora Release Engineering - 0.73-25 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sun Jan 21 2024 Fedora Release Engineering - 0.73-24 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Fri Jul 21 2023 Fedora Release Engineering - 0.73-23 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Fri Jan 20 2023 Fedora Release Engineering - 0.73-22 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Fri Jul 22 2022 Fedora Release Engineering - 0.73-21 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Mon May 30 2022 Jitka Plesnikova - 0.73-20 - Perl 5.36 rebuild * Fri Jan 21 2022 Fedora Release Engineering - 0.73-19 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Thu Jul 22 2021 Fedora Release Engineering - 0.73-18 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri May 21 2021 Jitka Plesnikova - 0.73-17 - Perl 5.34 rebuild * Wed Jan 27 2021 Fedora Release Engineering - 0.73-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Tue Jul 28 2020 Fedora Release Engineering - 0.73-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue Jun 23 2020 Jitka Plesnikova - 0.73-14 - Perl 5.32 rebuild * Tue Mar 31 2020 Petr Pisar - 0.73-13 - Modernize a spec file * Thu Jan 30 2020 Fedora Release Engineering - 0.73-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Fri Jul 26 2019 Fedora Release Engineering - 0.73-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Thu May 30 2019 Jitka Plesnikova - 0.73-10 - Perl 5.30 rebuild * Sat Feb 02 2019 Fedora Release Engineering - 0.73-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Fri Jul 13 2018 Fedora Release Engineering - 0.73-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Wed Jun 27 2018 Jitka Plesnikova - 0.73-7 - Perl 5.28 rebuild * Fri Feb 09 2018 Fedora Release Engineering - 0.73-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Thu Jul 27 2017 Fedora Release Engineering - 0.73-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Sun Jun 04 2017 Jitka Plesnikova - 0.73-4 - Perl 5.26 rebuild * Sat Feb 11 2017 Fedora Release Engineering - 0.73-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Sun May 15 2016 Jitka Plesnikova - 0.73-2 - Perl 5.24 rebuild * Tue Mar 22 2016 Jitka Plesnikova - 0.73-1 - 0.73 bump * Thu Feb 04 2016 Fedora Release Engineering - 0.72-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Thu Jun 18 2015 Fedora Release Engineering - 0.72-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Wed Jun 03 2015 Jitka Plesnikova - 0.72-6 - Perl 5.22 rebuild * Tue Aug 26 2014 Jitka Plesnikova - 0.72-5 - Perl 5.20 rebuild * Sat Jun 07 2014 Fedora Release Engineering - 0.72-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Sun Aug 04 2013 Fedora Release Engineering - 0.72-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Wed Jul 17 2013 Petr Pisar - 0.72-2 - Perl 5.18 rebuild * Tue Feb 05 2013 Normunds Neimanis 0.72-1 - Initial package for Fedora