3 # _without_tests - do not perform "make test"
5 %include /usr/lib/rpm/macros.perl
7 %define pnam RecDescent
8 Summary: Parse::RecDescent - generate recursive-descent parsers
9 Summary(pl): Parse::RecDescent - generowanie zmniejszaj±cych rekurencyjnie analizatorów
10 Name: perl-Parse-RecDescent
14 Group: Development/Languages/Perl
15 Source0: http://www.cpan.org/modules/by-module/%{pdir}/%{pdir}-%{pnam}-%{version}.tar.gz
16 # Source0-md5: 497600b337a501eae11f31195ccec9d4
17 Patch0: %{name}-paths.patch
18 BuildRequires: perl-Text-Balanced
19 BuildRequires: perl-devel >= 5.6.1
20 BuildRequires: rpm-perlprov >= 4.1-13
21 # these versions included own copy of Text::Balanced
22 BuildConflicts: perl-Parse-RecDescent < 1.92
24 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
26 %define _noautoreq 'perl(Calc)'
29 RecDescent incrementally generates top-down recursive-descent text
30 parsers from simple yacc-like grammar specifications. It provides:
31 * Regular expressions or literal strings as terminals (tokens),
32 * Multiple (non-contiguous) productions for any rule,
33 * Repeated, optional and alternate subrules within productions,
34 * Late-bound (run-time dispatched) subrules,
35 * Full access to Perl within actions specified as part of the
37 * Simple automated error reporting during parser generation and
39 * The ability to commit to, uncommit to, or reject particular
40 productions during a parse,
41 * Incremental extension of the parsing grammar (even during a
43 * Precompilation of parser objects,
44 * User-definable reduce-reduce conflict resolution via
45 "scoring" of matching productions.
48 RecDescent generuje przyrostowo zstêpuj±ce, zmniejszaj±ce
49 rekurencyjnie analizatory tekstu w oparciu o prost± specyfikacjê
50 gramatyki, podobn± do u¿ywanej przez yacca. Udostêpnia on:
51 * Wyra¿enia regularne i ³añcuchy litera³ów jako terminale (tokeny),
52 * Wielokrotn± (nieci±g³±) produkcjê dla ka¿dej regu³y,
53 * Powtarzane, opcjonalne i alternatywne podregu³y w obrêbie
55 * Podregu³y pó¼nego wi±zania (wysy³ane w chwili uruchomienia),
56 * Pe³en dostêp do Perla w obrêbie akcji okre¶lonych jako czê¶æ
58 * Proste, zautomatyzowane sygnalizowanie b³êdów podczas generacji
59 analizatora i podczas analizy,
60 * Mo¿liwo¶æ zatwierdzenia, cofniêcia oraz odrzucania poszczególnych
61 produkcji podczas analizy,
62 * Przyrostowe rozszerzanie gramatyki podlegaj±cej analizie (nawet
63 podczas samej analizy),
64 * Prekompilacjê obiektów analizatora,
65 * Definiowalne przez u¿ytkownika rozpoznawanie konfliktów
66 "reduce-reduce" poprzez ocenianie dopasowania produkcji.
69 %setup -q -n %{pdir}-%{pnam}-%{version}
73 %{__perl} Makefile.PL \
76 %{!?_without_tests:%{__make} test}
79 rm -rf $RPM_BUILD_ROOT
82 DESTDIR=$RPM_BUILD_ROOT
85 rm -rf $RPM_BUILD_ROOT
88 %defattr(644,root,root,755)
90 %{perl_vendorlib}/Parse/*.pm