Bug 1573342

Summary: m4 FTBS due to glibc-headers changes in 2.27.9000-15.fc29
Product: [Fedora] Fedora Reporter: Valdis Kletnieks <valdis.kletnieks>
Component: m4Assignee: Vitezslav Crhonek <vcrhonek>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: praiskup, vcrhonek
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: m4-1.4.18-8.fc29 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-05-02 11:12:00 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:

Description Valdis Kletnieks 2018-04-30 22:37:37 UTC
Description of problem: Building from the current 1.4.18 .src RPM dies with this error:

freadahead.c: In function 'freadahead':
freadahead.c:92:3: error: #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."
  #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."
   ^~~~~

The problem is in lib/freadahead.c, line 28:

#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */

This has been a bullet-in-the-chamber since Ulric Drepper nailed the value of __GNU_LIBRARY__ to 6 - in October 1996.

The issue with the left half arises from this upstream glibc commit, as far as I can tell (or possibly a related commit)

https://sourceware.org/git/?p=glibc.git;a=commit;f=libio/libio.h;h=48a8f8328122ab8d06b7333cb87be46feeaf7cca

which is intended to dissuade people from poking around in the internals.  Simply raising the compare to == 6 doesn't help, as then it goes:

freadahead.c:32:26: error: '_IO_IN_BACKUP' undeclared (first use in this function

So more surgery is needed...
2.27.9000015.fc29 breaks
2.27.9000-14.fc29 was OK


Version-Release number of selected component (if applicable):
m4-1.4.18-6.fc28

How reproducible:
'rpmbuild -bb' against m4-1.4.18-6.fc28.src.rpm on a box that has glibc-2.27.9000-15.fc29.x86_64 installed.

Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Vitezslav Crhonek 2018-05-02 11:12:00 UTC
Thanks for the bug report, fixed!