Bug 837701

Summary: glibc 2.15.90 not distinguishable from glibc 2.15 (__GLIBC_MINOR__ defined the same)
Product: [Fedora] Fedora Reporter: Mattias Ellert <mattias.ellert>
Component: glibcAssignee: Jeff Law <law>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fweimer, jakub, law, pfrankli, schwab
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-07-05 17:16:57 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 Mattias Ellert 2012-07-04 21:39:02 UTC
Description of problem:

F18 (rawhide) currently ships glibc 2.15.90 which is a prerelease version of glibc 2.16. Despite it being a prerelease of 2.16 it still defines the __GLIBC_MINOR__ macro as 15, making it impossible to use conditionals based on this macro to distinguish between 2.15 the 2.16 prerelease version.

Due to changes in the glibc headers one of the packages I maintain needs to be patched to compile properly with the new glibc. However, if the patched code should still be compilable with older versions the patch should contain conditionals to do different things on the new and the old glibc. Since the 2.16 prerelease version (2.15.90) currently in rawhide still defined __GLIBC_MINOR__ to be 15, this can not be done properly, and the patch can not be sent upstream.

I have seen that there is a scratch build of the proper glibc 2.16 in koji that properly declares __GLIBC_MINOR__ to be 16. If this were to be built for rawhide that would resolve the problem. When is 2.16 planned to be build as a proper non-scratch build for rawhide?

Version-Release number of selected component (if applicable):
glibc-2.15.90-16.fc18

How reproducible:
Always
  
Actual results:
__GLIBC_MINOR__ is 15 although the headers are not compatible with glibc 2.15

Expected results:
__GLIBC_MINOR__ is 16

Comment 1 Jeff Law 2012-07-05 17:16:57 UTC
We inherit the definition of GLIBC_MINOR from the upstream master glibc sources; their choice has always been to identify the development releases in the manner you've noticed.

In general rather than testing for a specific version, I would recommend testing for features.  That's generally much more reliable approach to deal with that kind of issue.

WRT an official build with using the released glibc-2.16, they should be in Koji now and should appear in rawhide shortly.