This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [RFC] Make _FILE_OFFSET_BITS=64 default.
- From: Rich Felker <dalias at aerifal dot cx>
- To: Paul Eggert <eggert at cs dot ucla dot edu>
- Cc: Mike Frysinger <vapier at gentoo dot org>, "Joseph S. Myers" <joseph at codesourcery dot com>, libc-alpha at sourceware dot org, OndÅej BÃlka <neleai at seznam dot cz>, Denis Obrezkov <reprofy at etersoft dot ru>
- Date: Fri, 14 Mar 2014 14:18:37 -0400
- Subject: Re: [RFC] Make _FILE_OFFSET_BITS=64 default.
- Authentication-results: sourceware.org; auth=none
- References: <1393521776-1102-1-git-send-email-reprofy at etersoft dot ru> <26837730 dot jZzKCPMtpS at vapier> <Pine dot LNX dot 4 dot 64 dot 1403131254080 dot 4888 at digraph dot polyomino dot org dot uk> <1818532 dot 29kOdgNHi0 at vapier> <5322A4AC dot 2050104 at cs dot ucla dot edu>
On Thu, Mar 13, 2014 at 11:41:48PM -0700, Paul Eggert wrote:
> Mike Frysinger wrote:
> >i'm debating adding it to the next Gentoo glibc version to gather
> >some actual data since no one seems to want to move w/out data, but no one
> >wants to gather data either.
>
> Joseph's message gave me pause, as I worry it's asking for an
> enormous task that can never truly said to be done. Regardless, I
> took one step to do this, and exhaustively surveyed all libraries
> installed on my Fedora 20 host as part of my routine development for
> building coreutils, GNU Emacs, etc. I found the following issues:
>
> glibc's own fts.h refuses to compile if __USE_FILE_OFFSET64 is defined.
Known issue:
https://sourceware.org/bugzilla/show_bug.cgi?id=15838
As stated there, my preference would be deprecation this whole API.
Applications which need it can get a _working_ (unlike the glibc copy)
version of this functionality from third-party sources. Gnulib and BSD
both have working versions that don't have the 32-bit limitation.
> zlib's zlib.h attempts to work around the glibc problems with
> _FILE_OFFSET_BITS, and its workaround would need adjusting if glibc
> changed the default.
Can you explain in more detail?
> Several libraries use APIs that accept affected data types. These
> libraries are all compiled with _FILE_OFFSET_BITS #defined to be 64,
> so the proposed change would be beneficial as it would fix any
> applications that are currently mistakenly compiled without defining
> _FILE_OFFSET_BITS to be 64. These libraries are:
Exactly. That's what I've been saying all along. Once the default has
changed, this issue will gradually go away and hopefully never return.
Rich