# # - Class::ParamParser - # This spec file was automatically generated by cpan2rpm [ver: 2.026] # The following arguments were used: # --version 1.0401 --release 2centos Class::ParamParser # For more information on cpan2rpm please visit: http://perl.arix.com/ # %define pkgname Class-ParamParser %define filelist %{pkgname}-%{version}-filelist %define NVR %{pkgname}-%{version}-%{release} %define maketest 1 name: perl-Class-ParamParser summary: Class-ParamParser - Provides complex parameter list parsing version: 1.0401 release: 2%{?dist} license: Artistic group: Applications/CPAN url: http://www.cpan.org buildroot: %{_tmppath}/%{name}-%{version}-%(id -u -n) buildarch: noarch prefix: %(echo %{_prefix}) source: http://search.cpan.org/dist/D/DU/DUNCAND/Class-ParamParser-1.041.tar.gz %description This Perl 5 object class implements two methods which inherited classes can use to tidy up parameter lists for their own methods and functions. The two methods differ in that one returns a HASH ref containing named parameters and the other returns an ARRAY ref containing positional parameters. Both methods can process the same kind of input parameter formats: =over 4 =item I =item value =item value1, value2, ... =item name1 => value1, name2 => value2, ... =item -name1 => value1, -NAME2 => value2, ... =item { -Name1 => value1, NAME2 => value2, ... } =item { name1 => value1, -Name2 => value2, ... }, valueR =item { name1 => value1, -Name2 => value2, ... }, valueR1, valueR2, ... =back Those examples included single or multiple positional parameters, single or multiple named parameters, and a HASH ref containing named parameters (with optional "remaining" values afterwards). That list of input variations is not exhaustive. Named parameters can either be prefixed with "-" or left natural. We assume that the parameters are named when either they come as a HASH ref or the first parameter begins with a "-". We assume that they are positional if there is an odd number of them. Otherwise we are in doubt and rely on an optional argument to the tidying method that tells us which to guess by default. We assume that any "value" may be an array ref (aka "multiple" values under the same name) and hence we don't do anything special with them, passing them as is. The only exception to this is with "remaining" values; if there is more than one of them and the first isn't an array ref, then they are all put in an array ref. If the source and destination are both positional, then they are identical. # # This package was generated automatically with the cpan2rpm # utility. To get this software or for more information # please visit: http://perl.arix.com/ # %prep %setup -q -n %{pkgname}-1.041 chmod -R u+w %{_builddir}/%{pkgname}-1.041 %build grep -rsl '^#!.*perl' . | grep -v '.bak$' |xargs --no-run-if-empty \ %__perl -MExtUtils::MakeMaker -e 'MY->fixin(@ARGV)' CFLAGS="$RPM_OPT_FLAGS" %{__perl} Makefile.PL `%{__perl} -MExtUtils::MakeMaker -e ' print qq|PREFIX=%{buildroot}%{_prefix}| if \$ExtUtils::MakeMaker::VERSION =~ /5\.9[1-6]|6\.0[0-5]/ '` %{__make} %if %maketest %{__make} test %endif %install [ "%{buildroot}" != "/" ] && rm -rf %{buildroot} %{makeinstall} `%{__perl} -MExtUtils::MakeMaker -e ' print \$ExtUtils::MakeMaker::VERSION <= 6.05 ? qq|PREFIX=%{buildroot}%{_prefix}| : qq|DESTDIR=%{buildroot}| '` [ -x /usr/lib/rpm/brp-compress ] && /usr/lib/rpm/brp-compress # SuSE Linux if [ -e /etc/SuSE-release -o -e /etc/UnitedLinux-release ] then %{__mkdir_p} %{buildroot}/var/adm/perl-modules %{__cat} `find %{buildroot} -name "perllocal.pod"` \ | %{__sed} -e s+%{buildroot}++g \ > %{buildroot}/var/adm/perl-modules/%{name} fi # remove special files find %{buildroot} -name "perllocal.pod" \ -o -name ".packlist" \ -o -name "*.bs" \ |xargs -i rm -f {} # no empty directories find %{buildroot}%{_prefix} \ -type d -depth \ -exec rmdir {} \; 2>/dev/null %{__perl} -MFile::Find -le ' find({ wanted => \&wanted, no_chdir => 1}, "%{buildroot}"); print "%doc ReadMe"; for my $x (sort @dirs, @files) { push @ret, $x unless indirs($x); } print join "\n", sort @ret; sub wanted { return if /auto$/; local $_ = $File::Find::name; my $f = $_; s|^\Q%{buildroot}\E||; return unless length; return $files[@files] = $_ if -f $f; $d = $_; /\Q$d\E/ && return for reverse sort @INC; $d =~ /\Q$_\E/ && return for qw|/etc %_prefix/man %_prefix/bin %_prefix/share|; $dirs[@dirs] = $_; } sub indirs { my $x = shift; $x =~ /^\Q$_\E\// && $x ne $_ && return 1 for @dirs; } ' > %filelist [ -z %filelist ] && { echo "ERROR: empty %files listing" exit -1 } %clean [ "%{buildroot}" != "/" ] && rm -rf %{buildroot} %files -f %filelist %defattr(-,root,root) %changelog * Sun Apr 29 2007 Shad L. Lords - Clean up spec so package can be built by koji/plague * Thu Dec 07 2006 Shad L. Lords - Update to new release naming. No functional changes. - Make Packager generic * Mon Sep 20 2004 charlieb@charlieb-centos - Initial build.