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