Репозитории 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.5.35
Release: alt4
Summary: A fast lexical analyzer generator
License: BSD-style
Group: Development/Other
Url: http://flex.sourceforge.net/
Packager: Dmitry V. Levin <ldv at altlinux.org>
# http://sf.net/flex/%name-%version.tar.bz2
Source0: flex-%version.tar
Source1: flex-NEWS.ALT
Patch0: flex-2.5.35-cvs-20081228.patch
Patch1: flex-2.5.35-deb-6.patch
Patch2: flex-2.5.35-alt-YY_STATE_BUF_SIZE.patch
Patch3: flex-2.5.35-alt-texinfo.patch
Patch4: flex-2.5.35-alt-yy_fatal_error-noreturn.patch
Patch5: flex-2.5.35-alt-gcc44.patch
Patch6: flex-2.5.35-alt-isatty.patch
Patch7: flex-2.5.35-suse-pic.patch
Patch8: flex-2.5.35-suse-doc.patch
Requires: m4 >= 0:1.4
Conflicts: flex-old
BuildRequires: cvs, flex, help2man
%{?!_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 -q
rm parse.[hc] scan.c skel.c
%patch0 -p0
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
install -pm644 %_sourcedir/flex-NEWS.ALT NEWS.ALT
bzip2 -9k NEWS
%build
autoreconf -fisv
%configure
%make_build CFLAGS='%optflags -D_REENTRANT' MAKEINFOFLAGS=--no-split dist_doc_DATA=
%check
%make_build -k check dist_doc_DATA=
%install
%makeinstall dist_doc_DATA=
ln -s flex %buildroot%_bindir/lex
ln -s flex %buildroot%_bindir/flex++
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
%files -f %name.lang
%doc AUTHORS COPYING NEWS.* README examples
%_bindir/*
%_libdir/*
%_includedir/*
%_mandir/man?/*
%_infodir/*.info*
%changelog
…
Полный changelog можно просмотреть здесь
Version: 2.5.35
Release: alt4
Summary: A fast lexical analyzer generator
License: BSD-style
Group: Development/Other
Url: http://flex.sourceforge.net/
Packager: Dmitry V. Levin <ldv at altlinux.org>
# http://sf.net/flex/%name-%version.tar.bz2
Source0: flex-%version.tar
Source1: flex-NEWS.ALT
Patch0: flex-2.5.35-cvs-20081228.patch
Patch1: flex-2.5.35-deb-6.patch
Patch2: flex-2.5.35-alt-YY_STATE_BUF_SIZE.patch
Patch3: flex-2.5.35-alt-texinfo.patch
Patch4: flex-2.5.35-alt-yy_fatal_error-noreturn.patch
Patch5: flex-2.5.35-alt-gcc44.patch
Patch6: flex-2.5.35-alt-isatty.patch
Patch7: flex-2.5.35-suse-pic.patch
Patch8: flex-2.5.35-suse-doc.patch
Requires: m4 >= 0:1.4
Conflicts: flex-old
BuildRequires: cvs, flex, help2man
%{?!_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 -q
rm parse.[hc] scan.c skel.c
%patch0 -p0
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
install -pm644 %_sourcedir/flex-NEWS.ALT NEWS.ALT
bzip2 -9k NEWS
%build
autoreconf -fisv
%configure
%make_build CFLAGS='%optflags -D_REENTRANT' MAKEINFOFLAGS=--no-split dist_doc_DATA=
%check
%make_build -k check dist_doc_DATA=
%install
%makeinstall dist_doc_DATA=
ln -s flex %buildroot%_bindir/lex
ln -s flex %buildroot%_bindir/flex++
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
%files -f %name.lang
%doc AUTHORS COPYING NEWS.* README examples
%_bindir/*
%_libdir/*
%_includedir/*
%_mandir/man?/*
%_infodir/*.info*
%changelog
…
Полный changelog можно просмотреть здесь