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