From 25e6fee27f4a293728dd15b659170e7b9c7db9bc Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Tue, 27 Sep 2022 15:04:05 -0400 Subject: remove LFS64 programming interfaces (macro-only) from _GNU_SOURCE these badly pollute the namespace with macros whenever _GNU_SOURCE is defined, which is always the case with g++, and especially tends to interfere with C++ constructs. as our implementation of these was macro-only, their removal cannot affect any existing binaries. at the source level, portable software should be prepared for them not to exist. for now, they are left in place with explicit _LARGEFILE64_SOURCE. this provides an easy temporary path for integrators/distributions to get packages building again right away if they break while working on a proper, upstreamable fix. the intent is that this be a very short-term measure and that the macros be removed entirely in the next release cycle. --- include/unistd.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include/unistd.h') diff --git a/include/unistd.h b/include/unistd.h index 0e8149e..5bc7f79 100644 --- a/include/unistd.h +++ b/include/unistd.h @@ -198,7 +198,7 @@ ssize_t copy_file_range(int, off_t *, int, off_t *, size_t, unsigned); pid_t gettid(void); #endif -#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE) +#if defined(_LARGEFILE64_SOURCE) #define lseek64 lseek #define pread64 pread #define pwrite64 pwrite -- cgit v1.1