Compare commits

...

No commits in common. "c8s" and "c9-beta" have entirely different histories.
c8s ... c9-beta

6 changed files with 90 additions and 220 deletions

View File

@ -1 +1,2 @@
8270497aad88c7dd4f2c317298c50513fb0c3c8e SOURCES/bison-3.0.4.tar.xz
3fa6e50d9cb7145e7c2c1ad354e621c0eeb21d88 SOURCES/bison-3.7.4.tar.xz
31517240c61cb9aaf61377eecb1157665578379e SOURCES/gpgkey-7DF84374B1EE1F9764BBE25D0DDCAA3278D5264E.gpg

3
.gitignore vendored
View File

@ -1 +1,2 @@
SOURCES/bison-3.0.4.tar.xz
SOURCES/bison-3.7.4.tar.xz
SOURCES/gpgkey-7DF84374B1EE1F9764BBE25D0DDCAA3278D5264E.gpg

View File

@ -1,151 +0,0 @@
commit 952416114729b95209dccfc4edacfc1ff13b4e82
Author: Akim Demaille <akim@lrde.epita.fr>
Date: Mon Jan 26 18:23:12 2015 +0100
tests: c++: fix symbol lookup issue
Sun C 5.13 SunOS_sparc 2014/10/20 reports errors on tests 430-432.
Reported by Dennis Clarke.
<http://lists.gnu.org/archive/html/bug-bison/2015-01/msg00087.html>
* tests/c++.at (Variants): Be sure to emit operator<< before using it:
use "%code top" rather than "%code".
Prefer std::vector to std::list.
Do not define anything in std::, to avoid undefined behavior.
diff --git a/tests/c++.at b/tests/c++.at
index 55d7d40..60292f4 100644
--- a/tests/c++.at
+++ b/tests/c++.at
@@ -96,7 +96,7 @@ AT_SETUP([C++ Variant-based Symbols])
AT_KEYWORDS([variant])
AT_BISON_OPTION_PUSHDEFS([%skeleton "lalr1.cc" %debug $1])
-# Store strings and integers in a list of strings.
+# Store strings and integers in a vector of strings.
AT_DATA_GRAMMAR([list.y],
[[%skeleton "lalr1.cc"
%define api.value.type variant
@@ -114,20 +114,20 @@ AT_DATA_GRAMMAR([list.y],
}
%token <int> INT "int"
-%type < std::list<int> > exp
+%type < std::vector<int> > exp
%printer { yyo << $$; } <int>
%printer
{
- for (std::list<int>::const_iterator i = $$.begin (); i != $$.end (); ++i)
+ for (std::vector<int>::const_iterator i = $$.begin (); i != $$.end (); ++i)
{
if (i != $$.begin ())
yyo << ", ";
yyo << *i;
}
- } < std::list<int> >
+ } < std::vector<int> >
-%code requires { #include <list> }
+%code requires { #include <vector> }
%code { int yylex (yy::parser::semantic_type* yylval); }
%%
@@ -185,7 +185,7 @@ m4_pushdef([AT_TEST],
[AT_SETUP([Variants $1])
AT_BISON_OPTION_PUSHDEFS([%debug $1])
-# Store strings and integers in a list of strings.
+# Store strings and integers in a vector of strings.
AT_DATA_GRAMMAR([list.y],
[[%debug
%define api.value.type variant
@@ -194,29 +194,25 @@ AT_DATA_GRAMMAR([list.y],
%code requires // code for the .hh file
{
-#include <list>
+#include <vector>
#include <string>
-typedef std::list<std::string> strings_type;
+typedef std::vector<std::string> strings_type;
}
-%code // code for the .cc file
+%code top // code for the .cc file.
{
#include <cstdlib> // abort, getenv
#include <iostream>
+#include <vector>
#include <sstream>
+#include <string>
- namespace yy
- {
- static]AT_TOKEN_CTOR_IF([[
- parser::symbol_type yylex ()]], [[
- parser::token_type yylex (parser::semantic_type* yylval]AT_LOCATION_IF([,
- parser::location_type* yylloc])[)]])[;
- }
- // Printing a list of strings (for %printer).
- // Koening look up will look into std, since that's an std::list.
- namespace std
+ typedef std::vector<std::string> strings_type;
+
+ namespace yy
{
+ // Must be available early, as is used in %destructor.
std::ostream&
operator<<(std::ostream& o, const strings_type& s)
{
@@ -230,16 +226,27 @@ typedef std::list<std::string> strings_type;
return o << ')';
}
}
+}
- // Conversion to string.
- template <typename T>
- inline
- std::string
- to_string (const T& t)
+%code // code for the .cc file.
+{
+ namespace yy
{
- std::ostringstream o;
- o << t;
- return o.str ();
+ static]AT_TOKEN_CTOR_IF([[
+ parser::symbol_type yylex ()]], [[
+ parser::token_type yylex (parser::semantic_type* yylval]AT_LOCATION_IF([,
+ parser::location_type* yylloc])[)]])[;
+
+ // Conversion to string.
+ template <typename T>
+ inline
+ std::string
+ to_string (const T& t)
+ {
+ std::ostringstream o;
+ o << t;
+ return o.str ();
+ }
}
}
@@ -252,10 +259,10 @@ typedef std::list<std::string> strings_type;
// Using the template type to exercize its parsing.
// Starting with :: to ensure we don't output "<::" which starts by the
// digraph for the left square bracket.
-%type <::std::list<std::string>> list;
+%type <::std::vector<std::string>> list;
%printer { yyo << $$; }
- <int> <::std::string> <::std::list<std::string>>;
+ <int> <::std::string> <::std::vector<std::string>>;
%destructor { std::cerr << "Destroy: " << $$ << '\n'; } <*>;
%destructor { std::cerr << "Destroy: \"" << $$ << "\"\n"; } <::std::string>;
%%

View File

@ -1,19 +0,0 @@
commit 4af4a4a71827c0bc5e0ec67af23edef4f15cee8e
Author: Paul Eggert <address@hidden>
Date: Mon Mar 5 10:56:29 2018 -0800
fflush: adjust to glibc 2.28 libio.h removal
(Only part of this commit was backported as needed.)
diff -Nrup a/lib/fseterr.c b/lib/fseterr.c
--- a/lib/fseterr.c 2015-01-04 11:43:50.000000000 -0500
+++ b/lib/fseterr.c 2018-08-06 01:27:29.869844228 -0400
@@ -29,7 +29,7 @@ fseterr (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_flags |= _IO_ERR_SEEN;
#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
fp_->_flags |= __SERR;

View File

@ -0,0 +1,6 @@
-----BEGIN PGP SIGNATURE-----
iF0EABECAB0WIQR9+EN0se4fl2S74l0N3KoyeNUmTgUCX6/AhAAKCRAN3KoyeNUm
TjfQAJ4ztzHT7qiL01fO07dVVUlvfgN2cgCfZUzR1JX39kfAmC7Kmhyhn4dYYkQ=
=sfp4
-----END PGP SIGNATURE-----

View File

@ -1,28 +1,26 @@
Summary: A GNU general-purpose parser generator
Name: bison
Version: 3.0.4
Release: 10%{?dist}
Version: 3.7.4
Release: 5%{?dist}
License: GPLv3+
Group: Development/Tools
Source: ftp://ftp.gnu.org/pub/gnu/bison/bison-%{version}.tar.xz
# https://bugzilla.redhat.com/show_bug.cgi?id=948856
# Submitted for upstream inclusion on 2013-05-17.
Patch0: bison-3.0.4-c++-test-failure.patch
Patch1: bison-3.0.4-gnulib-fseterr.patch
Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz
Source1: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz.sig
# genereted from https://ftp.gnu.org/gnu/gnu-keyring.gpg via:
# curl https://ftp.gnu.org/gnu/gnu-keyring.gpg | gpg2 --import
# gpg2 --export --export-options export-minimal 7DF84374B1EE1F9764BBE25D0DDCAA3278D5264E > gpgkey-7DF84374B1EE1F9764BBE25D0DDCAA3278D5264E.gpg
Source2: gpgkey-7DF84374B1EE1F9764BBE25D0DDCAA3278D5264E.gpg
# testsuite dependency
BuildRequires: gcc-c++
BuildRequires: autoconf
BuildRequires: flex
BuildRequires: gcc-c++
BuildRequires: gnupg2
URL: http://www.gnu.org/software/bison/
BuildRoot: %{_tmppath}/%{name}-root
URL: http://www.gnu.org/software/%{name}/
BuildRequires: m4 >= 1.4
BuildRequires: make
#java-1.7.0-openjdk-devel
Requires: m4 >= 1.4
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
# bison contains a copy of gnulib. As a copylib, gnulib was granted
# an exception that allows bundling it with other software. For
@ -47,7 +45,6 @@ Bison.
%package devel
Summary: -ly library for development using Bison-generated parsers
Group: Development/Libraries
Provides: bison-static = %{version}-%{release}
%description devel
@ -69,7 +66,6 @@ simple programs to supply minimal support for the generated parsers.
%package runtime
Summary: Runtime support files used by Bison-generated parsers
Group: Development/Libraries
%description runtime
The bison-runtime package contains files used at runtime by parsers
@ -79,51 +75,35 @@ these files are available. See the Internationalization in the
Bison manual section for more information.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
%autosetup
%build
%configure
make
%make_build
%check
make check
#make maintainer-check
%install
rm -rf $RPM_BUILD_ROOT
%makeinstall
%make_install
# Remove unpackaged files.
rm -f $RPM_BUILD_ROOT/%{_bindir}/yacc
rm -f $RPM_BUILD_ROOT/%{_infodir}/dir
rm -f $RPM_BUILD_ROOT/%{_mandir}/man1/yacc*
rm -f $RPM_BUILD_ROOT/%{_docdir}/%{name}/examples/calc++/*
rm -f $RPM_BUILD_ROOT/%{_docdir}/%{name}/examples/mfcalc/*
rm -f $RPM_BUILD_ROOT/%{_docdir}/%{name}/examples/rpcalc/*
rm -f %{buildroot}/%{_bindir}/yacc
rm -f %{buildroot}/%{_infodir}/dir
rm -f %{buildroot}/%{_mandir}/man1/yacc*
rm -rf %{buildroot}/%{_docdir}/%{name}/examples/*
%find_lang %{name}
%find_lang %{name}-runtime
%find_lang %{name}-gnulib
gzip -9nf ${RPM_BUILD_ROOT}%{_infodir}/bison.info*
%post
if [ -f %{_infodir}/bison.info.gz ]; then # for --excludedocs
/sbin/install-info %{_infodir}/bison.info.gz %{_infodir}/dir --entry="* bison: (bison). The GNU parser generator." || :
fi
%preun
if [ $1 = 0 ]; then
if [ -f %{_infodir}/bison.info.gz ]; then # for --excludedocs
/sbin/install-info --delete %{_infodir}/bison.info.gz %{_infodir}/dir --entry="* bison: (bison). The GNU parser generator." || :
fi
fi
# The distribution contains also source files. These are used by m4
# when the target parser file is generated.
%files -f %{name}.lang
%defattr(-,root,root)
%files -f %{name}.lang -f %{name}-gnulib.lang
%doc AUTHORS ChangeLog NEWS README THANKS TODO COPYING
%{_mandir}/*/bison*
%{_datadir}/bison
@ -139,13 +119,65 @@ fi
%defattr(-,root,root)
%{_libdir}/liby.a
%clean
rm -rf $RPM_BUILD_ROOT
%changelog
* Sun Aug 05 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 3.0.4-10
- Add changes needed to gnulib fseterr.c since libio.h has been removed.
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 3.7.4-5
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Thu Jun 10 2021 Florian Weimer <fweimer@redhat.com> - 3.7.4-4
- Rebuild with updated binutils (#1960667)
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 3.7.4-3
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.7.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jan 11 2021 Arjun Shankar <arjun@redhat.com> - 3.7.4-1
- Update to bison 3.7.4 (#1897780)
* Tue Nov 10 2020 Arjun Shankar <arjun@redhat.com> - 3.7.3-1
- Update to bison 3.7.3 (#1887766)
* Tue Sep 8 2020 Arjun Shankar <arjun@redhat.com> - 3.7.2-1
- Update to bison 3.7.2 (#1876120)
* Thu Aug 27 2020 Arjun Shankar <arjun@redhat.com> - 3.7.1-1
- Update to bison 3.7.1 (#1859887)
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.4-3
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 10 2020 Dan Čermák <dan.cermak@cgc-instruments.com> - 3.6.4-1
- Update to bison 3.6.4 (#1792738, #1847608)
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Jan 7 2020 Arjun Shankar <arjun@redhat.com> - 3.5-1
- Update to bison 3.5 (#1751843)
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.4.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Jun 21 2019 Arjun Shankar <arjun@redhat.com> - 3.4.1-1
- Update to bison 3.4.1 (#1631912)
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Tue Aug 14 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 3.0.5-1
- _IO_ftrylockfile is obsolete as part of the removal of libio.h
- Build requires gcc-c++ to fix build failure. (#1603491)
- Update to bison 3.0.5 (#1583179)
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.4-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.4-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild