diff --git a/.cvsignore b/.cvsignore index e69de29..4a11f63 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +Class-MakeMethods-1.01.tar.gz diff --git a/perl-Class-MakeMethods.spec b/perl-Class-MakeMethods.spec new file mode 100644 index 0000000..3b8273f --- /dev/null +++ b/perl-Class-MakeMethods.spec @@ -0,0 +1,79 @@ +Name: perl-Class-MakeMethods +Version: 1.01 +Release: 0%{?dist} +Summary: Generate common types of methods + +Group: Development/Libraries +License: Artistic or GPL +URL: http://search.cpan.org/dist/Class-MakeMethods +Source0: http://search.cpan.org/CPAN/authors/id/E/EV/EVO/Class-MakeMethods-%{version}.tar.gz +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildArch: noarch +BuildRequires: perl +Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) + +%description +The Class::MakeMethods framework allows Perl class developers to quickly +define common types of methods. When a module uses Class::MakeMethods or one +of its subclasses, it can select from a variety of supported method types, and +specify a name for each method desired. The methods are dynamically generated +and installed in the calling package. + +Construction of the individual methods is handled by subclasses. This +delegation approach allows for a wide variety of method-generation techniques +to be supported, each by a different subclass. Subclasses can also be added to +provide support for new types of methods. + +Over a dozen subclasses are available, including implementations of a variety +of different method-generation techniques. Each subclass generates several +types of methods, with some supporting their own open-eneded extension syntax, +for hundreds of possible combinations of method types. + +%prep +%setup -q -n Class-MakeMethods-%{version} + + +%build +%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" +make %{?_smp_mflags} + +# make sure the man page is UTF-8... +cd blib/man3 +for i in Docs::ReadMe.3pm Attribute.3pm ; do + iconv --from=ISO-8859-1 --to=UTF-8 Class::MakeMethods::$i > new + mv new Class::MakeMethods::$i +done + +%install +rm -rf %{buildroot} +make pure_install PERL_INSTALL_ROOT=%{buildroot} +find %{buildroot} -type f -name .packlist -exec rm -f {} ';' +find %{buildroot} -type f -name '*.bs' -a -size 0 -exec rm -f {} ';' +find %{buildroot} -type d -depth -exec rmdir {} 2>/dev/null ';' +chmod -R u+w %{buildroot}/* + +# take the benchmark file and let's stick it in % doc +mv %{buildroot}%{perl_vendorlib}/Class/benchmark.pl . +# and clean up the interperter +perl -pi -e 's|^#!perl$|#!/usr/bin/perl|m' benchmark.pl + + +%check +make test + + +%clean +rm -rf %{buildroot} + + +%files +%defattr(-,root,root,-) +%doc CHANGES README benchmark.pl +%{perl_vendorlib}/* +%{_mandir}/man3/*.3* + + +%changelog +* Sun Jul 02 2006 Chris Weyl 1.01-0 +- Initial spec file for F-E diff --git a/sources b/sources index e69de29..5415692 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +838c98dcf1b1fff4c5d8cffaec32ebbb Class-MakeMethods-1.01.tar.gz