Merged update from upstream sources

This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.

Source: https://src.fedoraproject.org/rpms/perl-ExtUtils-MakeMaker.git#4240a95ba69790bcec99ece974827b1b004a0ae6
This commit is contained in:
DistroBaker 2021-02-19 13:20:30 +00:00
parent ea694aab15
commit 02b09609f4
6 changed files with 88 additions and 3 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

1
.gitignore vendored
View File

@ -46,3 +46,4 @@
/ExtUtils-MakeMaker-7.54.tar.gz
/ExtUtils-MakeMaker-7.56.tar.gz
/ExtUtils-MakeMaker-7.58.tar.gz
/ExtUtils-MakeMaker-7.60.tar.gz

View File

@ -5,8 +5,8 @@
Name: perl-%{cpan_name}
Epoch: 2
Version: 7.58
Release: 2%{?dist}
Version: 7.60
Release: 1%{?dist}
Summary: Create a module Makefile
License: GPL+ or Artistic
URL: https://metacpan.org/release/%{cpan_name}
@ -127,6 +127,13 @@ Recommends: gcc
# Do not export private redefinitions
%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(DynaLoader|ExtUtils::MakeMaker::_version\\)
# Filter modules bundled for tests
%global __requires_exclude %{__requires_exclude}|^perl\\(MY)\s*$
%global __requires_exclude %{__requires_exclude}|^perl\\(TieIn)\s*$
%global __requires_exclude %{__requires_exclude}|^perl\\(TieOut)\s*$
%global __requires_exclude %{__requires_exclude}|^perl\\(MakeMaker::Test.*)\s*$
%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}^%{_libexecdir}
%description
This utility is designed to write a Makefile for an extension module from a
Makefile.PL. It is based on the Makefile.SH model provided by Andy
@ -161,6 +168,28 @@ other modules but that do not need full-featured ExtUtils::MakeMaker. The
issue with ExtUtils::MakeMaker is it pulls in Perl header files and that
is an overkill for small subroutines.
%package tests
Summary: Tests for %{name}
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: perl-Test-Harness
Requires: perl(CPAN::Meta) >= 2.143240
Requires: perl(Encode)
Requires: perl(File::Spec)
Requires: perl(Parse::CPAN::Meta) >= 1.4414
Requires: perl(Pod::Man)
Requires: perl(version)
%if %{with perl_ExtUtils_MakeMaker_enables_optional_test}
# Optional tests
Requires: perl-devel
Requires: perl(B)
Requires: perl(ExtUtils::CBuilder)
Requires: perl(PerlIO)
%endif
%description tests
Tests from %{name}-%{version}. Execute them
with "%{_libexecdir}/%{name}/test".
%prep
%setup -q -n ExtUtils-MakeMaker-%{version}
%patch0 -p1
@ -178,15 +207,52 @@ perl -i -ne 'print $_ unless m{^lib/ExtUtils/MakeMaker/version(?:/|\.pm)}' MANIF
rm -rf lib/ExtUtils/MakeMaker/Locale.pm
perl -i -ne 'print $_ unless m{^lib/ExtUtils/MakeMaker/Locale\.pm}' MANIFEST
%if !%{with perl_ExtUtils_MakeMaker_enables_optional_test}
# Remove optional tests
rm t/02-xsdynamic.t t/03-xsstatic.t
perl -i -ne 'print $_ unless m{^t/02-xsdynamic\.t}' MANIFEST
perl -i -ne 'print $_ unless m{^t/03-xsstatic\.t}' MANIFEST
perl -i -ne 'print $_ unless m{^t/unicode\.t}' MANIFEST
%endif
# Help file to recognise the Perl scripts and normalize shebangs
for F in `find t -name *.t`; do
if head -1 "$F" | grep -q -e '^#!.*perl' ; then
perl -MConfig -pi -e 's|^#!.*perl\b|$Config{startperl}|' "$F"
else
perl -i -MConfig -ple 'print $Config{startperl} if $. == 1' "$F"
fi
chmod +x "$F"
done
%build
BUILDING_AS_PACKAGE=1 perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1
%{make_build}
%install
%{make_install}
# Install tests
mkdir -p %{buildroot}/%{_libexecdir}/%{name}
cp -a t %{buildroot}/%{_libexecdir}/%{name}
cat > %{buildroot}/%{_libexecdir}/%{name}/test << 'EOF'
#!/bin/bash
set -e
# Lots of tests write into temporary files/directories. The easiest solution
# is to copy the tests into a writable directory and execute them from there.
DIR=$(mktemp -d)
pushd "$DIR"
cp -a %{_libexecdir}/%{name}/* ./
prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
popd
rm -rf "$DIR"
EOF
chmod +x %{buildroot}/%{_libexecdir}/%{name}/test
%{_fixperms} $RPM_BUILD_ROOT/*
%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
@ -212,7 +278,14 @@ make test
%{perl_vendorlib}/ExtUtils/MM/Utils.pm
%{_mandir}/man3/ExtUtils::MM::Utils.*
%files tests
%{_libexecdir}/%{name}
%changelog
* Fri Feb 19 2021 Jitka Plesnikova <jplesnik@redhat.com> - 2:7.60-1
- 7.60 bump
- Package tests
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2:7.58-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

5
plans/sanity.fmf Normal file
View File

@ -0,0 +1,5 @@
summary: Sanity tests
discover:
how: fmf
execute:
how: tmt

View File

@ -1 +1 @@
SHA512 (ExtUtils-MakeMaker-7.58.tar.gz) = 37441d61cf6a4f8da69eb5f4b2e0ec6da8bc03cec15e69d89dd486bf88c2252da87fa894afdd4a45c57c009fbbf54d6affe38320e15f74af9b64d8d8b0c34466
SHA512 (ExtUtils-MakeMaker-7.60.tar.gz) = 7e099d58f567f058b2cbae72ea2b1380e6fd7c7bab12c8756f11fe51cb6c50aac4313362f6726fd1abe45fec9ff94355666ecd80320bc3f9722659ebd3ae769e

5
tests/upstream-tests.fmf Normal file
View File

@ -0,0 +1,5 @@
summary: Upstream tests
component: perl-ExtUtils-MakeMaker
require: perl-ExtUtils-MakeMaker-tests
test: /usr/libexec/perl-ExtUtils-MakeMaker/test