Prep for EPEL-8

- Use author-independent source URL
- Classify buildreqs by usage
- Trim optional dependencies for EPEL-8
- Use %{make_build} and %{make_install}
- Fix permissions verbosely
epel9
Paul Howarth 5 years ago
parent 2844f37f27
commit db9d65c095

@ -0,0 +1,4 @@
from Config import *
# Moo(se)
addFilter("spelling-error Summary\(en_US\) se -> ")

@ -1,71 +1,74 @@
# --with reply_plugin
# Default: --without
# Missing deps (perl(Reply::Plugin))
# Marked as unstable (cf. lib/Reply/Plugin/TypeTiny.pm)
%bcond_with reply_plugin
Name: perl-Type-Tiny
Version: 1.004004
Release: 1%{?dist}
Release: 2%{?dist}
Summary: Tiny, yet Moo(se)-compatible type constraint
License: GPL+ or Artistic
URL: https://metacpan.org/release/Type-Tiny
Source0: https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/Type-Tiny-%{version}.tar.gz
Source0: https://cpan.metacpan.org/modules/by-module/Test/Type-Tiny-%{version}.tar.gz
BuildArch: noarch
# --with reply_plugin
# Default: --without
# Missing deps (perl(Reply::Plugin))
# Marked as unstable (cf. lib/Reply/Plugin/TypeTiny.pm)
%bcond_with reply_plugin
# Module Build
BuildRequires: coreutils
BuildRequires: findutils
BuildRequires: %{__make}
BuildRequires: %{__perl}
BuildRequires: perl-interpreter >= 0:5.006001
BuildRequires: make
BuildRequires: perl-generators
BuildRequires: perl-interpreter
BuildRequires: perl(CPAN::Meta::Requirements) >= 2.0
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76
BuildRequires: sed
# Module Runtime
BuildRequires: perl(B)
BuildRequires: perl(Exporter::Tiny) >= 0.040
BuildRequires: perl(overload)
BuildRequires: perl(Scalar::Util)
BuildRequires: perl(strict)
BuildRequires: perl(Text::Balanced)
BuildRequires: perl(utf8)
BuildRequires: perl(warnings)
# Optional Module Runtime
BuildRequires: perl(B::Deparse)
BuildRequires: perl(Carp)
BuildRequires: perl(Data::Dumper)
BuildRequires: perl(Devel::LexAlias) >= 0.05
BuildRequires: perl(Devel::StackTrace)
BuildRequires: perl(mro)
BuildRequires: perl(re)
BuildRequires: perl(Ref::Util::XS) >= 0.100
%{?with_reply_plugin:
BuildRequires: perl(Reply::Plugin)}
BuildRequires: perl(Sub::Util)
%{?with_reply_plugin:
BuildRequires: perl(Term::ANSIColor)}
BuildRequires: perl(Type::Tie)
# Test Suite
BuildRequires: perl(Config)
BuildRequires: perl(constant)
BuildRequires: perl(CPAN::Meta::Requirements)
BuildRequires: perl(Data::Dumper)
BuildRequires: perl(Encode)
BuildRequires: perl(Exporter::Tiny) >= 0.040
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.17
BuildRequires: perl(feature)
BuildRequires: perl(lib)
BuildRequires: perl(Math::BigFloat)
BuildRequires: perl(Scalar::Util)
BuildRequires: perl(Test::Builder)
BuildRequires: perl(Test::Fatal)
BuildRequires: perl(Test::Moose)
BuildRequires: perl(Test::More) >= 0.96
BuildRequires: perl(Test::Requires)
BuildRequires: perl(Test::Tester) >= 0.109
BuildRequires: perl(Text::Balanced)
BuildRequires: perl(overload)
BuildRequires: perl(strict)
BuildRequires: perl(threads)
BuildRequires: perl(Tie::Array)
BuildRequires: perl(Tie::Hash)
BuildRequires: perl(Tie::Scalar)
BuildRequires: perl(utf8)
BuildRequires: perl(warnings)
BuildRequires: sed
# optional
# N/A in Fedora: BuildRequires: perl(Class::InsideOut)
BuildRequires: perl(Class::ISA)
# Optional Tests
BuildRequires: perl(Benchmark)
BuildRequires: perl(Devel::Cover)
BuildRequires: perl(Devel::Hide)
BuildRequires: perl(Devel::LexAlias) >= 0.05
BuildRequires: perl(Devel::StackTrace)
BuildRequires: perl(Exporter) >= 5.59
BuildRequires: perl(Function::Parameters)
BuildRequires: perl(Function::Parameters) >= 1.0103
BuildRequires: perl(IO::File)
BuildRequires: perl(IO::String)
BuildRequires: perl(JSON::PP) >= 2.27105
# N/A in Fedora: BuildRequires: perl(Kavorka)
# N/A in Fedora: BuildRequires: perl(match::simple)
BuildRequires: perl(match::simple)
BuildRequires: perl(Method::Generate::Accessor)
BuildRequires: perl(Moo)
BuildRequires: perl(Moo) >= 1.006000
BuildRequires: perl(Moo::Role)
# N/A in Fedora: BuildRequires: perl(Moops)
BuildRequires: perl(Moose) >= 2.0400
BuildRequires: perl(Moose) >= 2.1210
BuildRequires: perl(Moose::Meta::TypeCoercion)
BuildRequires: perl(Moose::Meta::TypeCoercion::Union)
BuildRequires: perl(Moose::Meta::TypeConstraint)
@ -76,48 +79,61 @@ BuildRequires: perl(Moose::Meta::TypeConstraint::Union)
BuildRequires: perl(Moose::Util::TypeConstraints)
BuildRequires: perl(MooseX::Getopt) >= 0.63
BuildRequires: perl(MooseX::Types)
BuildRequires: perl(MooseX::Types::Common)
BuildRequires: perl(MooseX::Types::Common) >= 0.001004
BuildRequires: perl(MooseX::Types::Moose)
BuildRequires: perl(Mouse)
BuildRequires: perl(Mouse) >= 1.000
BuildRequires: perl(Mouse::Meta::TypeConstraint)
BuildRequires: perl(Mouse::Util)
BuildRequires: perl(Mouse::Util::TypeConstraints)
BuildRequires: perl(MouseX::Types)
# N/A in Fedora: BuildRequires: perl(MouseX::Types::Common)
BuildRequires: perl(MouseX::Types) >= 0.06
BuildRequires: perl(MouseX::Types::Moose)
BuildRequires: perl(mro)
BuildRequires: perl(Object::Accessor)
BuildRequires: perl(re)
BuildRequires: perl(Ref::Util::XS) > 0.100
%{?with_reply_plugin:BuildRequires: perl(Reply::Plugin)}
%if !%{defined perl_bootstrap}
# Build-cycle: perl-Return-Type → perl-Type-Tiny
BuildRequires: perl(Return::Type) >= 0.004
%endif
BuildRequires: perl(Object::Accessor) >= 0.30
BuildRequires: perl(Role::Tiny)
BuildRequires: perl(Role::Tiny::With)
BuildRequires: perl(Sub::Exporter::Lexical) >= 0.092291
BuildRequires: perl(Sub::Name)
BuildRequires: perl(Sub::Quote)
# N/A in Fedora: BuildRequires: perl(Switcheroo)
%{?with_reply_plugin:BuildRequires: perl(Term::ANSIColor)}
BuildRequires: perl(Test::Warnings)
BuildRequires: perl(Type::Tie)
%if !%{defined perl_bootstrap}
# Build-cycle: perl-Types-Path-Tiny → perl-Type-Tiny
BuildRequires: perl(Types::Path::Tiny)
%endif
BuildRequires: perl(Test::LeakTrace)
BuildRequires: perl(Test::Moose)
BuildRequires: perl(Test::Tester) >= 0.109
BuildRequires: perl(Test::Warnings) >= 0.005
BuildRequires: perl(threads)
BuildRequires: perl(Tie::Array)
BuildRequires: perl(Tie::Hash)
BuildRequires: perl(Tie::Scalar)
BuildRequires: perl(Validation::Class) >= 7.900017
BuildRequires: perl(Validation::Class::Simple)
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
# Optional test requirements that depend on this package themselves
%if !0%{?rhel}
BuildRequires: perl(Return::Type) >= 0.004
BuildRequires: perl(Types::Path::Tiny)
%endif
# Dependencies
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
Requires: perl(B::Deparse)
Requires: perl(Carp)
Requires: perl(Data::Dumper)
Requires: perl(mro)
Requires: perl(re)
Requires: perl(Sub::Util)
Requires: perl(Text::Balanced)
Recommends: perl(Devel::LexAlias) >= 0.05
Recommends: perl(Devel::StackTrace)
Recommends: perl(Ref::Util::XS) >= 0.100
Recommends: perl(Type::Tie)
# Optional Modules not yet available in EPEL-8
#TODO: BuildRequires: perl(Class::InsideOut) >= 1.13
#TODO: BuildRequires: perl(Kavorka)
#TODO: BuildRequires: perl(Moops)
#TODO: BuildRequires: perl(MouseX::Types::Common) >= 0.001000
#TODO: BuildRequires: perl(Regexp::Util) >= 0.003
#TODO: BuildRequires: perl(Switcheroo)
#TODO: BuildRequires: perl(Type::Tiny::XS)
#TODO: BuildRequires: perl(Types::XSD::Lite)
%description
Type::Tiny is a tiny class for creating Moose-like type constraint objects
which are compatible with Moo, Moose and Mouse.
that are compatible with Moo, Moose and Mouse.
%package -n perl-Test-TypeTiny
Summary: Test::TypeTiny module
@ -127,35 +143,97 @@ Test::TypeTiny module.
%prep
%setup -q -n Type-Tiny-%{version}
# Remove bundled modules
rm -r ./inc
# Remove bundled modules Test::Fatal, Test::Requires and Try::Tiny
rm -r ./inc/
sed -i -e '/^inc\//d' MANIFEST
%build
%{__perl} Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1
%{__make} %{?_smp_mflags}
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1
%{make_build}
%install
%{__make} pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
%{_fixperms} $RPM_BUILD_ROOT/*
%{make_install}
%{_fixperms} -c %{buildroot}
# This file should not be present
rm %{buildroot}%{_mandir}/man3/Type::CONTRIBUTING.3*
%check
%{__make} test
make test EXTENDED_TESTING=1
%files
%doc Changes CREDITS NEWS README
%license LICENSE COPYRIGHT
%{perl_vendorlib}/*
%{!?with_reply_plugin:%exclude %{perl_vendorlib}/Reply}
%{_mandir}/man3/*
%exclude %{perl_vendorlib}/Test
%exclude %{_mandir}/man3/Test::TypeTiny.3pm*
%license COPYRIGHT LICENSE
%doc Changes CONTRIBUTING.pod CREDITS NEWS README
%{perl_vendorlib}/Devel/
%{perl_vendorlib}/Error/
%{perl_vendorlib}/Eval/
%{!?with_reply_plugin:
%exclude }%{perl_vendorlib}/Reply/
%{perl_vendorlib}/Type/
%{perl_vendorlib}/Types/
%{_mandir}/man3/Devel::TypeTiny::Perl56Compat.3*
%{_mandir}/man3/Devel::TypeTiny::Perl58Compat.3*
%{_mandir}/man3/Error::TypeTiny.3*
%{_mandir}/man3/Error::TypeTiny::Assertion.3*
%{_mandir}/man3/Error::TypeTiny::Compilation.3*
%{_mandir}/man3/Error::TypeTiny::WrongNumberOfParameters.3*
%{_mandir}/man3/Eval::TypeTiny.3*
%{!?with_reply_plugin:
%exclude }%{_mandir}/man3/Reply::Plugin::TypeTiny.3*
%{_mandir}/man3/Type::Coercion.3*
%{_mandir}/man3/Type::Coercion::FromMoose.3*
%{_mandir}/man3/Type::Coercion::Union.3*
%{_mandir}/man3/Type::Library.3*
%{_mandir}/man3/Type::Params.3*
%{_mandir}/man3/Type::Parser.3*
%{_mandir}/man3/Type::Registry.3*
%{_mandir}/man3/Type::Tiny.3*
%{_mandir}/man3/Type::Tiny::Class.3*
%{_mandir}/man3/Type::Tiny::Duck.3*
%{_mandir}/man3/Type::Tiny::Enum.3*
%{_mandir}/man3/Type::Tiny::Intersection.3*
%{_mandir}/man3/Type::Tiny::Manual.3*
%{_mandir}/man3/Type::Tiny::Manual::Coercions.3*
%{_mandir}/man3/Type::Tiny::Manual::Libraries.3*
%{_mandir}/man3/Type::Tiny::Manual::Optimization.3*
%{_mandir}/man3/Type::Tiny::Manual::Params.3*
%{_mandir}/man3/Type::Tiny::Manual::Policies.3*
%{_mandir}/man3/Type::Tiny::Manual::UsingWithMoo.3*
%{_mandir}/man3/Type::Tiny::Manual::UsingWithMoose.3*
%{_mandir}/man3/Type::Tiny::Manual::UsingWithMouse.3*
%{_mandir}/man3/Type::Tiny::Manual::UsingWithOther.3*
%{_mandir}/man3/Type::Tiny::Role.3*
%{_mandir}/man3/Type::Tiny::Union.3*
%{_mandir}/man3/Type::Tiny::_HalfOp.3*
%{_mandir}/man3/Type::Utils.3*
%{_mandir}/man3/Types::Common::Numeric.3*
%{_mandir}/man3/Types::Common::String.3*
%{_mandir}/man3/Types::Standard.3*
%{_mandir}/man3/Types::Standard::ArrayRef.3*
%{_mandir}/man3/Types::Standard::CycleTuple.3*
%{_mandir}/man3/Types::Standard::Dict.3*
%{_mandir}/man3/Types::Standard::HashRef.3*
%{_mandir}/man3/Types::Standard::Map.3*
%{_mandir}/man3/Types::Standard::ScalarRef.3*
%{_mandir}/man3/Types::Standard::StrMatch.3*
%{_mandir}/man3/Types::Standard::Tied.3*
%{_mandir}/man3/Types::Standard::Tuple.3*
%{_mandir}/man3/Types::TypeTiny.3*
%files -n perl-Test-TypeTiny
%{perl_vendorlib}/Test
%{_mandir}/man3/Test::TypeTiny.3pm*
%{perl_vendorlib}/Test/
%{_mandir}/man3/Test::TypeTiny.3*
%changelog
* Fri Oct 25 2019 Paul Howarth <paul@city-fan.org> - 1.004004-2
- Prep for EPEL-8
- Use author-independent source URL
- Classify buildreqs by usage
- Trim optional dependencies for EPEL-8
- Use %%{make_build} and %%{make_install}
- Fix permissions verbosely
* Fri Jan 11 2019 Ralf Corsépius <corsepiu@fedoraproject.org> - 1.004004-1
- Update to 1.004004.

Loading…
Cancel
Save