+#
+# Conditional build:
+%bcond_without tests # do not perform "make test"
+#
%include /usr/lib/rpm/macros.perl
-%define __find_requires %{_builddir}/Parse-RecDescent-%{version}/find-perl-requires
-Summary: Perl Parse::RecDescent module
-Summary(pl): Modu³ Perla Parse::RecDescent
+%define pdir Parse
+%define pnam RecDescent
+Summary: Parse::RecDescent - generate recursive-descent parsers
+Summary(pl.UTF-8): Parse::RecDescent - generowanie zmniejszających rekurencyjnie analizatorów
Name: perl-Parse-RecDescent
-Version: 1.79
-Release: 2
-License: Perl Artistic License
+Version: 1.967009
+Release: 1
+License: Artistic
Group: Development/Languages/Perl
-Group(de): Entwicklung/Sprachen/Perl
-Group(pl): Programowanie/Jêzyki/Perl
-Source0: ftp://ftp.perl.org/pub/CPAN/modules/by-module/Parse/Parse-RecDescent-%{version}.tar.gz
-Patch0: %{name}-paths.patch
-Patch1: %{name}-dep.patch
-BuildRequires: rpm-perlprov >= 3.0.3-18
-BuildRequires: perl >= 5.6
-Requires: perl
-Requires: %{perl_sitearch}
+Source0: http://www.cpan.org/modules/by-module/%{pdir}/%{pdir}-%{pnam}-%{version}.tar.gz
+# Source0-md5: 6dab60d44451a9f57a261d1b5358753c
+URL: http://search.cpan.org/dist/Parse-RecDescent/
+BuildRequires: perl-Text-Balanced
+BuildRequires: perl-devel >= 1:5.8.0
+BuildRequires: rpm-perlprov >= 4.1-13
+# these versions included own copy of Text::Balanced
+BuildConflicts: perl-Parse-RecDescent < 1.92
BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-Obsoletes: perl-Text-Balanced
+
+%define _noautoreq 'perl(Calc)'
%description
-Perl Parse::RecDescent module.
+RecDescent incrementally generates top-down recursive-descent text
+parsers from simple yacc-like grammar specifications. It provides:
+- Regular expressions or literal strings as terminals (tokens),
+- Multiple (non-contiguous) productions for any rule,
+- Repeated, optional and alternate subrules within productions,
+- Late-bound (run-time dispatched) subrules,
+- Full access to Perl within actions specified as part of the grammar,
+- Simple automated error reporting during parser generation and
+ parsing,
+- The ability to commit to, uncommit to, or reject particular
+ productions during a parse,
+- Incremental extension of the parsing grammar (even during a parse),
+- Precompilation of parser objects,
+- User-definable reduce-reduce conflict resolution via "scoring" of
+ matching productions.
-%description -l pl
-Modu³ Perla Parse::RecDescent.
+%description -l pl.UTF-8
+RecDescent generuje przyrostowo zstępujące, zmniejszające
+rekurencyjnie analizatory tekstu w oparciu o prostą specyfikację
+gramatyki, podobną do używanej przez yacca. Udostępnia on:
+- Wyrażenia regularne i łańcuchy literałów jako terminale (tokeny),
+- Wielokrotną (nieciągłą) produkcję dla każdej reguły,
+- Powtarzane, opcjonalne i alternatywne podreguły w obrębie produkcji,
+- Podreguły późnego wiązania (wysyłane w chwili uruchomienia),
+- Pełen dostęp do Perla w obrębie akcji określonych jako część
+ gramatyki,
+- Proste, zautomatyzowane sygnalizowanie błędów podczas generacji
+ analizatora i podczas analizy,
+- Możliwość zatwierdzenia, cofnięcia oraz odrzucania poszczególnych
+ produkcji podczas analizy,
+- Przyrostowe rozszerzanie gramatyki podlegającej analizie (nawet
+ podczas samej analizy),
+- Prekompilację obiektów analizatora,
+- Definiowalne przez użytkownika rozpoznawanie konfliktów
+ "reduce-reduce" poprzez ocenianie dopasowania produkcji.
%prep
-%setup -q -n Parse-RecDescent-%{version}
-%patch0 -p1
-%patch1 -p1
-
-chmod +x find-perl-requires
+%setup -q -n %{pdir}-%{pnam}-%{version}
%build
-perl Makefile.PL
+%{__perl} Makefile.PL \
+ INSTALLDIRS=vendor
%{__make}
+%{?with_tests:%{__make} test}
+
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install DESTDIR=$RPM_BUILD_ROOT
+%{__make} pure_install \
+ DESTDIR=$RPM_BUILD_ROOT
-gzip -9nf README Changes
+rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Parse/RecDescent/.packlist
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc *.gz
-%{perl_sitelib}/Parse/*
-%{perl_sitelib}/Text/*
+%doc README Changes
+%{perl_vendorlib}/Parse/*.pm
%{_mandir}/man3/*