Testing file offset bits?
Alexander Neundorf
neundorf at kde.org
Sun Apr 21 09:28:36 UTC 2013
On Saturday 20 April 2013, Stephen Kelly wrote:
> On 02/27/2013 03:59 PM, David Faure wrote:
> > On Monday 18 February 2013 12:10:31 Dirk Müller wrote:
> >> 2013/2/16 Alexander Neundorf <neundorf at kde.org>:
> >>> Dirk Mueller added it in 2008:
> >>> http://websvn.kde.org/?view=revision&revision=829068
> >>>
> >>> If I remove every compiler flag where I'm not sure why it is needed,
> >>> we'll be left with not much.
> >>
> >> This flag is needed in order to be able to support files > 2GB even on
> >> 32bit platforms. The default is to use the non-64bit aware syscalls on
> >> 32bit platforms, which makes every application to SIGXFSZ (which is
> >> equivalent to a crash) when they see or touch a file > 2GB.
> >>
> >> This is an excellent default for upstream, but I decided back then
> >> that KDE apps should be big-file aware right from the start. The
> >> reason why this was implemented as a configure check rather than an
> >> universation global setting is that back then there was btw software
> >> that did not
> >> compile properly on x86_64 when _FILE_OFFSET=64 was set (which was a
> >> bug).
> >
> > This is only necessary when using ::open() directly though (or the other
> > stuff from kde_file.h). I'm porting the code away from kde_file.h (to
> > QFile / QFileInfo) whereever necessary, which makes this unneeded.
> >
> > Maybe only in kio_file, in the end, for performance reasons.
>
> I've moved it to kdecore for now.
>
> Should the -D_LARGEFILE64_SOURCE definition also be moved?
IMO having these flags present by default does not hurt (except in those cases
which were tested for), and when needed, avoid bugs when dealing with big
files, so I would leave them there.
Alex
More information about the Kde-buildsystem
mailing list