Репозитории ALT
S: | 2.6.4.0.88.9801-alt2 |
5.1: | 2.5.35-alt4 |
4.1: | 2.5.33-alt3 |
4.0: | 2.5.33-alt3 |
3.0: | 2.5.4a-ipl16mdk |
Группа :: Разработка/Прочее
Пакет: flex
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Name: flex
Version: 2.6.4.0.88.9801
Release: alt2
Summary: A fast lexical analyzer generator
License: BSD-3-Clause
Group: Development/Other
Url: https://github.com/westes/flex
# git://git.altlinux.org/gears/f/%name.git
Source: %name-%version-%release.tar
Requires: m4 >= 0:1.4
Conflicts: flex-old
BuildRequires: flex help2man makeinfo
%{?!_without_check:%{?!_disable_check:BuildRequires: gcc-c++}}
%description
flex is a tool for generating scanners: programs which recognized
lexical patterns in text. flex reads the given input files for a
description of a scanner to generate. The description is in the form
of pairs of regular expressions and C code, called rules. flex
generates as output a C source file, lex.yy.c, which defines a routine
yylex(). This file is compiled and linked with the -lfl library
to produce an executable. When the executable is run, it analyzes
its input for occurrences of the regular expressions.
Whenever it finds one, it executes the corresponding C code.
The behaviour of Flex has undergone a major change since version
2.5.4a. Flex scanners are now reentrant, you may have multiple
scanners in the same program with differing sets of defaults, and
they play nicer with modern C and C++ compilers. The Flip side is
that Flex no longer conforms to the POSIX lex behaviour, and the
scanners require conforming implementations when flex is used in ANSI
C mode. The package flex-old provides the older behaviour.
%prep
%setup -n %name-%version-%release
%build
%{?optflags_lto:%global optflags_lto %optflags_lto -ffat-lto-objects}
%autoreconf
%configure --disable-shared
%make_build CFLAGS="$RPM_OPT_FLAGS -fPIC" dist_doc_DATA=
%install
%makeinstall_std dist_doc_DATA=
ln -s flex %buildroot%_bindir/lex
ln -s libfl.a %buildroot%_libdir/libl.a
ln -s libfl.a %buildroot%_libdir/libfl_pic.a
ln -s flex.1 %buildroot%_man1dir/lex.1
ln -s flex.1 %buildroot%_man1dir/flex++.1
%find_lang %name
%define _unpackaged_files_terminate_build 1
%define _stripped_files_terminate_build 1
%set_verify_elf_method strict
%check
%make_build -k check dist_doc_DATA=
%files -f %name.lang
%doc AUTHORS COPYING NEWS README.md examples
%_bindir/*lex*
%_libdir/lib*.a
%_includedir/*.h
%_pkgconfigdir/libfl.pc
%_mandir/man?/*lex*
%_infodir/flex.info*
%changelog
…
Полный changelog можно просмотреть здесь
Version: 2.6.4.0.88.9801
Release: alt2
Summary: A fast lexical analyzer generator
License: BSD-3-Clause
Group: Development/Other
Url: https://github.com/westes/flex
# git://git.altlinux.org/gears/f/%name.git
Source: %name-%version-%release.tar
Requires: m4 >= 0:1.4
Conflicts: flex-old
BuildRequires: flex help2man makeinfo
%{?!_without_check:%{?!_disable_check:BuildRequires: gcc-c++}}
%description
flex is a tool for generating scanners: programs which recognized
lexical patterns in text. flex reads the given input files for a
description of a scanner to generate. The description is in the form
of pairs of regular expressions and C code, called rules. flex
generates as output a C source file, lex.yy.c, which defines a routine
yylex(). This file is compiled and linked with the -lfl library
to produce an executable. When the executable is run, it analyzes
its input for occurrences of the regular expressions.
Whenever it finds one, it executes the corresponding C code.
The behaviour of Flex has undergone a major change since version
2.5.4a. Flex scanners are now reentrant, you may have multiple
scanners in the same program with differing sets of defaults, and
they play nicer with modern C and C++ compilers. The Flip side is
that Flex no longer conforms to the POSIX lex behaviour, and the
scanners require conforming implementations when flex is used in ANSI
C mode. The package flex-old provides the older behaviour.
%prep
%setup -n %name-%version-%release
%build
%{?optflags_lto:%global optflags_lto %optflags_lto -ffat-lto-objects}
%autoreconf
%configure --disable-shared
%make_build CFLAGS="$RPM_OPT_FLAGS -fPIC" dist_doc_DATA=
%install
%makeinstall_std dist_doc_DATA=
ln -s flex %buildroot%_bindir/lex
ln -s libfl.a %buildroot%_libdir/libl.a
ln -s libfl.a %buildroot%_libdir/libfl_pic.a
ln -s flex.1 %buildroot%_man1dir/lex.1
ln -s flex.1 %buildroot%_man1dir/flex++.1
%find_lang %name
%define _unpackaged_files_terminate_build 1
%define _stripped_files_terminate_build 1
%set_verify_elf_method strict
%check
%make_build -k check dist_doc_DATA=
%files -f %name.lang
%doc AUTHORS COPYING NEWS README.md examples
%_bindir/*lex*
%_libdir/lib*.a
%_includedir/*.h
%_pkgconfigdir/libfl.pc
%_mandir/man?/*lex*
%_infodir/flex.info*
%changelog
…
Полный changelog можно просмотреть здесь