diff --git a/PKGBUILD b/PKGBUILD index 830e75fbbf50fa500625bf1f9876d7fb17790b51..7d8b88791ac1a3005985b1a480414e1f6ef3be1d 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -7,7 +7,7 @@ pkgbase=qt5-base pkgname=(qt5-base qt5-xcb-private-headers) _qtver=5.11.1 pkgver=${_qtver/-/} -pkgrel=4 +pkgrel=5 arch=(x86_64) url='http://qt-project.org/' license=('GPL3' 'LGPL3' 'FDL' 'custom') @@ -27,12 +27,17 @@ optdepends=('qt5-svg: to use SVG icon themes' conflicts=('qtchooser') groups=('qt' 'qt5') _pkgfqn="${pkgbase/5-/}-everywhere-src-${_qtver}" -source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") -sha256sums=('a0d047b2da5782c8332c59ae203984b64e4d5dc5f4ba9c0884fdbe753d0afb46') +source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" + glibc-2.28.patch) +sha256sums=('a0d047b2da5782c8332c59ae203984b64e4d5dc5f4ba9c0884fdbe753d0afb46' + '46fe59014d32862334b3f8bb81e02e84edc57bd5c465cde98cd9a05ccc343b9a') validpgpkeys=('6DD4217456569BA711566AC7F06E8FDE7B45DAAC') # Eric Vidal prepare() { cd ${_pkgfqn} + + # Work around build failure with glibc 2.28 (patch from Fedora) + patch -Np1 -i ../glibc-2.28.patch # Build qmake using Arch {C,LD}FLAGS # This also sets default {C,CXX,LD}FLAGS for projects built using qmake diff --git a/glibc-2.28.patch b/glibc-2.28.patch new file mode 100644 index 0000000000000000000000000000000000000000..022b6983fb6fb59ac7652a7ab96bb991df5ebc21 --- /dev/null +++ b/glibc-2.28.patch @@ -0,0 +1,53 @@ +diff -up qtbase-everywhere-src-5.11.1/mkspecs/linux-g++/qplatformdefs.h.glibc qtbase-everywhere-src-5.11.1/mkspecs/linux-g++/qplatformdefs.h +--- qtbase-everywhere-src-5.11.1/mkspecs/linux-g++/qplatformdefs.h.glibc 2018-06-15 09:29:31.000000000 +0200 ++++ qtbase-everywhere-src-5.11.1/mkspecs/linux-g++/qplatformdefs.h 2018-07-26 15:40:56.887961897 +0200 +@@ -72,7 +72,9 @@ + #include <sys/time.h> + #include <sys/shm.h> + #include <sys/socket.h> ++#if 0 + #include <sys/stat.h> ++#endif + #include <sys/wait.h> + #include <netinet/in.h> + +diff -up qtbase-everywhere-src-5.11.1/src/corelib/io/qfilesystemengine_unix.cpp.glibc qtbase-everywhere-src-5.11.1/src/corelib/io/qfilesystemengine_unix.cpp +--- qtbase-everywhere-src-5.11.1/src/corelib/io/qfilesystemengine_unix.cpp.glibc 2018-06-15 09:29:31.000000000 +0200 ++++ qtbase-everywhere-src-5.11.1/src/corelib/io/qfilesystemengine_unix.cpp 2018-07-26 16:34:54.346840184 +0200 +@@ -50,7 +50,9 @@ + #include <pwd.h> + #include <stdlib.h> // for realpath() + #include <sys/types.h> ++#if 0 + #include <sys/stat.h> ++#endif + #include <unistd.h> + #include <stdio.h> + #include <errno.h> +@@ -91,7 +93,9 @@ extern "C" NSString *NSTemporaryDirector + # include <sys/syscall.h> + # include <sys/sendfile.h> + # include <linux/fs.h> ++#if 0 + # include <linux/stat.h> ++#endif + + // in case linux/fs.h is too old and doesn't define it: + #ifndef FICLONE +@@ -105,13 +109,13 @@ extern "C" NSString *NSTemporaryDirector + # undef SYS_renameat2 + # undef SYS_statx + # undef STATX_BASIC_STATS +-# else +-# if !QT_CONFIG(renameat2) && defined(SYS_renameat2) ++# else ++# if 0 && !QT_CONFIG(renameat2) && defined(SYS_renameat2) + static int renameat2(int oldfd, const char *oldpath, int newfd, const char *newpath, unsigned flags) + { return syscall(SYS_renameat2, oldfd, oldpath, newfd, newpath, flags); } + # endif + +-# if !QT_CONFIG(statx) && defined(SYS_statx) ++# if 0 && !QT_CONFIG(statx) && defined(SYS_statx) + static int statx(int dirfd, const char *pathname, int flag, unsigned mask, struct statx *statxbuf) + { return syscall(SYS_statx, dirfd, pathname, flag, mask, statxbuf); } + # elif !QT_CONFIG(statx) && !defined(SYS_statx)