# Run optional tests #%{bcond_without perl_Class_Method_Modifiers_enables_optional_test} Name: perl-Class-Method-Modifiers Summary: Provides Moose-like method modifiers Version: 2.12 Release: 1%{?dist} License: GPL+ or Artistic Vendor: bww bitwise works GmbH URL: http://search.cpan.org/dist/Class-Method-Modifiers Source0: http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Class-Method-Modifiers-%{version}.tar.gz BuildArch: noarch # Module Build BuildRequires: coreutils BuildRequires: findutils BuildRequires: make #BuildRequires: perl-interpreter BuildRequires: perl-generators BuildRequires: perl(ExtUtils::MakeMaker) BuildRequires: perl(strict) BuildRequires: perl(warnings) # Module Runtime BuildRequires: perl(B) BuildRequires: perl(base) BuildRequires: perl(Carp) BuildRequires: perl(Exporter) # Test Suite #BuildRequires: perl(File::Spec) #BuildRequires: perl(if) #BuildRequires: perl(Test::Fatal) #BuildRequires: perl(Test::More) >= 0.88 #BuildRequires: perl(Test::Requires) # Optional Test Requirements #%if 0%{!?perl_bootstrap:1} && %{with perl_Class_Method_Modifiers_enables_optional_test} #BuildRequires: perl(CPAN::Meta) >= 2.120900 #BuildRequires: perl(Moose) #%endif # Runtime Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version)) Requires: perl(B) Requires: perl(Carp) Requires: perl(Exporter) # Avoid doc-file dependencies %{?perl_default_filter} %description Method modifiers are a powerful feature from the CLOS (Common Lisp Object System) world. In its most basic form, a method modifier is just a method that calls '$self->SUPER::foo(@_)'. I for one have trouble remembering that exact invocation, so my classes seldom re-dispatch to their base classes. Very bad! 'Class::Method::Modifiers' provides three modifiers: 'before', 'around', and 'after'. 'before' and 'after' are run just before and after the method they modify, but can not really affect that original method. 'around' is run in place of the original method, with a hook to easily call that original method. See the 'MODIFIERS' section for more details on how the particular modifiers work. %prep %setup -q -n Class-Method-Modifiers-%{version} # Drop unnecessary exec permissions from test files chmod -c -x t/*.t %build perl Makefile.PL INSTALLDIRS=vendor make %{?_smp_mflags} make manifypods %install make pure_install DESTDIR=%{buildroot} find %{buildroot} -type f -name .packlist -delete %{_fixperms} %{buildroot} %check #make test %files %license LICENSE %doc Changes CONTRIBUTING README t/ %{perl_vendorlib}/Class/ %{_mandir}/man3/*.3* %changelog * Thu Mar 13 2018 Elbert Pol - 2.000006-1 - initial rpm for OS2