# # spec file for package re2c # # Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # Name: re2c Version: 1.3 Release: 1.1 Summary: Tool for generating C-based recognizers from regular expressions License: SUSE-Public-Domain Group: Development/Libraries/C and C++ URL: https://re2c.org/ Source: https://github.com/skvadrik/re2c/releases/download/%{version}/%{name}-%{version}.tar.xz BuildRequires: bison BuildRequires: gcc-c++ %description re2c is a tool for writing fast and flexible lexers. Unlike other such tools, it concentrates solely on generating efficient code for matching regular expressions. This makes it suitable for a wide variety of applications. The generated scanners approach hand-crafted ones in terms of size and speed. %prep %autosetup %build %configure %if 0%{?do_profiling} %make_build CFLAGS="%{optflags} %{cflags_profile_generate}" # do not run profiling in parallel for reproducible builds (boo#1040589 boo#1102408) %make_build CFLAGS="%{optflags} %{cflags_profile_generate}" check %make_build clean %make_build CFLAGS="%{optflags} %{cflags_profile_feedback}" %else %make_build CFLAGS="%{optflags}" %endif %install %make_install %check make check %{?_smp_mflags} %files %license README.md %doc CHANGELOG %doc examples/ %{_bindir}/re2c %{_mandir}/man1/re2c.1%{?ext_man} %dir %{_datadir}/re2c %dir %{_datadir}/re2c/stdlib %{_datadir}/re2c/stdlib/unicode_categories.re %changelog * Wed Feb 5 2020 Martin Pluskal - Update to version 1.3: * Added option: ``--stadfa``. * Added warning: ``-Wsentinel-in-midrule``. * Added generic API primitives: + ``YYSTAGPD`` + ``YYMTAGPD`` * Added configurations: + ``re2c:sentinel = 0;`` + ``re2c:define:YYSTAGPD = "YYSTAGPD";`` + ``re2c:define:YYMTAGPD = "YYMTAGPD";`` * Worked on reproducible builds * Wed Aug 14 2019 Martin Pluskal - Update to version 1.2.1: * Lots of changes, see provided CHANGELOG - Drop no longer needed re2c-nogenerationdatedefault.patch - Enable profile guided optimization during build * Mon Mar 11 2019 Chris Coutinho - Update re2c to 1.1.1 * Fixed bug #211 re2c '-V' throws 'std::out_of_range' (version to vernum conversion). * Replaced Kuklewicz POSIX disambiguation algorithm with Okui algorithm. * Optimized GOR1 algorithm (computation of tagged epsilon-closure). * Added option "--conditions" (an alias for "-c" and "--start-conditions"). * Fixed bug #201 Bugs with option: 're2c:flags:no-debug-info'. * Reworked first part of TDFA paper. * Thu Mar 15 2018 mpluskal@suse.com - Modernise spec file with spec-cleaner * Thu Nov 9 2017 aavindraa@gmail.com - Update to version 1.0.3: * Fixes build failure on Mac OS X 10.5.8 with gcc 4.2.1 * Documentation fix * 2 examples removed * Mon Sep 4 2017 mpluskal@suse.com - Update to version 1.0.2: * Fixed bug #194 “Build with --enable-docs” * Updated documentation. - Changes for version 1.0.1: * Fixed bug #193 “1.0 build failure on macOS: error: calling a * private constructor of class ‘re2c::Rule’” - Changes for version 1.0: * Added several new options * Added new inplace confgurations * Added warning -Wnondeterministic-tags * Added fuzz-testing scripts * Added paper “Tagged Deterministic Finite Automata with Lookahead” * See provided CHANGELOG for full list of new features * Fixed bugs: + #121 “trailing contexts are fundamentally broken” + #135 “In installation make check give syntax error” + #137 “run_tests.sh fail when running configure script with absolute path” + #138 “website improvement” + #141 “Tests under Windows” + #142 “segvault with null terminated input” + #145 “Values for enum YYCONDTYPE are not generated when default rules with conditions are used” + #147 “Please add symbol name to “can’t find symbol” error message” + #152 “Line number in #line directive after enum YYCONDTYPE is 0-based” + #156 “Build with Visual Studio 14 2015: symbol name conflict” + #158 “Inconsistent forward declaration of struct/class vs definition” + #160 “Open text files with “wb” causes issues on Windows” + #162 “Reading files with “rb” causes issues in Windows” + #165 “Trailing context consumed if initial expression matches it” + #176 “re2c help message is too wide for most terminals” + #184 “Small documentation issue” * Sat Jan 30 2016 mpluskal@suse.com - Update to 0.16 * Fixed bug #127 "code generation error with wide chars and bitmaps (omitted 'goto' statement)" * Added DFA minimization and option '--dfa-minimization ' * Fixed bug #128 "very slow DFA construction (resulting in a very large DFA)" * Fixed bug #132 "test failure on big endian archs with 0.15.3" - Make building more verbose * Fri Jan 8 2016 tchvatal@suse.com - Version update to 0.15.3: * Syntax expansion and various updates * See CHANGELOG for in-depth details - Rebase patch to apply: * re2c-nogenerationdatedefault.patch * Mon Oct 5 2015 mpluskal@suse.com - Update to 0.14.3 * applied patch '#27 re2c crashes reading files containing %%{ %%}' * dropped distfiles for MSVC (they are broken anyway) - Changes for 0.14.2 * fixed #57 Wrong result only if another rule is present * Fri Mar 13 2015 tchvatal@suse.com - Version bump to latest 0.14.1: * Plenty of bugfixes all around * Tue Feb 3 2015 crrodriguez@opensuse.org - re2c-nogenerationdatedefault.patch: Default to - -no-generation-date to avoid build-compare problems [BNC#915937] * Thu Dec 11 2014 crrodriguez@opensuse.org - make test currently does nothing, make check however executes the test suite. * Thu Dec 11 2014 crrodriguez@opensuse.org - version 0.13.7.5 * Added UTF-8 and UTF-16 support. * fixed PHP HEREDOC problems. * Mon May 12 2014 tchvatal@suse.com - Cleanup with spec-cleaner - Sort out the %%prep finds that are no longer needed. * Sat Aug 3 2013 crrodriguez@opensuse.org - version 0.13.6 * allow Yacc-style %%{code brackets}%% * allow C++ // comments * Fixed inplace configuration in -e mode * Fixed Wrong start_label in -c mode. * Fixed Unescaped backslash in file name of #line directive * Fri Sep 9 2011 andrea.turrini@gmail.com - Fixed typo in re2c.spec * Tue Nov 23 2010 cristian.rodriguez@opensuse.org - Use smp_flags - when rebuilding the scanner use -g, to generate GCC specific code that is slightly faster. * Thu Jun 26 2008 mmarek@suse.cz - updated to version 0.13.5 * Fixed sf#1952896 Segfault in re2c::Scanner::scan. * Fixed sf#1952842 Regression. * Mon Apr 7 2008 mmarek@suse.cz - updated to version 0.13.4 * Added transparent handling of #line directives in input files. * Added re2c:yyfill:check inplace configuration. * Added re2c:define:YYSETSTATE:naked inplace configuration. * Added re2c:flags:w and re2c:flags:u inplace configurations. * Added the ability to add rules in 'use:re2c' blocks. * Changed -r flag to accept only 'rules:re2c' and 'use:re2c' blocks. * Mon Mar 17 2008 crrodriguez@suse.de - update to version 0.13.3 , required for new PHP language parser * Added -r flag to allow reuse of scanner definitions. * Added -F flag to support flex syntax in rules. * Fixed SEGV in scanner that occurs with very large blocks. * Fixed issue with unused yybm. * Partial support for flex syntax. * Changed to allow /* comments with -c switch. * Added flag -D/--emit-dot. * Mon Feb 4 2008 mmarek@suse.cz - updated to version 0.13.1 * build fixes for non-linux platforms only * Mon Jun 25 2007 dmueller@suse.de - add gcc-c++ buildrequires * Mon Jun 25 2007 dmueller@suse.de - update to versoin 0.13.0: * Fixed issue with short form of switches and parameter if not first switch. * Fixed #1708378 segfault in actions.cc. * Added -c and -t to generate scanners with (f)lex-like condition support. * Thu May 3 2007 dmueller@suse.de - update to version 0.12.0 * Sun Apr 1 2007 mrueckert@suse.de - update to version 0.11.3 * Sun Mar 4 2007 mrueckert@suse.de - update to version 0.11.2 * Tue Feb 20 2007 mrueckert@suse.de - This version fixes a warning in the generated code that some compilers issue. No other changes have been made.