]>
Commit | Line | Data |
---|---|---|
6e68e540 | 1 | Summary: Ragel State Machine Compiler |
2 | Name: ragel | |
3 | Version: 5.16 | |
4 | Release: 1 | |
5 | License: GPL | |
6 | Group: Development/Tools | |
7 | URL: http://www.cs.queensu.ca/home/thurston/ragel/ | |
8 | Source0: http://www.cs.queensu.ca/home/thurston/ragel/%{name}-%{version}.tar.gz | |
9 | # Source0-md5: 0c19b9fe68dd54efa64009dc85a08325 | |
10 | BuildRequires: bison | |
11 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
12 | ||
13 | %description | |
14 | Ragel compiles finite state machines from regular languages into | |
15 | runnable C code. Ragel state machines can not only recognize byte | |
16 | sequences as regular expression machines do, but can also execute code | |
17 | at arbitrary points in the recognition of a regular language. When you | |
18 | wish to write down a regular language you start with some simple | |
19 | regular language and build a bigger one using the regular language | |
20 | operators union, concatenation, kleene star, intersection and | |
21 | subtraction. This is precisely the way you describe to Ragel how to | |
22 | compile your finite state machines. Ragel also understands operators | |
23 | that insert function calls into machines and operators that control | |
24 | any non-determinism in machines. | |
25 | ||
26 | %prep | |
27 | %setup -q | |
28 | ||
29 | %build | |
30 | %configure | |
31 | %{__make} | |
32 | cd doc | |
33 | %{__make} ragel.1 rlcodegen.1 | |
34 | ||
35 | %install | |
36 | rm -rf $RPM_BUILD_ROOT | |
37 | install -d $RPM_BUILD_ROOT%{_bindir} | |
38 | install -s ragel/ragel $RPM_BUILD_ROOT%{_bindir}/ragel | |
39 | install -s rlcodegen/rlcodegen $RPM_BUILD_ROOT%{_bindir}/rlcodegen | |
40 | install -d $RPM_BUILD_ROOT%{_mandir}/man1 | |
41 | install doc/ragel.1 $RPM_BUILD_ROOT%{_mandir}/man1/ragel.1 | |
42 | install doc/rlcodegen.1 $RPM_BUILD_ROOT%{_mandir}/man1/rlcodegen.1 | |
43 | ||
44 | %files | |
45 | %defattr(644,root,root,755) | |
46 | %attr(755,root,root) %{_bindir}/* | |
47 | %{_mandir}/man1/* | |
48 | ||
49 | %clean | |
50 | rm -rf $RPM_BUILD_ROOT |