diff --git a/SOURCES/flex-2.5.36-bison-2.6.1.patch b/SOURCES/flex-2.5.36-bison-2.6.1.patch new file mode 100644 index 00000000..a40128ad --- /dev/null +++ b/SOURCES/flex-2.5.36-bison-2.6.1.patch @@ -0,0 +1,92 @@ +Index: b/tests/test-bison-yylloc/main.c +=================================================================== +--- a/tests/test-bison-yylloc/main.c ++++ b/tests/test-bison-yylloc/main.c +@@ -24,8 +24,6 @@ + #include "parser.h" + #include "scanner.h" + +-extern int testparse(yyscan_t); +- + int main ( int argc, char** argv ) + { + yyscan_t scanner; +Index: b/tests/test-bison-yylloc/parser.y +=================================================================== +--- a/tests/test-bison-yylloc/parser.y ++++ b/tests/test-bison-yylloc/parser.y +@@ -21,6 +21,8 @@ + * PURPOSE. + */ + ++%parse-param { void* scanner } ++ + /* + How to compile: + bison --defines --output-file="parser.c" --name-prefix="test" parser.y +@@ -32,10 +34,8 @@ + #include "config.h" + + #define YYERROR_VERBOSE 1 +-#define YYPARSE_PARAM scanner + #define YYLEX_PARAM scanner + +-int yyerror(char* msg); + extern int testget_lineno(void*); + + +@@ -89,7 +89,7 @@ line: + + %% + +-int yyerror(char* msg) { ++int yyerror(void* scanner, char* msg) { + fprintf(stderr,"%s\n",msg); + return 0; + } +Index: b/tests/test-bison-yylval/main.c +=================================================================== +--- a/tests/test-bison-yylval/main.c ++++ b/tests/test-bison-yylval/main.c +@@ -24,8 +24,6 @@ + #include "parser.h" + #include "scanner.h" + +-extern int testparse(yyscan_t); +- + int main ( int argc, char** argv ) + { + yyscan_t scanner; +Index: b/tests/test-bison-yylval/parser.y +=================================================================== +--- a/tests/test-bison-yylval/parser.y ++++ b/tests/test-bison-yylval/parser.y +@@ -25,6 +25,7 @@ + How to compile: + bison --defines --output-file="parser.c" --name-prefix="test" parser.y + */ ++%parse-param { void* scanner } + %{ + #include + #include +@@ -32,11 +33,8 @@ + #include "config.h" + + #define YYERROR_VERBOSE 1 +-#define YYPARSE_PARAM scanner + #define YYLEX_PARAM scanner + +-int yyerror(char* msg); +- + + /* A dummy function. A check against seg-faults in yylval->str. */ + int process_text(char* s) { +@@ -76,7 +74,7 @@ starttag: LT TAGNAME GT { process_ + endtag: LTSLASH TAGNAME GT { process_text($2);free($2);} ; + %% + +-int yyerror(char* msg) { ++int yyerror(void* scanner, char* msg) { + fprintf(stderr,"%s\n",msg); + return 0; + } diff --git a/SOURCES/flex-rh1210022.patch b/SOURCES/flex-rh1210022.patch new file mode 100644 index 00000000..0028b9ce --- /dev/null +++ b/SOURCES/flex-rh1210022.patch @@ -0,0 +1,38 @@ +From c53fd2db8c78fef5afd284c3e64da51bc71cf6c3 Mon Sep 17 00:00:00 2001 +From: nomis52 +Date: Sat, 4 Aug 2012 15:03:31 -0400 +Subject: [PATCH] Change variable types to silence compiler warnings; resolves + #3552806 + +Signed-off-by: Will Estes +--- + flex.skl | 2 +- + gen.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +Index: b/flex.skl +=================================================================== +--- a/flex.skl ++++ b/flex.skl +@@ -2360,7 +2360,7 @@ YY_BUFFER_STATE yy_scan_bytes YYFARGS2( + YY_BUFFER_STATE b; + char *buf; + yy_size_t n; +- int i; ++ yy_size_t i; + m4_dnl M4_YY_DECL_GUTS_VAR(); + + /* Get memory for full buffer, including space for trailing EOB's. */ +Index: b/gen.c +=================================================================== +--- a/gen.c ++++ b/gen.c +@@ -1972,7 +1972,7 @@ void make_tables () + ("if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )"); + indent_up (); + indent_puts ("{"); +- indent_puts ("int yyl;"); ++ indent_puts ("yy_size_t yyl;"); + do_indent (); + out_str ("for ( yyl = %s; yyl < yyleng; ++yyl )\n", + yymore_used ? (yytext_is_array ? "YY_G(yy_prev_more_offset)" : diff --git a/SOURCES/flex-rh1439367.patch b/SOURCES/flex-rh1439367.patch new file mode 100644 index 00000000..77e1dced --- /dev/null +++ b/SOURCES/flex-rh1439367.patch @@ -0,0 +1,73 @@ +From c376be574e99b5f64a7dad71cfc7c0b1f71b747b Mon Sep 17 00:00:00 2001 +From: Manoj Srivastava +Date: Wed, 9 Apr 2014 00:23:07 -0700 +Subject: [PATCH] Do not use obsolete bison constructs in tests. + +In Bison 3.0, support for YYLEX_PARAM and YYPARSE_PARAM has been +removed (deprecated in Bison 1.875): use %lex-param, %parse-param, or +%param. This commit fixes the tests so they still work. + +Signed-off-by: Manoj Srivastava +--- + tests/test-bison-yylloc/parser.y | 4 ++-- + tests/test-bison-yylval/parser.y | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +Index: b/tests/test-bison-yylloc/parser.y +=================================================================== +--- a/tests/test-bison-yylloc/parser.y ++++ b/tests/test-bison-yylloc/parser.y +@@ -22,6 +22,7 @@ + */ + + %parse-param { void* scanner } ++%lex-param { void* scanner } + + /* + How to compile: +@@ -34,7 +35,6 @@ + #include "config.h" + + #define YYERROR_VERBOSE 1 +-#define YYLEX_PARAM scanner + + extern int testget_lineno(void*); + +@@ -52,7 +52,7 @@ int process_text(char* s) { + + %} + +-%pure_parser ++%pure-parser + + %union { + int lineno; +Index: b/tests/test-bison-yylval/parser.y +=================================================================== +--- a/tests/test-bison-yylval/parser.y ++++ b/tests/test-bison-yylval/parser.y +@@ -26,6 +26,7 @@ + bison --defines --output-file="parser.c" --name-prefix="test" parser.y + */ + %parse-param { void* scanner } ++%lex-param { void* scanner } + %{ + #include + #include +@@ -33,7 +34,6 @@ + #include "config.h" + + #define YYERROR_VERBOSE 1 +-#define YYLEX_PARAM scanner + + + /* A dummy function. A check against seg-faults in yylval->str. */ +@@ -49,7 +49,7 @@ int process_text(char* s) { + + %} + +-%pure_parser ++%pure-parser + + %union { + long unused; diff --git a/SPECS/flex.spec b/SPECS/flex.spec new file mode 100644 index 00000000..a636f224 --- /dev/null +++ b/SPECS/flex.spec @@ -0,0 +1,444 @@ +Summary: A tool for creating scanners (text pattern recognizers) +Name: flex +Version: 2.5.37 +Release: 6%{?dist} +# parse.c and parse.h are under GPLv3+ with exception which allows +# relicensing. Since flex is shipped under BDS-style license, +# let's assume that the relicensing was done. +# gettext.h (copied from gnulib) is under LGPLv2+ +License: BSD and LGPLv2+ +Group: Development/Tools +URL: http://flex.sourceforge.net/ +Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.bz2 + +# https://sourceforge.net/tracker/?func=detail&aid=3546447&group_id=97492&atid=618177 +Patch0: flex-2.5.36-bison-2.6.1.patch +Patch1: flex-rh1439367.patch +Patch2: flex-rh1210022.patch + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +Requires: m4 +BuildRequires: gettext bison m4 gcc-c++ +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description +The flex program 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. + +# We keep the libraries in separate sub-package to allow for multilib +# installations of flex. +%package devel +Summary: Libraries for flex scanner generator +Group: Development/Tools +Obsoletes: flex-static < 2.5.35-15 +Provides: flex-static + +%description devel + +This package contains the library with default implementations of +`main' and `yywrap' functions that the client binary can choose to use +instead of implementing their own. + +%package doc +Summary: Documentation for flex scanner generator +Group: Documentation + +%description doc + +This package contains documentation for flex scanner generator in +plain text and PDF formats. + +%prep +%setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 + +%global flexdocdir %{_datadir}/doc/flex-doc-%{version} + +%build +%configure --disable-dependency-tracking CFLAGS="-fPIC $RPM_OPT_FLAGS" +make %{?_smp_mflags} + +%install +rm -rf $RPM_BUILD_ROOT +make DESTDIR=$RPM_BUILD_ROOT docdir=%{flexdocdir} install +rm -f $RPM_BUILD_ROOT/%{_infodir}/dir +rm -f $RPM_BUILD_ROOT/%{flexdocdir}/{README.cvs,TODO} + +( cd ${RPM_BUILD_ROOT} + ln -sf flex .%{_bindir}/lex + ln -sf flex .%{_bindir}/flex++ + ln -s flex.1 .%{_mandir}/man1/lex.1 + ln -s flex.1 .%{_mandir}/man1/flex++.1 + ln -s libfl.a .%{_libdir}/libl.a +) + +%find_lang flex + +%post +if [ -f %{_infodir}/flex.info.gz ]; then # for --excludedocs + /sbin/install-info %{_infodir}/flex.info.gz --dir-file=%{_infodir}/dir ||: +fi + +%preun +if [ $1 = 0 ]; then + if [ -f %{_infodir}/flex.info.gz ]; then # for --excludedocs + /sbin/install-info --delete %{_infodir}/%{name}.info.gz %{_infodir}/dir ||: + fi +fi + +%check +echo ============TESTING=============== +make check +echo ============END TESTING=========== + +%clean +rm -rf ${RPM_BUILD_ROOT} + +%files -f flex.lang +%defattr(-,root,root) +%doc COPYING NEWS README +%{_bindir}/* +%{_mandir}/man1/* +%{_includedir}/FlexLexer.h +%{_infodir}/flex.info* + +%files devel +%defattr(-,root,root) +%{_libdir}/*.a + +%files doc +%defattr(-,root,root) +%{_datadir}/doc/flex-doc-%{version} + +%changelog +* Thu Jul 12 2018 Patsy Franklin - 2.5.37-6 +- Build requires gcc-c++ for building from source. (#1600429) + +* Wed May 23 2018 Arjun Shankar - 2.5.37-5 +- Remove g++ signed/unsigned comparison warning in generated scanner (#1210022) + +* Mon May 21 2018 Arjun Shankar - 2.5.37-4 +- Fix testsuite build issues (#1439367) + +* Fri Jan 24 2014 Daniel Mach - 2.5.37-3 +- Mass rebuild 2014-01-24 + +* Fri Dec 27 2013 Daniel Mach - 2.5.37-2 +- Mass rebuild 2013-12-27 + +* Wed Mar 20 2013 Petr Machata - 2.5.37-1 +- Rebase to 2.5.37 + +* Wed Feb 13 2013 Fedora Release Engineering - 2.5.36-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Fri Oct 26 2012 Petr Machata - 2.5.36-2 +- Bump for rebuild + +* Tue Jul 31 2012 Petr Machata - 2.5.36-1 +- Rebase to 2.5.36 + - Drop flex-2.5.35-sign.patch, flex-2.5.35-hardening.patch, + flex-2.5.35-gcc44.patch, flex-2.5.35-missing-prototypes.patch + - Add flex-2.5.36-bison-2.6.1.patch + - Add a subpackage doc +- Resolves #842073 + +* Thu Jul 19 2012 Fedora Release Engineering - 2.5.35-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Mon Mar 12 2012 Petr Machata - 2.5.35-15 +- Rename flex-static to flex-devel so that it gets to repositories of + minor multi-lib arch (i386 on x86_64 etc.) +- Resolves: #674301 + +* Fri Jan 13 2012 Fedora Release Engineering - 2.5.35-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Feb 08 2011 Fedora Release Engineering - 2.5.35-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Tue Aug 17 2010 Petr Machata - 2.5.35-12 +- Drop the dependency of core package on flex-static. +- Resolves: #624549 + +* Wed Jul 14 2010 Petr Machata - 2.5.35-11 +- Forgot that the changes in flex.skl won't propagate to skel.c +- Resolves: #612465 + +* Tue Jul 13 2010 Petr Machata - 2.5.35-10 +- Declare yyget_column and yyset_column in reentrant mode. +- Resolves: #612465 + +* Wed Jan 20 2010 Petr Machata - 2.5.35-9 +- Move libraries into a sub-package of their own. + +* Tue Jan 12 2010 Petr Machata - 2.5.35-8 +- Add source URL + +* Mon Aug 24 2009 Petr Machata - 2.5.35-7 +- Fix installation with --excludedocs +- Resolves: #515928 + +* Fri Jul 24 2009 Fedora Release Engineering - 2.5.35-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Mon Apr 20 2009 Debarshi Ray - 2.5.35-5 +- Resolves: #496548. + +* Mon Apr 20 2009 Petr Machata - 2.5.35-4 +- Get rid of warning caused by ignoring return value of fwrite() in + ECHO macro. Debian patch. +- Resolves: #484961 + +* Tue Feb 24 2009 Fedora Release Engineering - 2.5.35-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Mon May 12 2008 Petr Machata - 2.5.35-2 +- Resolves: #445950 + +* Wed Feb 27 2008 Petr Machata - 2.5.35-1 +- Rebase to 2.5.35. Drop two patches. +- Resolves: #434961 +- Resolves: #435047 + +* Mon Feb 25 2008 Petr Machata - 2.5.34-1 +- Rebase to 2.5.34. Drop five patches. +- Resolves: #434676 + +* Mon Feb 11 2008 Petr Machata - 2.5.33-17 +- Generate prototypes for accessor functions. Upstream patch. +- Related: #432203 + +* Mon Feb 4 2008 Petr Machata - 2.5.33-16 +- Fix comparison between signed and unsigned in generated scanner. + Patch by Roland McGrath. +- Resolves: #431151 + +* Tue Jan 15 2008 Stepan Kasal - 2.5.33-15 +- Do not run autogen.sh, it undoes the effect of includedir patch. +- Adapt test-linedir-r.patch so that it fixes Makefile.in and works + even though autogen.sh is not run. + +* Thu Jan 10 2008 Stepan Kasal - 2.5.33-14 +- Insert the "-fPIC" on configure command-line. +- Drop the -fPIC patch. + +* Tue Jan 8 2008 Petr Machata - 2.5.33-13 +- Patch with -fPIC only after the autogen.sh is run. + +* Thu Jan 3 2008 Petr Machata - 2.5.33-12 +- Run autogen.sh before the rest of the build. +- Add BR autoconf automake gettext-devel. + +* Thu Aug 30 2007 Petr Machata - 2.5.33-11 +- Add BR gawk +- Fix use of awk in one of the tests + +* Wed Aug 29 2007 Fedora Release Engineering - 2.5.33-10 +- Rebuild for selinux ppc32 issue. + +* Fri Jun 22 2007 Petr Machata - 2.5.33-9 +- Remove wrong use of @includedir@ in Makefile.in. +- Spec cleanups. +- Related: #225758 + +* Fri Jun 22 2007 Petr Machata - 2.5.33-8 +- Don't emit yy-prefixed variables in C++ mode. Thanks Srinivas Aji. +- Related: #242742 +- Related: #244259 + +* Fri May 11 2007 Petr Machata - 2.5.33-7 +- Allow joining short options into one commandline argument. +- Resolves: #239695 + +* Fri Mar 30 2007 Petr Machata - 2.5.33-5 +- Make yy-prefixed variables available to scanner even with -P. + +* Fri Feb 2 2007 Petr Machata - 2.5.33-4 +- Use %%find_lang to package locale files. + +* Wed Jan 31 2007 Petr Machata - 2.5.33-3 +- Compile with -fPIC. + +* Tue Jan 30 2007 Petr Machata - 2.5.33-2 +- Add Requires:m4. + +* Fri Jan 19 2007 Petr Machata - 2.5.33-1 +- Rebase to 2.5.33 + +* Tue Jul 18 2006 Petr Machata - 2.5.4a-41 +- Reverting posix patch. Imposing posix because of warning is too + much of a restriction. + +* Sun Jul 16 2006 Petr Machata - 2.5.4a-40 +- using dist tag + +* Fri Jul 14 2006 Petr Machata - 2.5.4a-39 +- fileno is defined in posix standard, so adding #define _POSIX_SOURCE + to compile without warnings (#195687) +- dropping 183098 test, since the original bug was already resolved + +* Wed Jul 12 2006 Jesse Keating - 2.5.4a-38.1 +- rebuild + +* Fri Mar 10 2006 Petr Machata - 2.5.4a-38 +- Caught the real cause of #183098. It failed because the parser + built with `flex -f' *sometimes* made it into the final package, and + -f assumes seven-bit tables. Solution has two steps. Move `make + bigcheck' to `%%check' part, where it belongs anyway, so that flexes + built during `make bigcheck' don't overwrite original build. And + change makefile so that `make bigcheck' will *always* execute *all* + check commands. + +* Wed Mar 8 2006 Petr Machata - 2.5.4a-37.4 +- adding test for #183098 into build process + +* Fri Mar 3 2006 Petr Machata - 2.5.4a-37.3 +- rebuilt, no changes inside. In hunt for #183098 + +* Fri Feb 10 2006 Jesse Keating - 2.5.4a-37.2 +- bump again for double-long bug on ppc(64) + +* Tue Feb 07 2006 Jesse Keating - 2.5.4a-37.1 +- rebuilt for new gcc4.1 snapshot and glibc changes + +* Thu Feb 02 2006 Petr Machata 2.5.4a-37 +- adding `make bigcheck' into build process. Refreshing initscan.c to + make this possible. + +* Wed Jan 18 2006 Petr Machata 2.5.4a-36 +- Applying Jonathan S. Shapiro's bugfix-fixing patch. More std:: fixes + and better way to silent warnings under gcc. + +* Fri Jan 13 2006 Petr Machata 2.5.4a-35 +- Adding `std::' prefixes, got rid of `using namespace std'. (#115354) +- Dummy use of `yy_flex_realloc' to silent warnings. (#30943) +- Adding URL of flex home page to spec (#142675) + +* Sun Dec 18 2005 Jason Vas Dias +- rebuild with 'flex-pic.patch' to enable -pie links + on x86_64 (patch from Jesse Keating) . + +* Fri Dec 09 2005 Jesse Keating +- rebuilt + +* Sun Apr 10 2005 Jakub Jelinek 2.5.4a-34 +- rebuilt with GCC 4 +- add %%check script + +* Tue Aug 24 2004 Warren Togami 2.5.4a-33 +- #116407 BR byacc + +* Tue Jun 15 2004 Elliot Lee +- rebuilt + +* Tue Mar 02 2004 Elliot Lee +- rebuilt + +* Fri Feb 13 2004 Elliot Lee +- rebuilt + +* Wed Jun 04 2003 Elliot Lee +- rebuilt + +* Wed Jan 22 2003 Tim Powers +- rebuilt + +* Tue Jan 7 2003 Jeff Johnson 2.5.4a-28 +- don't include -debuginfo files in package. + +* Mon Nov 4 2002 Than Ngo 2.5.4a-27 +- YY_NO_INPUT patch from Jean Marie + +* Fri Jun 21 2002 Tim Powers +- automated rebuild + +* Tue Jun 18 2002 Than Ngo 2.5.4a-25 +- don't forcibly strip binaries + +* Thu May 23 2002 Tim Powers +- automated rebuild + +* Tue Apr 2 2002 Than Ngo 2.5.4a-23 +- More ISO C++ 98 fixes (#59670) + +* Tue Feb 26 2002 Than Ngo 2.5.4a-22 +- rebuild in new enviroment + +* Wed Feb 20 2002 Bernhard Rosenkraenzer 2.5.4a-21 +- More ISO C++ 98 fixes (#59670) + +* Tue Feb 19 2002 Bernhard Rosenkraenzer 2.5.4a-20 +- Fix ISO C++ 98 compliance (#59670) + +* Wed Jan 23 2002 Than Ngo 2.5.4a-19 +- fixed #58643 + +* Wed Jan 09 2002 Tim Powers +- automated rebuild + +* Tue Nov 6 2001 Than Ngo 2.5.4a-17 +- fixed for working with gcc 3 (bug #55778) + +* Sat Oct 13 2001 Than Ngo 2.5.4a-16 +- fix wrong License (bug #54574) + +* Sun Jun 24 2001 Elliot Lee +- Bump release + rebuild. + +* Sat Sep 30 2000 Bernhard Rosenkraenzer +- Fix generation of broken code (conflicting isatty() prototype w/ glibc 2.2) + This broke, among other things, the kdelibs 2.0 build +- Fix source URL + +* Thu Sep 7 2000 Jeff Johnson +- FHS packaging (64bit systems need to use libdir). + +* Wed Jul 12 2000 Prospector +- automatic rebuild + +* Tue Jun 6 2000 Bill Nottingham +- rebuild, FHS stuff. + +* Thu Feb 3 2000 Bill Nottingham +- handle compressed man pages + +* Fri Jan 28 2000 Bill Nottingham +- add a libl.a link to libfl.a + +* Wed Aug 25 1999 Jeff Johnson +- avoid uninitialized variable warning (Erez Zadok). + +* Sun Mar 21 1999 Cristian Gafton +- auto rebuild in the new build environment (release 6) + +* Fri Dec 18 1998 Bill Nottingham +- build for 6.0 tree + +* Mon Aug 10 1998 Jeff Johnson +- build root + +* Mon Apr 27 1998 Prospector System +- translations modified for de, fr, tr + +* Thu Oct 23 1997 Donnie Barnes +- updated from 2.5.4 to 2.5.4a + +* Mon Jun 02 1997 Erik Troan +- built against glibc + +* Thu Mar 20 1997 Michael Fulbright +- Updated to v. 2.5.4