re2c/re2c.spec
Peter Simons 54df03530e Accepting request 973759 from home:dirkmueller:Factory
- update to 3.0:
  - Added code generation backend for Rust:
  - Added options:
    + ``--loop-switch``
    + ``--no-unsafe``
  - Added configurations;
    + ``re2c🏷️yyloop``
    + ``re2c:unsafe``
  - Renamed options to use common naming scheme. The old names are supported as
    aliases, so the change does not break existing code. Documentation has been
    updated to use new names.
    + ``--api`` is a new alias for ``--input``
    + ``--ebcdic`` is a new alias for ``--ecb``
    + ``--ucs2`` is a new alias for ``--wide-chars``
    + ``--utf32`` is a new alias for ``--unicode``
    + ``--utf16`` is a new alias for ``--utf-16``
    + ``--utf8`` is a new alias for ``--utf-8``
    + ``--header`` is a new alias for ``--type-header``
  - Renamed configurations to use common naming scheme and support proper scoping
    under subcategories such as ``:define``, ``:label``, ``:variable``, etc. The
    old names are supported as aliases, so the change does not break existing
    code. Documentation has been updated to use new names.
    + ``re2c:api`` is a new alias for ``re2c🎏input``
    + ``re2c:bit-vectors`` is a new alias for ``re2c🎏bit-vectors``
    + ``re2c:case-insensitive`` is a new alias for ``re2c🎏case-insensitive``
    + ``re2c:case-inverted`` is a new alias for ``re2c🎏case-inverted``
    + ``re2c:case-ranges`` is a new alias for ``re2c🎏case-ranges``
    + ``re2c:cond:prefix`` is a new alias for ``re2c:condprefix``
    + ``re2c:cond:enumprefix`` is a new alias for ``re2c:condenumprefix``
    + ``re2c:computed-gotos`` is a new alias for ``re2c🎏computed-gotos``

OBS-URL: https://build.opensuse.org/request/show/973759
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/re2c?expand=0&rev=45
2022-04-29 08:14:48 +00:00

74 lines
2.2 KiB
RPMSpec

#
# spec file for package re2c
#
# Copyright (c) 2022 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: 3.0
Release: 0
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++
BuildRequires: python3-base >= 3.7
%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_build check
%files
%license README.md
%doc CHANGELOG
%doc examples/
%{_bindir}/re2c
%{_bindir}/re2go
%{_bindir}/re2rust
%{_mandir}/man1/re2c.1%{?ext_man}
%{_mandir}/man1/re2go.1%{?ext_man}
%{_mandir}/man1/re2rust.1%{?ext_man}
%dir %{_datadir}/re2c
%dir %{_datadir}/re2c/stdlib
%{_datadir}/re2c/stdlib/unicode_categories.re
%changelog