re2c/re2c.spec

68 lines
2.0 KiB
RPMSpec
Raw Normal View History

#
# spec file for package re2c
#
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#
Name: re2c
Version: 0.14.3
Release: 0
Summary: Tool for generating C-based recognizers from regular expressions
License: SUSE-Public-Domain
Group: Development/Libraries/C and C++
Url: http://re2c.org/
Source: http://sourceforge.net/projects/re2c/files/re2c/%{version}/re2c-%{version}.tar.gz
BuildRequires: gcc-c++
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Patch0: re2c-nogenerationdatedefault.patch
%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
%setup -q
%patch0 -p1
find lessons examples -type f -print0 \
| xargs -r0 chmod -v a-x
%build
%configure
make %{?_smp_mflags} re2c
#regenerate file scanner.cc
rm -f scanner.cc
./re2c -g scanner.re > scanner.cc
rm -f re2c scanner.o
make %{?_smp_mflags}
%check
make check %{?_smp_mflags}
%install
make DESTDIR=%{buildroot} install %{?_smp_mflags}
%files
%defattr(-,root,root,-)
%{_bindir}/re2c
%{_mandir}/man1/re2c.1*
%doc doc/*.ps doc/sample.bib
%doc README CHANGELOG
%doc lessons/ examples/
%changelog