Summary: Legacy version of flex, a tool for creating scanners Name: compat-flex Version: 2.5.4a Release: 6%{?dist} License: BSD Group: Development/Tools URL: http://www.gnu.org/software/flex/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Source: http://downloads.sourceforge.net/flex/flex-%{version}.tar.bz2 Source2: README.fedora Patch0: flex-2.5.4a-skel.patch Patch1: flex-2.5.4-glibc22.patch Patch2: flex-2.5.4a-gcc3.patch Patch3: flex-2.5.4a-gcc31.patch Patch4: flex-2.5.4a2.patch Patch5: flex-pic.patch Patch6: flex-2.5.4a2-std.patch Patch7: flex-2.5.4a2-warn.patch Patch8: flex-2.5.4a2-shapwarn.patch Patch9: flex-2.5.4a2-iniscan.patch Patch10: flex-2.5.4a-Makefile.in.patch BuildRequires: autoconf byacc texinfo info Requires(post): /sbin/install-info Requires(preun): /sbin/install-info %description This is legacy version of flex, a program that generates scanners. Scanners are programs which can recognize lexical patterns in text. Flex takes pairs of regular expressions and C code as input and generates a C source file as output. The output file is compiled and linked with a library to produce an executable. The executable searches through its input for occurrences of the regular expressions. When a match is found, it executes the corresponding C code. Flex was designed to work with both Yacc and Bison, and is used by many programs as part of their build process. You should install flex if you are going to use your system for application development. %prep %setup -q -n flex-2.5.4 %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 %patch10 -p1 cp %{SOURCE2} . %build autoconf %configure sed -i '/^START-INFO-DIR-ENTRY/,/^END-INFO-DIR-ENTRY/s/[Ff]lex/&-%{version}/g' ./MISC/texinfo/flex.texi make FLEX=flex-%{version} makeinfo MISC/texinfo/flex.texi -o MISC/texinfo/flex-%{version}.info %install rm -rf $RPM_BUILD_ROOT %{makeinstall} FLEX=flex-%{version} libdir=$RPM_BUILD_ROOT/%{_libdir}/flex-%{version} mandir=$RPM_BUILD_ROOT/%{_mandir}/man1 ./mkinstalldirs $RPM_BUILD_ROOT/%{_infodir} $RPM_BUILD_ROOT/%{_includedir}/flex-%{version} install -m 644 MISC/texinfo/flex-%{version}.info $RPM_BUILD_ROOT/%{_infodir}/flex-%{version}.info mv ${RPM_BUILD_ROOT}/%{_includedir}/FlexLexer.h ${RPM_BUILD_ROOT}/%{_includedir}/flex-%{version}/FlexLexer.h ln -s flex-%{version}.1 ${RPM_BUILD_ROOT}/%{_mandir}/man1/flex-%{version}++.1 %check echo ============TESTING=============== make FLEX=flex-%{version} bigcheck echo ============END TESTING=========== %post /sbin/install-info %{_infodir}/flex-%{version}.info --dir-file=%{_infodir}/dir ||: %preun if [ $1 = 0 ]; then /sbin/install-info --delete %{_infodir}/flex-%{version}.info %{_infodir}/dir ||: fi %clean rm -rf ${RPM_BUILD_ROOT} %files %defattr(-,root,root) %doc COPYING NEWS README README.fedora %{_bindir}/* %{_mandir}/man1/* %{_libdir}/flex-%{version} %{_includedir}/flex-%{version} %{_infodir}/flex-%{version}.info* %changelog * Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5.4a-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5.4a-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.5.4a-4 - Autorebuild for GCC 4.3 * Wed Aug 29 2007 Fedora Release Engineering <rel-eng at fedoraproject dot org> - 2.5.4a-3 - Rebuild for selinux ppc32 issue. * Fri Jul 06 2007 Florian La Roche <laroche@redhat.com> - 2.5.4a-2 - add install-info requirement for post/preun * Wed Jan 18 2006 Petr Machata <pmachata@redhat.com> - 2.5.4a-1 - Initial build.