]>
Commit | Line | Data |
---|---|---|
4f892611 | 1 | # NOTE: 2.5.35+ can't deal with "[[" "]]" strings in sources, needs workarounds like space separation |
c60e819b JB |
2 | # (or non-trivial update of m4-quotes patch) |
3 | # NOTE on shared libfl: | |
4 | # It exports two functions, yywrap() and main(); | |
5 | # - because of the latter, unnecessary linking with shared -lfl would harm, | |
6 | # so it would require large cleanup of other projects; | |
7 | # - when some code wants yywrap(), but no main(), using shared libfl is NOT POSSIBLE. | |
8 | # Thus, shared libfl would be of little use. | |
0c132e2a | 9 | Summary: GNU fast lexical analyzer generator |
d34bc9e0 ER |
10 | Summary(de.UTF-8): GNU - schneller lexikalischer Analysegenerator |
11 | Summary(es.UTF-8): Generador rápido de analizadores léxicos de la GNU | |
12 | Summary(fr.UTF-8): Générateur rapide d'analyseur lexical de GNU | |
13 | Summary(pl.UTF-8): Szybki generator analizatora składni GNU (flex) | |
14 | Summary(pt_BR.UTF-8): Gerador rápido de analisadores léxicos da GNU | |
15 | Summary(ru.UTF-8): Быстрый генератор лексических анализаторов GNU | |
16 | Summary(tr.UTF-8): GNU sözdizim çözümleyici | |
17 | Summary(uk.UTF-8): Швидкий генератор лексичних аналізаторів GNU | |
0c132e2a | 18 | Name: flex |
c60e819b | 19 | Version: 2.5.38 |
2ad2ae42 | 20 | Release: 1 |
36d1b666 | 21 | License: BSD-like |
0c132e2a | 22 | Group: Development/Tools |
f0deafa4 | 23 | Source0: http://downloads.sourceforge.net/flex/%{name}-%{version}.tar.bz2 |
c60e819b | 24 | # Source0-md5: b230c88e65996ff74994d08a2a2e0f27 |
b02d462a | 25 | Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2 |
42ac3cd4 | 26 | # Source1-md5: fd79ee2834b290e74c626f0bbfc8942f |
ee57c87d | 27 | Patch0: %{name}-info.patch |
c60e819b | 28 | Patch1: %{name}-pic.patch |
4f892611 JB |
29 | # patch #869230 (second version of bug #720983 fix - from flex BTS) |
30 | # outdated as for 2.5.34+, but contains testcase | |
c60e819b | 31 | Patch2: %{name}-m4-quotes.diff |
c60e3a05 | 32 | URL: http://flex.sourceforge.net/ |
9e269a02 | 33 | BuildRequires: autoconf >= 2.54 |
d86244b8 | 34 | BuildRequires: automake >= 1:1.10 |
17b420c9 | 35 | BuildRequires: bison |
4f892611 JB |
36 | # to rebuild scan.c from scan.l (m4-quotes patch) |
37 | #BuildRequires: flex | |
d86244b8 | 38 | BuildRequires: gettext-devel >= 0.12 |
295b506d | 39 | BuildRequires: help2man |
4f892611 JB |
40 | # to rebuild skel.c from patched flex.skl |
41 | BuildRequires: m4 | |
affaa68d | 42 | BuildRequires: texinfo |
8ba0c7d1 | 43 | BuildRequires: util-linux |
e0769a90 | 44 | Requires: m4 |
4640f372 | 45 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
6b5615ba | 46 | |
47 | %description | |
48 | This is the GNU fast lexical analyzer generator. It generates lexical | |
781adb32 | 49 | tokenizing code based on a lexical (regular expression based) |
50 | description of the input. It is designed to work with both yacc and | |
51 | bison, and is used by many programs as part of their build process. | |
6b5615ba | 52 | |
17e232ab | 53 | %description -l de.UTF-8 |
781adb32 | 54 | GNU, der schnelle lexikalische Analysengenerator. Er erzeugt |
55 | lexikalischen Token-Code, basierend auf einer lexikalischen | |
17e232ab | 56 | Beschreibung (reguläre Ausdrucksbasis) der Eingabe. Ausgelegt zum |
781adb32 | 57 | Arbeiten mit yacc und bison, wird er von vielen Programmen als Teil |
58 | des Build-Vorgangs verwendet. | |
6b5615ba | 59 | |
17e232ab JR |
60 | %description -l es.UTF-8 |
61 | Este es el creador GNU de análisis léxica rápida. Crea códigos léxicos | |
62 | tokenizados basados en una descripción léxica (basado en expresiones | |
63 | regulares) de la entrada. Está designado a trabajar tanto con yacc | |
79bfc15b | 64 | como con bison, y se utiliza en varios programas como parte del su |
17e232ab | 65 | proceso de programación. |
79bfc15b | 66 | |
17e232ab JR |
67 | %description -l fr.UTF-8 |
68 | Générateur rapide d'analyseur lexical de GNU. Il génère du code | |
69 | lexical sous forme de tokens basé sur une description lexicale (basé | |
70 | sur les expressions rationnelles) de son entrée. Il est conçu pour | |
71 | fonctionner avec yacc et bison, et est utilisé par de nombreux | |
781adb32 | 72 | programmes comme faisant partie de leur phase de construction. |
6b5615ba | 73 | |
17e232ab JR |
74 | %description -l pl.UTF-8 |
75 | GNU flex służy do tworzenia programu analizy leksykalnej na podstawie | |
76 | wyrażeń regularnych i dyrektyw C zawartych w jednym lub więcej plikach | |
77 | wejściowych. Przeznaczony do współpracy z parserami yacc i bison, jest | |
78 | używany przez wiele programów w procesie kompilacji. | |
79 | ||
80 | %description -l pt_BR.UTF-8 | |
81 | Este é o gerador GNU de análise léxica rápida. Ele gera códigos | |
82 | léxicos tokenizados baseados em uma descrição léxica (baseado em | |
83 | expressões regulares) da entrada. Ele é designado para trabalhar tanto | |
84 | com yacc como com bison, e é utilizado em vários programas como parte | |
85 | do seu processo de programação. | |
86 | ||
87 | %description -l ru.UTF-8 | |
88 | Программа flex генерирует сканнеры. Сканнеры - это программы, | |
89 | способные распознавать лексические шаблоны в тексте. flex принимает на | |
90 | входе пару регулярных выражений и C код и генерирует исходные файлы на | |
91 | языке C. Исходный файл компилируется и связывается с библиотекой для | |
92 | создания исполняемого файла, который будет просматривать свой входной | |
93 | поток данных в поиске регулярных выражений. При нахождении будет | |
94 | исполняться заданный C код. flex был разработан для работы как с | |
95 | системой Yacc, так и Bison, и используется многими программами как | |
96 | часть процесса их построения из исходных текстов. | |
97 | ||
98 | Вам следует установить flex, если вы собираетесь использовать свою | |
99 | систему для разработки программ. | |
100 | ||
101 | %description -l tr.UTF-8 | |
102 | Bu paket, giriş olarak okuduğu bilgiyi kendisine düzgün deyimler | |
103 | olarak belirtilen kurallar çerçevesinde birimlere böler. yacc ve bison | |
104 | paketleri ile birlikte çalışacak şekilde tasarlanmıştır. Pek çok | |
105 | programın derlenme aşamasında kullanılır. | |
106 | ||
107 | %description -l uk.UTF-8 | |
108 | Програма flex генерує сканери. Сканери - це програми, які можуть | |
109 | розпізнавати лексичні шаблони в тексті. flex приймає на вході пару | |
110 | регулярних виразів та C код та генерує вихідні файли на мові C. | |
111 | Вихідний файл компілюється та зв'язується з бібліотекою для створення | |
112 | виконуваного файлу, що проглядатиме свій вхідний потік даних в пошуку | |
113 | регулярних виразів. При знаходженні виконуватиметься заданий C код. | |
114 | flex був розроблений для роботи як з системою Yacc, так і Bison, та | |
115 | використовується багатьма програмами в процесі їх побудови з вихідних | |
116 | текстів. | |
117 | ||
118 | Вам слід встановити flex, якщо ви збираєтесь використовувати свою | |
119 | систему для розробки програм. | |
36d1b666 | 120 | |
7f7f1414 | 121 | %package examples |
122 | Summary: Flex examples | |
d34bc9e0 | 123 | Summary(pl.UTF-8): Przykłady dla fleksa |
7f7f1414 | 124 | Group: Development/Tools |
125 | ||
126 | %description examples | |
127 | Flex examples. | |
128 | ||
17e232ab JR |
129 | %description examples -l pl.UTF-8 |
130 | Przykłady dla fleksa. | |
7f7f1414 | 131 | |
6b5615ba | 132 | %prep |
42ac3cd4 | 133 | %setup -q |
ee57c87d | 134 | %patch0 -p1 |
4f892611 | 135 | %patch1 -p1 |
c60e819b | 136 | #%patch2 -p1 |
6b5615ba | 137 | |
ccf79e4e | 138 | # force regeneration (just in case make didn't want to) |
d86244b8 | 139 | %{__rm} skel.c |
ccf79e4e | 140 | |
6b5615ba | 141 | %build |
9e269a02 JB |
142 | %{__gettextize} |
143 | %{__aclocal} -I m4 | |
e8c186e8 | 144 | %{__autoconf} |
9e269a02 JB |
145 | %{__autoheader} |
146 | %{__automake} | |
c60e819b JB |
147 | %configure \ |
148 | --disable-shared | |
69d36613 | 149 | |
42ac3cd4 | 150 | %{__make} |
6b5615ba | 151 | |
152 | %install | |
73c51ca1 | 153 | rm -rf $RPM_BUILD_ROOT |
7f7f1414 | 154 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} |
155 | ||
99a8b28f PG |
156 | %{__make} install \ |
157 | DESTDIR=$RPM_BUILD_ROOT | |
076f86b0 | 158 | |
159 | ln -sf flex $RPM_BUILD_ROOT%{_bindir}/lex | |
d509e008 | 160 | ln -sf flex $RPM_BUILD_ROOT%{_bindir}/flex++ |
6b5615ba | 161 | |
352336d2 | 162 | echo .so flex.1 > $RPM_BUILD_ROOT%{_mandir}/man1/flex++.1 |
163 | echo .so flex.1 > $RPM_BUILD_ROOT%{_mandir}/man1/lex.1 | |
f0deafa4 | 164 | |
57a381e1 | 165 | bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir} |
d86244b8 JB |
166 | %{__rm} $RPM_BUILD_ROOT%{_mandir}/README.flex-non-english-man-pages |
167 | ||
f0deafa4 | 168 | rm -f $RPM_BUILD_ROOT%{_infodir}/dir |
57a381e1 | 169 | |
f0deafa4 | 170 | cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} |
7f7f1414 | 171 | |
c60e819b JB |
172 | # no external dependencies |
173 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la | |
174 | ||
42ac3cd4 JB |
175 | %find_lang %{name} |
176 | ||
c3899d0f JB |
177 | %clean |
178 | rm -rf $RPM_BUILD_ROOT | |
179 | ||
4f892611 | 180 | %post -p /sbin/postshell |
31e41938 | 181 | -/usr/sbin/fix-info-dir -c %{_infodir} |
69d36613 | 182 | |
4f892611 | 183 | %postun -p /sbin/postshell |
31e41938 | 184 | -/usr/sbin/fix-info-dir -c %{_infodir} |
69d36613 | 185 | |
42ac3cd4 | 186 | %files -f %{name}.lang |
0c132e2a | 187 | %defattr(644,root,root,755) |
42ac3cd4 | 188 | %doc AUTHORS COPYING ChangeLog NEWS README THANKS TODO |
4f892611 JB |
189 | %attr(755,root,root) %{_bindir}/flex |
190 | %attr(755,root,root) %{_bindir}/flex++ | |
191 | %attr(755,root,root) %{_bindir}/lex | |
192 | %{_mandir}/man1/flex.1* | |
193 | %{_mandir}/man1/flex++.1* | |
194 | %{_mandir}/man1/lex.1* | |
57a381e1 | 195 | %lang(es) %{_mandir}/es/man1/* |
196 | %lang(ja) %{_mandir}/ja/man1/* | |
197 | %lang(pl) %{_mandir}/pl/man1/* | |
4f892611 JB |
198 | %{_infodir}/flex.info* |
199 | %{_libdir}/libfl.a | |
200 | %{_libdir}/libfl_pic.a | |
201 | %{_includedir}/FlexLexer.h | |
7f7f1414 | 202 | |
c60e819b JB |
203 | %if 0 |
204 | %files libs | |
205 | %defattr(644,root,root,755) | |
206 | %attr(755,root,root) %{_libdir}/libfl.so.*.*.* | |
207 | %attr(755,root,root) %ghost %{_libdir}/libfl.so.2 | |
208 | %attr(755,root,root) %{_libdir}/libfl_pic.so.*.*.* | |
209 | %attr(755,root,root) %ghost %{_libdir}/libfl_pic.so.2 | |
210 | ||
211 | %files devel | |
212 | %defattr(644,root,root,755) | |
213 | %attr(755,root,root) %{_libdir}/libfl.so | |
214 | %attr(755,root,root) %{_libdir}/libfl_pic.so | |
215 | %endif | |
216 | ||
7f7f1414 | 217 | %files examples |
218 | %defattr(644,root,root,755) | |
219 | %{_examplesdir}/%{name}-%{version} |