Fix qmake build with glibc 2.28
We haven't yet run the configure checks to see if statx and renameat2 are present in glibc, so this fails when we redefine the structures and functions. linux/stat.h:56:8: error: redefinition of 'struct statx_timestamp' bits/statx.h:25:8: note: previous definition of 'struct statx_timestamp' qfilesystemengine_unix.cpp:110:12: error: 'int renameat2(int, const char*, int, const char*, unsigned int)' was declared 'extern' and later 'static' [-fpermissive] Change-Id: Ia741b559c24d46c78fb2fffd1548a792d22e3368 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
This commit is contained in:
parent
2adc06f940
commit
25feee4e06
@ -98,10 +98,18 @@
|
|||||||
#define QT_NO_QOBJECT
|
#define QT_NO_QOBJECT
|
||||||
#define QT_FEATURE_process -1
|
#define QT_FEATURE_process -1
|
||||||
#define QT_FEATURE_regularexpression -1
|
#define QT_FEATURE_regularexpression -1
|
||||||
#define QT_FEATURE_renameat2 -1
|
#ifdef __GLIBC_PREREQ
|
||||||
|
# define QT_FEATURE_renameat2 (__GLIBC_PREREQ(2, 28) ? 1 : -1)
|
||||||
|
#else
|
||||||
|
# define QT_FEATURE_renameat2 -1
|
||||||
|
#endif
|
||||||
#define QT_FEATURE_sharedmemory -1
|
#define QT_FEATURE_sharedmemory -1
|
||||||
#define QT_FEATURE_slog2 -1
|
#define QT_FEATURE_slog2 -1
|
||||||
#define QT_FEATURE_statx -1
|
#ifdef __GLIBC_PREREQ
|
||||||
|
# define QT_FEATURE_statx (__GLIBC_PREREQ(2, 28) ? 1 : -1)
|
||||||
|
#else
|
||||||
|
# define QT_FEATURE_statx -1
|
||||||
|
#endif
|
||||||
#define QT_FEATURE_syslog -1
|
#define QT_FEATURE_syslog -1
|
||||||
#define QT_NO_SYSTEMLOCALE
|
#define QT_NO_SYSTEMLOCALE
|
||||||
#define QT_FEATURE_systemsemaphore -1
|
#define QT_FEATURE_systemsemaphore -1
|
||||||
|
@ -91,7 +91,6 @@ extern "C" NSString *NSTemporaryDirectory();
|
|||||||
# include <sys/syscall.h>
|
# include <sys/syscall.h>
|
||||||
# include <sys/sendfile.h>
|
# include <sys/sendfile.h>
|
||||||
# include <linux/fs.h>
|
# include <linux/fs.h>
|
||||||
# include <linux/stat.h>
|
|
||||||
|
|
||||||
// in case linux/fs.h is too old and doesn't define it:
|
// in case linux/fs.h is too old and doesn't define it:
|
||||||
#ifndef FICLONE
|
#ifndef FICLONE
|
||||||
@ -112,6 +111,7 @@ static int renameat2(int oldfd, const char *oldpath, int newfd, const char *newp
|
|||||||
# endif
|
# endif
|
||||||
|
|
||||||
# if !QT_CONFIG(statx) && defined(SYS_statx)
|
# if !QT_CONFIG(statx) && defined(SYS_statx)
|
||||||
|
# include <linux/stat.h>
|
||||||
static int statx(int dirfd, const char *pathname, int flag, unsigned mask, struct statx *statxbuf)
|
static int statx(int dirfd, const char *pathname, int flag, unsigned mask, struct statx *statxbuf)
|
||||||
{ return syscall(SYS_statx, dirfd, pathname, flag, mask, statxbuf); }
|
{ return syscall(SYS_statx, dirfd, pathname, flag, mask, statxbuf); }
|
||||||
# elif !QT_CONFIG(statx) && !defined(SYS_statx)
|
# elif !QT_CONFIG(statx) && !defined(SYS_statx)
|
||||||
|
Loading…
Reference in New Issue
Block a user