[PATCH] fcntl.h: add hack to kill fcntl64 on x86_64

Rob Landley rob at landley.net
Mon Apr 26 05:19:25 UTC 2010


On Sunday 25 April 2010 08:35:09 roman at khimov.ru wrote:
> From: Roman I Khimov <khimov at altell.ru>
>
> In previous uclibc versions we've had fcntl64 (nonexisting on x86_64) as
> an alias to fcntl. Recent NPTL changes removed that alias, although fcntl64
> is still present in headers when using _GNU_SOURCE or _FILE_OFFSET_BITS=64.
>
> It confuses applications and leads to linkage failures.
>
> The patch proposed tries to deal with it in headers (thus not reintroducing
> fcntl64 alias), although there might be some better way.
> ---
>  include/fcntl.h |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/include/fcntl.h b/include/fcntl.h
> index e37073f..4bdf7a9 100644
> --- a/include/fcntl.h
> +++ b/include/fcntl.h
> @@ -73,7 +73,7 @@ __BEGIN_DECLS
>
>     This function is a cancellation point and therefore not marked with
>     __THROW.  */
> -#ifndef __USE_FILE_OFFSET64
> +#if !defined (__USE_FILE_OFFSET64) || defined (__x86_64__)

I hit it on mips64 as well.  In theory powerpc64 might care as well, I haven't 
built that yet.

Rob
-- 
Latency is more important than throughput. It's that simple. - Linus Torvalds


More information about the uClibc mailing list