%define pkg_name Aspect %define pkg_version 0.12 %define rpm_pkg_version 0.12 %define rpm_pkg_release 1.n0i.3 Summary: AOP for Perl Name: perl-%{pkg_name} Version: %{rpm_pkg_version} Release: %{rpm_pkg_release}%{?cpan_version}%{?dist} Group: Development/Libraries License: Artistic URL: http://search.cpan.org/dist/%{pkg_name}/ Source0: http://www.cpan.org/authors/id/E/EI/EILARA/%{pkg_name}-%{pkg_version}.tar.gz BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: reb00t-rpmdevtools BuildRequires: perl(ExtUtils::MakeMaker) BuildRequires: perl(Benchmark::Timer) >= 0.5 BuildRequires: perl(Test::Exception) >= 0.15 BuildRequires: perl(Test::Class) >= 0.03 BuildRequires: perl(Devel::Symdump) >= 2.03 %global perl_filter_prov 'perl\\(DB\\)' %description Aspect-oriented Programming (AOP) is a programming method developed by Xerox PARC and others. The basic idea is that in complex class systems there are certain aspects or behaviors that cannot normally be expressed in a coherent, concise and precise way. One example of such aspects are design patterns, which combine various kinds of classes to produce a common type of behavior. Another is logging. See for more info. The Perl "Aspect" module closely follows the terminology of the AspectJ project (). However due to the dynamic nature of the Perl language, several "AspectJ" features are useless for us: exception softening, mixin support, out-of-class method declarations, and others. The Perl "Aspect" module is focused on subroutine matching and wrapping. It allows you to select collections of subroutines using a flexible pointcut language, and modify their behavior in any way you want. %prep %setup -q -n %{pkg_name} %{fix_mod} %{fix_perl_path examples/} %build %{perl_build} %{!?_without_test:%{__make} test} %install %{__rm} -rf $RPM_BUILD_ROOT %{perl_install} %clean %{__rm} -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) %{perl_files} %doc Changes examples/ README TODO %changelog * Sun Jun 10 2007 Marius Feraru - 0.12-1.n0i.3 - spec file (re)created using N0i::CPAN::RPMizer/1.14.8 - version 0.12 * Fri Mar 03 2006 Marius Feraru - 0.11-2.n0i.2 - automatic rebuild (perl 5.8.8) * Sun Jul 31 2005 Marius Feraru 0.11-1.n0i.1 - spec file (re)created using N0i::CPAN::RPMizer/1.01 - rebuild on perl 5.8.7