Bug 1640764

Summary: glibc-rh1505492-prototypes-intl.patch causes intermittent problems building glibc
Product: Red Hat Enterprise Linux 7 Reporter: Jose E. Marchesi <jose.marchesi>
Component: glibcAssignee: Arjun Shankar <ashankar>
Status: CLOSED ERRATA QA Contact: qe-baseos-tools-bugs
Severity: medium Docs Contact:
Priority: unspecified    
Version: 7.6CC: ashankar, codonell, dj, fweimer, mcermak, mnewsome, pfrankli, skolosov
Target Milestone: rcKeywords: Patch
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glibc-2.17-285.el7 Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-06 12:49:05 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1660844    

Description Jose E. Marchesi 2018-10-18 17:24:43 UTC
Description of problem:


The patch glibc-rh1505492-prototypes-intl.patch introduces changes in the bison parser intl/plural.y.  As expected, it also incorporates a patch for the regenerated intl/plural.c.

However, the ordering of the thunks in the .patch file make plural.y to be patched before plural.c when running rpmbuild.  Sometimes, this triggers the invocation of bison to regenerate intl/plural.c from intl/plural.y.

If bison happens to be installed in the system, a build error occurs, as the bison in RHEL 7.x is too new for the shipped glibc.

Since glibc.spec doesn't BuildRequire bison, I would recommend to reorder the tyunks in glibc-rh1505492-prototypes-intl.patch to make sure nothing gets regenerated.


Version-Release number of selected component (if applicable):

glibc-2.17-260


How reproducible:

Often.

Steps to Reproduce:
1. yum install bison
2. rpmbuild -ba glibc.spec

Actual results:

Bison is invoked, and compilation fails due to the old glibc not to be able to work with bison 3.

Expected results:


Bison shouldn't be invoked.

Additional info:

Have a nice day! :)

Comment 2 Jose E. Marchesi 2018-10-18 17:38:05 UTC
Eeer, I meant to say the thunks for intl/plural.c come before the thunks for intl/plural.y in the patch file, not the other way around :)

Comment 14 Carlos O'Donell 2018-10-24 19:25:23 UTC
(In reply to Jose E. Marchesi from comment #0)
> The patch glibc-rh1505492-prototypes-intl.patch introduces changes in the
> bison parser intl/plural.y.  As expected, it also incorporates a patch for
> the regenerated intl/plural.c.
> 
> However, the ordering of the thunks in the .patch file make plural.y to be
> patched before plural.c when running rpmbuild.  Sometimes, this triggers the
> invocation of bison to regenerate intl/plural.c from intl/plural.y.
> 
> If bison happens to be installed in the system, a build error occurs, as the
> bison in RHEL 7.x is too new for the shipped glibc.
> 
> Since glibc.spec doesn't BuildRequire bison, I would recommend to reorder
> the tyunks in glibc-rh1505492-prototypes-intl.patch to make sure nothing
> gets regenerated.

Jose,

Thank you for bug report.

This issue can impact CentOS rebuilds depending on the buildroot configuration and exactly what else is installed.

This issue can impact Red Hat Enterprise Linux QE if they happen to have bison installed in their rootfs during package rebuild testing.

Lastly the issue can impact users who are rebuilding glibc with rpmbuild, particularly if they have bison installed.

This is really only relevant to RHEL 7 (or earlier), since in Fedora (glibc 2.27 or newer) with commit 1faaf7035cabda101e1d6653bff7a539f201db91 the build reproducibility was improved by requiring bison and removing plural.c entirely.

For these reasons we are going to review this bug as part of our work for the next Red Hat Enterprise Linux 7 release. This does not guarantee that we will fix it, but we will review the issue along with all the other issues under consideration for RHEL 7.7.

Thank you again.

Comment 15 Florian Weimer 2018-11-20 09:16:24 UTC
*** Bug 1605091 has been marked as a duplicate of this bug. ***

Comment 21 Sergey Kolosov 2019-06-03 14:39:12 UTC
Verified with instructions from https://bugzilla.redhat.com/show_bug.cgi?id=1640764#c19,
the bug has been fixed in glibc-2.17-285.el7

Comment 23 errata-xmlrpc 2019-08-06 12:49:05 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2019:2118