Avoid conflicting declaration of 'renameat2' on glibc 2.28 (see .) Patch from by Andreas Müller . --- src/corelib/io/qfilesystemengine_unix.cpp | 11 ++++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp index be6ce48d0cb..1bf1bebc7f1 100644 --- a/qtbase/src/corelib/io/qfilesystemengine_unix.cpp +++ b/qtbase/src/corelib/io/qfilesystemengine_unix.cpp @@ -98,6 +98,17 @@ extern "C" NSString *NSTemporaryDirectory(); # define FICLONE _IOW(0x94, 9, int) #endif +// renameat2/statx features for non bootstrapped build +#ifndef QT_BOOTSTRAPPED +#ifdef __GLIBC_PREREQ +# define QT_FEATURE_renameat2 (__GLIBC_PREREQ(2, 28) ? 1 : -1) +# define QT_FEATURE_statx (__GLIBC_PREREQ(2, 28) ? 1 : -1) +#else +# define QT_FEATURE_renameat2 -1 +# define QT_FEATURE_statx -1 +#endif +#endif + # if defined(Q_OS_ANDROID) // renameat2() and statx() are disabled on Android because quite a few systems // come with sandboxes that kill applications that make system calls outside a -- 2.14.4