...
 
Commits (32)
qtbase-opensource-src (5.11.2+dfsg-4dpm2) UNRELEASED; urgency=medium
qtbase-opensource-src (5.11.2+dfsg-8dpm1) UNRELEASED; urgency=medium
* Disable features requirering a 3.16+ kernel
* Add i386 and arm64 to gles architectures
* Apply patch which stops using syscalls which might not be available
* Add i386 to gles architectures
-- Jonah Brüchert <jbb@kaidan.im> Mon, 29 Oct 2018 16:40:26 +0100
qtbase-opensource-src (5.11.2+dfsg-8) experimental; urgency=medium
* Switch arm64 to use OpenGL ES instead of desktop OpenGL (Closes: #881333).
- Rename libqt5gui5 to libqt5gui5a.
- Add Breaks+Replaces against libqt5gui5 << 5.11.2+dfsg-8~. This
avoids co-installation of the library.
- Change all related dependencies to new binary name.
- Add a lintian override for package name doe snot match soname warning.
- Adjust arch qualifications for required packages.
- debian/rules: add arm64 to gles2_architectures.
- Rename debian/libqt5gui5 files to their libqt5gui5a counterparts,
modifying them when necessary.
- Update symbols files arch qualifications accordingly.
* Update symbols files with buildds' logs.
-- Lisandro Damián Nicanor Pérez Meyer <lisandro@debian.org> Tue, 20 Nov 2018 20:24:04 -0300
qtbase-opensource-src (5.11.2+dfsg-7) unstable; urgency=medium
* Change the fix for #913499 to not break FindQHelpGenerator.cmake
that is shipped by extra-cmake-modules (closes: #914045).
-- Dmitry Shachnev <mitya57@debian.org> Mon, 19 Nov 2018 00:36:29 +0300
qtbase-opensource-src (5.11.2+dfsg-6) unstable; urgency=medium
[ Dmitry Shachnev ]
* Stop patching mkspecs/qmodule.pri in override_dh_auto_configure.
The condition has changed to !host_build|!cross_compile in Qt 5.9,
which is always true for us.
* Strip -fdebug-prefix-map=${BUILDDIR} flag from generated qmodule.pri.
This flag was unwantedly leaking to builds of other Qt modules.
Thanks to Helmut Grohne for noticing it!
* Build corelib and gui without -O3 on ia64 as a workaround for GCC bug
(PR rtl-optimization/85412).
* Update symbols files with buildds’ logs (alpha and kfreebsd-i386).
[ Lisandro Damián Nicanor Pérez Meyer ]
* Backport remove_need_for_glXGetProcAddressARB.patch. This removes the
need for using dlopen() and thus libGL.so.1 should be used instead of
libGL.so (Closes: #913287).
* Include /usr/share/dpkg/pkg-info.mk and replace the call to
dpkg-parsechangelog with DEB_VERSION_UPTREAM. According to lintian this
should handle more corner cases.
-- Lisandro Damián Nicanor Pérez Meyer <lisandro@debian.org> Sat, 17 Nov 2018 19:24:49 -0300
qtbase-opensource-src (5.11.2+dfsg-5) unstable; urgency=medium
* Add a patch to use qstrncpy instead of strlcpy on GNU/kFreeBSD
(kfreebsd_qstrncpy.diff).
* Add a patch to fix ambiguous definition of atime/mtime/ctime
on alpha, thanks Michael Cree (closes: #896658).
* debian/rules: Use qmake cross wrapper in Qt5CoreConfigExtras.cmake
(closes: #913499).
-- Dmitry Shachnev <mitya57@debian.org> Mon, 12 Nov 2018 10:08:10 +0300
>>>>>>> debian/5.11.2+dfsg-8
qtbase-opensource-src (5.11.2+dfsg-4) unstable; urgency=medium
* Mark libvulkan-dev build-dependency as linux-any (closes: #911422).
......
......@@ -86,15 +86,17 @@ Description: Qt 5 core module
.
The QtCore module contains core non-GUI functionality.
Package: libqt5gui5
Package: libqt5gui5a
Architecture: any
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: fontconfig, ${misc:Depends}, ${shlibs:Depends}
Recommends: libqt5svg5, qt5-gtk-platformtheme
Breaks: libqt5egldeviceintegration5 (<< 5.6.0~beta+dfsg-5~),
libqt5gui5 ( << 5.11.2+dfsg-8~),
libqt5xcbqpa5 (<< 5.6.0~beta+dfsg-5~)
Replaces: libqt5egldeviceintegration5 (<< 5.6.0~beta+dfsg-5~),
libqt5gui5 ( << 5.11.2+dfsg-8~),
libqt5xcbqpa5 (<< 5.6.0~beta+dfsg-5~)
Suggests: qt5-image-formats-plugins, qtwayland5
Description: Qt 5 GUI module
......@@ -107,7 +109,7 @@ Package: qt5-gtk-platformtheme
Architecture: any
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: libqt5gui5 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
Depends: libqt5gui5a (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
Description: Qt 5 GTK+ 3 platform theme
Qt is a cross-platform C++ application framework. Qt's primary feature
is its rich set of widgets that provide standard GUI functionality.
......@@ -119,7 +121,7 @@ Package: qt5-flatpak-platformtheme
Architecture: any
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: libqt5gui5 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
Depends: libqt5gui5a (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
Description: Qt 5 Flatpak platform theme
Qt is a cross-platform C++ application framework. Qt's primary feature
is its rich set of widgets that provide standard GUI functionality.
......@@ -314,12 +316,12 @@ Architecture: any
Multi-Arch: same
Section: libdevel
Depends: libgl1-mesa-dev [!armel !armhf !arm64 !i386] | libgl-dev [!armel !armhf !arm64 !i386],
libgles2-mesa-dev [armel armhf arm64 i386] | libgles2-dev [armel armhf arm64 i386],
libgles2-mesa-dev [armel armhf arm64 !i386] | libgles2-dev [armel armhf arm64 !i386],
libglu1-mesa-dev [!armel !armhf !arm64 !i386] | libglu-dev [!armel !armhf !arm64 !i386],
libqt5concurrent5 (= ${binary:Version}),
libqt5core5a (= ${binary:Version}),
libqt5dbus5 (= ${binary:Version}),
libqt5gui5 (= ${binary:Version}),
libqt5gui5a (= ${binary:Version}),
libqt5network5 (= ${binary:Version}),
libqt5printsupport5 (= ${binary:Version}),
libqt5sql5 (= ${binary:Version}),
......@@ -378,7 +380,7 @@ Depends: libqt5opengl5 (= ${binary:Version}),
${misc:Depends}
Breaks: qtbase5-dev (<< 5.4.0+dfsg-6~)
Replaces: qtbase5-dev (<< 5.4.0+dfsg-6~)
Provides: libqt5opengl5-desktop-dev (= ${binary:Version}) [!armel !armhf]
Provides: libqt5opengl5-desktop-dev (= ${binary:Version}) [!armel !armhf !arm64]
Description: Qt 5 OpenGL library development files
Qt is a cross-platform C++ application framework. Qt's primary feature
is its rich set of widgets that provide standard GUI functionality.
......
# SymbolsHelper-Confirmed: 5.11.2 amd64
# SymbolsHelper-Confirmed: 5.11.2 alpha amd64 kfreebsd-i386
libQt5Core.so.5 libqt5core5a #MINVER#
| libqt5core5a #MINVER#, qtbase-abi-5-11-2
* Build-Depends-Package: qtbase5-dev
......@@ -5258,14 +5258,12 @@ libQt5Core.so.5 libqt5core5a #MINVER#
(optional=templinst|arch=amd64 arm64 hppa m68k mips64el ppc64el riscv64 sh4 sparc64 x32)_ZNSt17_Temporary_bufferIP21QPersistentModelIndexS0_EC2ES1_S1_@Qt_5 5.11.1
(optional=templinst)_ZNSt17_Temporary_bufferIP21QPersistentModelIndexS0_ED1Ev@Qt_5 5.9.1
(optional=templinst)_ZNSt17_Temporary_bufferIP21QPersistentModelIndexS0_ED2Ev@Qt_5 5.9.1
(optional=templinst|arch=hurd-i386)_ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11_M_gen_randEv@Qt_5 5.11.1
(optional=templinst|arch=hurd-i386 kfreebsd-i386)_ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11_M_gen_randEv@Qt_5 5.11.1
(optional=templinst|subst)_ZNSt23mersenne_twister_engineIjL{size_t}32EL{size_t}624EL{size_t}397EL{size_t}31ELj2567483615EL{size_t}11ELj4294967295EL{size_t}7ELj2636928640EL{size_t}15ELj4022730752EL{size_t}18ELj1812433253EE4seedIN16QRandomGenerator15SystemGeneratorEEENSt9enable_ifIXsrSt8is_classIT_E5valueEvE4typeERS6_@Qt_5 5.10.0
(optional=templinst|subst)_ZNSt23mersenne_twister_engineIjL{size_t}32EL{size_t}624EL{size_t}397EL{size_t}31ELj2567483615EL{size_t}11ELj4294967295EL{size_t}7ELj2636928640EL{size_t}15ELj4022730752EL{size_t}18ELj1812433253EE4seedISt8seed_seqEENSt9enable_ifIXsrSt8is_classIT_E5valueEvE4typeERS5_@Qt_5 5.10.0
(optional=templinst|arch=ia64)_ZNSt3_V28__rotateIP21QPersistentModelIndexEET_S3_S3_S3_St26random_access_iterator_tag@Qt_5 5.5.0
(optional=templinst)_ZNSt3_V28__rotateIPiEET_S2_S2_S2_St26random_access_iterator_tag@Qt_5 5.5.0
(optional=templinst|arch=amd64 arm64 armel armhf hppa hurd-i386 i386 m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el riscv64 s390x sh4 sparc64 x32)_ZNSt6vectorIjSaIjEE17_M_realloc_insertIJjEEEvN9__gnu_cxx17__normal_iteratorIPjS1_EEDpOT_@Qt_5 5.10.1
(optional=templinst|arch=kfreebsd-amd64 kfreebsd-i386)_ZNSt8seed_seqC1IPjEET_S2_@Qt_5 5.10.1
(optional=templinst|arch=kfreebsd-amd64 kfreebsd-i386)_ZNSt8seed_seqC2IPjEET_S2_@Qt_5 5.10.1
(optional=templinst)_ZNSt6vectorIjSaIjEE17_M_realloc_insertIJjEEEvN9__gnu_cxx17__normal_iteratorIPjS1_EEDpOT_@Qt_5 5.10.1
(optional=templinst|subst)_ZSt17__rotate_adaptiveIP21QPersistentModelIndexS1_{ssize_t}ET_S2_S2_S2_T1_S3_T0_S3_@Qt_5 5.0.2
(optional=templinst|subst)_ZSt17__rotate_adaptiveIPiS0_{ssize_t}ET_S1_S1_S1_T1_S2_T0_S2_@Qt_5 5.0.2
(optional=templinst|arch=armel armhf hurd-i386 i386 kfreebsd-i386 m68k mips mipsel powerpc powerpcspe)_ZSt4swapIN8QVariant7PrivateEENSt9enable_ifIXsrSt6__and_IJSt6__not_ISt15__is_tuple_likeIT_EESt21is_move_constructibleIS6_ESt18is_move_assignableIS6_EEE5valueEvE4typeERS6_SG_@Qt_5 5.9.1
......
# This dependency has been added to track external packages building against
# our private headers. It is ok if internal packages depend on the ABI one.
libqt5gui5: symbols-declares-dependency-on-other-package qtbase-abi-*
libqt5gui5a: symbols-declares-dependency-on-other-package qtbase-abi-*
# We renamed libqt5gui5 to libqt5gui5a in order to allow arm64 use OpenGL ES
# instead of Desktop OpenGL.
libqt5gui5a: package-name-doesnt-match-sonames libQt5Gui5
# libQt5EglDeviceIntegration and libQt5XcbQpa are actually private libraries
# *only* used by their respective platforms plugins. Sadly instead of being
# installed into a proper place like /usr/lib/<arch-triplet>/qt5/ they are
......@@ -8,9 +11,9 @@ libqt5gui5: symbols-declares-dependency-on-other-package qtbase-abi-*
# We are not shipping headers for them and the only binaries that depend on
# them are shipped within this very same binary package, so it's safe to
# override this Lintian warning.
libqt5gui5: shlib-missing-in-control-file libQt5EglFSDeviceIntegration 5 for usr/lib/*/libQt5EglFSDeviceIntegration.so.5.*
libqt5gui5: shlib-missing-in-control-file libQt5EglFsKmsSupport 5 for usr/lib/*/libQt5EglFsKmsSupport.so.5.*
libqt5gui5: shlib-missing-in-control-file libQt5XcbQpa 5 for usr/lib/*/libQt5XcbQpa.so.5.*
libqt5gui5a: shlib-missing-in-control-file libQt5EglFSDeviceIntegration 5 for usr/lib/*/libQt5EglFSDeviceIntegration.so.5.*
libqt5gui5a: shlib-missing-in-control-file libQt5EglFsKmsSupport 5 for usr/lib/*/libQt5EglFsKmsSupport.so.5.*
libqt5gui5a: shlib-missing-in-control-file libQt5XcbQpa 5 for usr/lib/*/libQt5XcbQpa.so.5.*
# libQt5EglDeviceIntegration and libQt5XcbQpa are actually private libraries
# *only* used by their respective platforms plugins. Sadly instead of being
# installed into a proper place like /usr/lib/<arch-triplet>/qt5/ they are
......@@ -18,6 +21,6 @@ libqt5gui5: shlib-missing-in-control-file libQt5XcbQpa 5 for usr/lib/*/libQt5Xcb
# We are not shipping headers for them and the only binaries that depend on
# them are shipped within this very same binary package, so it's safe to
# override this Lintian warning.
libqt5gui5: shlib-missing-in-symbols-control-file libQt5EglFSDeviceIntegration 5 for usr/lib/*/libQt5EglFSDeviceIntegration.so.5.*
libqt5gui5: shlib-missing-in-symbols-control-file libQt5EglFsKmsSupport 5 for usr/lib/*/libQt5EglFsKmsSupport.so.5.*
libqt5gui5: shlib-missing-in-symbols-control-file libQt5XcbQpa 5 for usr/lib/*/libQt5XcbQpa.so.5.*
libqt5gui5a: shlib-missing-in-symbols-control-file libQt5EglFSDeviceIntegration 5 for usr/lib/*/libQt5EglFSDeviceIntegration.so.5.*
libqt5gui5a: shlib-missing-in-symbols-control-file libQt5EglFsKmsSupport 5 for usr/lib/*/libQt5EglFsKmsSupport.so.5.*
libqt5gui5a: shlib-missing-in-symbols-control-file libQt5XcbQpa 5 for usr/lib/*/libQt5XcbQpa.so.5.*
# SymbolsHelper-Confirmed: 5.11.1 amd64 arm64 armel armhf hppa hurd-i386 i386 m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el riscv64 s390x sh4 sparc64 x32
# SymbolsHelper-Confirmed: 5.11.2 amd64 kfreebsd-i386
libQt5Network.so.5 libqt5network5 #MINVER#
| libqt5network5 #MINVER#, qtbase-abi-5-11-2
* Build-Depends-Package: qtbase5-dev
......@@ -1322,7 +1322,6 @@ libQt5Network.so.5 libqt5network5 #MINVER#
(optional=templinst)_ZNSt11_Deque_baseIjSaIjEED2Ev@Qt_5 5.8.0
(optional=templinst)_ZNSt5dequeIjSaIjEE13_M_insert_auxIJRKjEEESt15_Deque_iteratorIjRjPjES8_DpOT_@Qt_5 5.8.0
(optional=templinst)_ZNSt5dequeIjSaIjEE16_M_push_back_auxIJRKjEEEvDpOT_@Qt_5 5.9.1
(optional=templinst|arch=kfreebsd-amd64 kfreebsd-i386)_ZNSt5dequeIjSaIjEE17_M_push_front_auxIJRKjEEEvDpOT_@Qt_5 5.10.1
(optional=templinst|subst)_ZNSt5dequeIjSaIjEE17_M_reallocate_mapE{size_t}b@Qt_5 5.8.0
(optional=templinst)_ZNSt5dequeIjSaIjEE8_M_eraseESt15_Deque_iteratorIjRjPjE@Qt_5 5.8.0
(optional=templinst)_ZNSt5dequeIjSaIjEE8_M_eraseESt15_Deque_iteratorIjRjPjES5_@Qt_5 5.8.0
......
# SymbolsHelper-Confirmed: 5.11.1 amd64 arm64 armel armhf hppa hurd-i386 i386 m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el riscv64 s390x sh4 sparc64 x32
# SymbolsHelper-Confirmed: 5.11.2 alpha amd64 kfreebsd-i386 riscv64
libQt5Widgets.so.5 libqt5widgets5 #MINVER#
| libqt5widgets5 #MINVER#, qtbase-abi-5-11-2
* Build-Depends-Package: qtbase5-dev
......@@ -7820,10 +7820,10 @@ libQt5Widgets.so.5 libqt5widgets5 #MINVER#
(optional=templinst|arch=!kfreebsd-amd64 !x32)_ZNSt17_Temporary_bufferIP5QRectS0_EC2ES1_S1_@Qt_5 5.7.0
(optional=templinst)_ZNSt3_V28__rotateIP5QRectEET_S3_S3_S3_St26random_access_iterator_tag@Qt_5 5.7.0
(optional=templinst)_ZNSt3_V28__rotateIPiEET_S2_S2_S2_St26random_access_iterator_tag@Qt_5 5.7.0
(optional=templinst|arch=!amd64 !arm64 !armel !armhf !hurd-i386 !i386 !m68k !mips !mipsel !powerpc !powerpcspe !ppc64 !ppc64el !s390x)_ZNSt6vectorIN18QWidgetLineControl7CommandESaIS1_EE12emplace_backIJS1_EEERS1_DpOT_@Qt_5_PRIVATE_API 5.11.1 1
(optional=templinst|arch=alpha hppa mips64el riscv64 sh4 sparc64 x32)_ZNSt6vectorIN18QWidgetLineControl7CommandESaIS1_EE12emplace_backIJS1_EEERS1_DpOT_@Qt_5_PRIVATE_API 5.11.1 1
(optional=templinst|arch=!x32)_ZNSt6vectorIN18QWidgetLineControl7CommandESaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Qt_5_PRIVATE_API 5.9.1 1
(optional=templinst|arch=amd64 arm64 armel armhf hurd-i386 i386 m68k mips mipsel powerpc powerpcspe ppc64 ppc64el s390x)_ZNSt6vectorIN18QWidgetLineControl7CommandESaIS1_EE17_M_realloc_insertIJS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Qt_5_PRIVATE_API 5.10.1 1
(optional=templinst|arch=armel armhf hppa hurd-i386 i386 kfreebsd-i386 m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el riscv64 s390x sh4 sparc64)_ZNSt6vectorIN18QWidgetLineControl7CommandESaIS1_EE8_M_eraseEN9__gnu_cxx17__normal_iteratorIPS1_S3_EES7_@Qt_5_PRIVATE_API 5.7.1 1
(optional=templinst|arch=amd64 arm64 armel armhf hurd-i386 i386 kfreebsd-i386 m68k mips mipsel powerpc powerpcspe ppc64 ppc64el s390x)_ZNSt6vectorIN18QWidgetLineControl7CommandESaIS1_EE17_M_realloc_insertIJS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Qt_5_PRIVATE_API 5.10.1 1
(optional=templinst|arch=!amd64 !arm64 !x32)_ZNSt6vectorIN18QWidgetLineControl7CommandESaIS1_EE8_M_eraseEN9__gnu_cxx17__normal_iteratorIPS1_S3_EES7_@Qt_5_PRIVATE_API 5.7.1 1
(optional=templinst|arch=armel armhf hurd-i386 i386 kfreebsd-i386 m68k mips mipsel powerpc powerpcspe)_ZSt4swapIN8QVariant7PrivateEENSt9enable_ifIXsrSt6__and_IJSt6__not_ISt15__is_tuple_likeIT_EESt21is_move_constructibleIS6_ESt18is_move_assignableIS6_EEE5valueEvE4typeERS6_SG_@Qt_5 5.9.1
_ZTI10QBoxLayout@Qt_5 5.0.2
_ZTI10QCompleter@Qt_5 5.0.2
......
https://codereview.qt-project.org/#/c/242412/
commit db8adedd40e7d0587cbd9765d1b626634c995a81
Author: Thiago Macieira <thiago.macieira@intel.com>
Date: Wed Sep 19 00:05:54 2018 -0500
Linux: Remove our use of syscall() for statx(2) and renameat2(2)
Those system calls are present in glibc 2.28. Instead of using
syscall(3) to place the system calls directly, let's use only the glibc
functions. That also means we no longer accept ENOSYS from either
function, if they were detected in glibc.
Change-Id: I44e7d800c68141bdaae0fffd1555b4b8fe63786b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
--- a/src/corelib/global/minimum-linux_p.h
+++ b/src/corelib/global/minimum-linux_p.h
@@ -75,9 +75,14 @@ QT_BEGIN_NAMESPACE
* - accept4 2.6.28
* - renameat2 3.16 QT_CONFIG(renameat2)
* - getrandom 3.17 QT_CONFIG(getentropy)
+ * - statx 4.11 QT_CONFIG(statx)
*/
-#if QT_CONFIG(getentropy)
+#if QT_CONFIG(statx)
+# define MINLINUX_MAJOR 4
+# define MINLINUX_MINOR 11
+# define MINLINUX_PATCH 0
+#elif QT_CONFIG(getentropy)
# define MINLINUX_MAJOR 3
# define MINLINUX_MINOR 17
# define MINLINUX_PATCH 0
--- a/src/corelib/io/qfilesystemengine_unix.cpp
+++ b/src/corelib/io/qfilesystemengine_unix.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2017 Intel Corporation.
+** Copyright (C) 2018 Intel Corporation.
** Copyright (C) 2016 The Qt Company Ltd.
** Copyright (C) 2013 Samuel Gaist <samuel.gaist@edeltech.ch>
** Contact: https://www.qt.io/licensing/
@@ -88,7 +88,6 @@ extern "C" NSString *NSTemporaryDirector
#if defined(Q_OS_LINUX)
# include <sys/ioctl.h>
-# include <sys/syscall.h>
# include <sys/sendfile.h>
# include <linux/fs.h>
@@ -96,28 +95,6 @@ extern "C" NSString *NSTemporaryDirector
#ifndef FICLONE
# define FICLONE _IOW(0x94, 9, int)
#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
-// whitelist and several Android vendors can't be bothered to update the list.
-# undef SYS_renameat2
-# undef SYS_statx
-# undef STATX_BASIC_STATS
-# else
-# if !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)
-# include <linux/stat.h>
-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)
-# undef STATX_BASIC_STATS
-# endif
-# endif // !Q_OS_ANDROID
#endif
#ifndef STATX_ALL
@@ -331,22 +308,8 @@ mtime(const T &statBuffer, int)
#ifdef STATX_BASIC_STATS
static int qt_real_statx(int fd, const char *pathname, int flags, struct statx *statxBuffer)
{
-#ifdef Q_ATOMIC_INT8_IS_SUPPORTED
- static QBasicAtomicInteger<qint8> statxTested = Q_BASIC_ATOMIC_INITIALIZER(0);
-#else
- static QBasicAtomicInt statxTested = Q_BASIC_ATOMIC_INITIALIZER(0);
-#endif
-
- if (statxTested.load() == -1)
- return -ENOSYS;
-
unsigned mask = STATX_BASIC_STATS | STATX_BTIME;
int ret = statx(fd, pathname, flags, mask, statxBuffer);
- if (ret == -1 && errno == ENOSYS) {
- statxTested.store(-1);
- return -ENOSYS;
- }
- statxTested.store(1);
return ret == -1 ? -errno : 0;
}
@@ -1282,14 +1245,12 @@ bool QFileSystemEngine::renameFile(const
if (Q_UNLIKELY(srcPath.isEmpty() || tgtPath.isEmpty()))
return emptyFileEntryWarning(), false;
-#if defined(RENAME_NOREPLACE) && (QT_CONFIG(renameat2) || defined(SYS_renameat2))
+#if defined(RENAME_NOREPLACE) && QT_CONFIG(renameat2)
if (renameat2(AT_FDCWD, srcPath, AT_FDCWD, tgtPath, RENAME_NOREPLACE) == 0)
return true;
- // If we're using syscall(), check for ENOSYS;
- // if renameat2 came from libc, we don't accept ENOSYS.
// We can also get EINVAL for some non-local filesystems.
- if ((QT_CONFIG(renameat2) || errno != ENOSYS) && errno != EINVAL) {
+ if (errno != EINVAL) {
error = QSystemError(errno, QSystemError::StandardLibraryError);
return false;
}
Description: fix ambiguous definition of atime/mtime/ctime on alpha
One of the implementations is enabled when the stat struct has
::st_atim member, another — when it has ::st_atimensec member.
.
On alpha, the stat struct has both members, defined as union here:
https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/alpha/bits/stat.h#l48
.
and then used here:
https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/alpha/bits/stat.h#l92
.
This patch forcefully disables the second implementation on alpha.
Author: Michael Cree <mcree@orcon.net.nz>
Forwarded: https://codereview.qt-project.org/245230
Last-Update: 2018-11-11
--- a/src/corelib/io/qfilesystemengine_unix.cpp
+++ b/src/corelib/io/qfilesystemengine_unix.cpp
@@ -303,7 +303,7 @@ mtime(const T &statBuffer, int)
{ return timespecToMSecs(statBuffer.st_mtimespec); }
#endif
-#ifndef st_mtimensec
+#if !defined(st_mtimensec) && !defined(__alpha__)
// Xtimensec
template <typename T>
Q_DECL_UNUSED static typename std::enable_if<(&T::st_atimensec, true), qint64>::type
Description: use qstrncpy instead of strlcpy which is not available on GNU/kFreeBSD
Author: Dmitry Shachnev <mitya57@debian.org>
Forwarded: not-yet
Last-Update: 2018-10-31
--- a/src/network/kernel/qnetworkinterface_unix.cpp
+++ b/src/network/kernel/qnetworkinterface_unix.cpp
@@ -38,6 +38,7 @@
**
****************************************************************************/
+#include "qbytearray.h"
#include "qset.h"
#include "qnetworkinterface.h"
#include "qnetworkinterface_p.h"
@@ -500,7 +501,7 @@ static QList<QNetworkInterfacePrivate *>
iface->flags = convertFlags(ptr->ifa_flags);
iface->hardwareAddress = iface->makeHwAddress(sdl->sdl_alen, (uchar*)LLADDR(sdl));
- strlcpy(mediareq.ifm_name, ptr->ifa_name, sizeof(mediareq.ifm_name));
+ qstrncpy(mediareq.ifm_name, ptr->ifa_name, sizeof(mediareq.ifm_name));
iface->type = probeIfType(openSocket(socket), sdl->sdl_type, &mediareq);
iface->mtu = getMtu(socket, &req);
}
@@ -524,7 +525,7 @@ static void getAddressExtraInfo(QNetwork
return;
}
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
+ qstrncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
// get flags
ifr.ifr_addr = *reinterpret_cast<struct sockaddr_in6 *>(sa);
From 4d5337d0256f683e7263a214fd63be4aa0e3f697 Mon Sep 17 00:00:00 2001
From: Michal Klocek <michal.klocek@qt.io>
Date: Mon, 12 Nov 2018 13:17:40 +0100
Subject: [PATCH] Remove need for glXGetProcAddressARB
We do already require glXGetProcAddress in line 248.
Task-number: QTBUG-71488
Change-Id: Id0f3bc256a71097241b99d2dcba927c1165e980e
---
src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp | 38 ----------
1 file changed, 1 insertion(+), 37 deletions(-)
--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
@@ -626,43 +626,7 @@ void QGLXContext::swapBuffers(QPlatformS
QFunctionPointer QGLXContext::getProcAddress(const char *procName)
{
-#ifdef QT_STATIC
- return glXGetProcAddressARB(reinterpret_cast<const GLubyte *>(procName));
-#else
- typedef void *(*qt_glXGetProcAddressARB)(const GLubyte *);
- static qt_glXGetProcAddressARB glXGetProcAddressARB = 0;
- static bool resolved = false;
-
- if (resolved && !glXGetProcAddressARB)
- return 0;
- if (!glXGetProcAddressARB) {
- QList<QByteArray> glxExt = QByteArray(glXGetClientString(m_display, GLX_EXTENSIONS)).split(' ');
- if (glxExt.contains("GLX_ARB_get_proc_address")) {
-#if QT_CONFIG(dlopen)
- void *handle = dlopen(NULL, RTLD_LAZY);
- if (handle) {
- glXGetProcAddressARB = (qt_glXGetProcAddressARB) dlsym(handle, "glXGetProcAddressARB");
- dlclose(handle);
- }
- if (!glXGetProcAddressARB)
-#endif
- {
-#if QT_CONFIG(library)
- extern const QString qt_gl_library_name();
-// QLibrary lib(qt_gl_library_name());
- QLibrary lib(QLatin1String("GL"));
- if (!lib.load())
- lib.setFileNameAndVersion(QLatin1String("GL"), 1);
- glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB");
-#endif
- }
- }
- resolved = true;
- }
- if (!glXGetProcAddressARB)
- return 0;
- return (void (*)())glXGetProcAddressARB(reinterpret_cast<const GLubyte *>(procName));
-#endif
+ return glXGetProcAddress(reinterpret_cast<const GLubyte *>(procName));
}
QSurfaceFormat QGLXContext::format() const
......@@ -2,6 +2,7 @@
fix-selection-rendering.patch
reference_dpi.diff
dont_get_screen_rotation.diff
remove_need_for_glXGetProcAddressARB.patch
# Debian specific.
gnukfreebsd.diff
......@@ -14,3 +15,9 @@ nonlinux_utime.diff
no_arc4random_buf.diff
ssl_max_version.diff
qdoc_default_incdirs.diff
kfreebsd_qstrncpy.diff
alpha_atimensec.diff
# Old kernels
Stop-using-syscall-for-statx-and-renameat2.patch
#! /usr/bin/dh-exec
[!armel !armhf !arm64 !i386] usr/include/*/qt5/QtGlxSupport/5.*/*
[!armel !armhf !arm64 !i386] usr/include/*/qt5/QtGlxSupport/QtGlxSupport
[!armel !armhf !arm64 !i386] usr/include/*/qt5/QtGlxSupport/QtGlxSupportDepends
[!armel !armhf !arm64 !i386] usr/include/*/qt5/QtGlxSupport/QtGlxSupportVersion
[!armel !armhf !arm64 !i386] usr/include/*/qt5/QtGlxSupport/qtglxsupportversion.h
[!armel !armhf !arm64 !i386] usr/lib/*/libQt5GlxSupport.a
[!armel !armhf !arm64 !i386] usr/lib/*/libQt5GlxSupport.prl
[!arm64 !armel !armhf !i386] usr/include/*/qt5/QtGlxSupport/5.*/*
[!arm64 !armel !armhf !i386] usr/include/*/qt5/QtGlxSupport/QtGlxSupport
[!arm64 !armel !armhf !i386] usr/include/*/qt5/QtGlxSupport/QtGlxSupportDepends
[!arm64 !armel !armhf !i386] usr/include/*/qt5/QtGlxSupport/QtGlxSupportVersion
[!arm64 !armel !armhf !i386] usr/include/*/qt5/QtGlxSupport/qtglxsupportversion.h
[!arm64 !armel !armhf !i386] usr/lib/*/libQt5GlxSupport.a
[!arm64 !armel !armhf !i386] usr/lib/*/libQt5GlxSupport.prl
[kfreebsd-any linux-any] usr/include/*/qt5/QtEglFSDeviceIntegration/5.*/*
[kfreebsd-any linux-any] usr/include/*/qt5/QtEglFSDeviceIntegration/QtEglFSDeviceIntegration
[kfreebsd-any linux-any] usr/include/*/qt5/QtEglFSDeviceIntegration/QtEglFSDeviceIntegrationDepends
......
......@@ -6,6 +6,9 @@
# Use already defined DEB_HOST_* variables.
include /usr/share/dpkg/architecture.mk
# Use already defined upstream version as DEB_VERSION_UPSTREAM.
include /usr/share/dpkg/pkg-info.mk
export PATH := $(PATH):$(shell pwd)/bin
export CFLAGS := $(shell dpkg-buildflags --get CFLAGS) $(shell dpkg-buildflags --get CPPFLAGS) $(shell getconf LFS_CFLAGS)
export CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS) $(shell dpkg-buildflags --get CPPFLAGS) $(shell getconf LFS_CFLAGS)
......@@ -13,7 +16,7 @@ export LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS) -Wl,--as-needed
export PKG_CONFIG := /usr/bin/$(DEB_HOST_GNU_TYPE)-pkg-config
# Upstream changelog
upstream_changes := dist/changes-$(shell dpkg-parsechangelog | sed -n 's/^Version: //p' | cut -f1 -d '-' | sed -e 's/+dfsg//' | sed -e 's/+git.*//')
upstream_changes := dist/changes-$(shell echo $(DEB_VERSION_UPSTREAM) | sed -e 's/+dfsg//' | sed -e 's/+git.*//')
ifneq (,$(filter libqt5sql5-ibase,$(shell dh_listpackages)))
extra_configure_opts += -plugin-sql-ibase
......@@ -26,7 +29,7 @@ ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH), $(no_pch_architectures)))
extra_configure_opts += -no-pch
endif
gles2_architectures := armel armhf arm64 i386
gles2_architectures := armel armhf arm64
ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH), $(gles2_architectures)))
extra_configure_opts += -opengl es2
else
......@@ -37,6 +40,11 @@ ifneq ($(DEB_HOST_ARCH_OS),$(findstring $(DEB_HOST_ARCH_OS), linux kfreebsd))
extra_configure_opts += -no-eglfs
endif
# See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85412
ifeq ($(DEB_HOST_ARCH),ia64)
extra_configure_opts += QMAKE_CFLAGS_OPTIMIZE_FULL-=-O3
endif
# Compile without sse2 support on i386
# Do not use pre compiled headers in order to be able to rebuild the gui
# submodule.
......@@ -110,18 +118,11 @@ override_dh_auto_configure:
-compile-examples \
-no-directfb \
-no-use-gold-linker \
-no-feature-renameat2 \
-no-feature-getentropy \
$(extra_configure_opts) \
$(cpu_opt) \
QMAKE_CFLAGS="$(CFLAGS)" \
QMAKE_CXXFLAGS="$(CXXFLAGS)" \
QMAKE_LFLAGS="$(LDFLAGS)"
# qtConfOutput_qmakeArgs sets the flags inside a !host_build {...}
# block, but we want them to be set for tools using host_build too.
sed -i "s/\!host_build {/true {/" mkspecs/qmodule.pri
# Prevent Makefile from re-running qmake after the .pri was changed.
touch Makefile
override_dh_auto_clean:
[ ! -f Makefile ] || $(MAKE) confclean distclean
......@@ -273,6 +274,14 @@ endif
< debian/qmake-cross-wrapper.in > debian/tmp/usr/bin/$(DEB_HOST_GNU_TYPE)-qmake
chmod +x debian/tmp/usr/bin/$(DEB_HOST_GNU_TYPE)-qmake
# See https://bugs.debian.org/913499
sed -i 's,lib/qt5/bin/qmake,lib/$(DEB_HOST_MULTIARCH)/qt5/bin/qmake,' \
debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/cmake/Qt5Core/Qt5CoreConfigExtras.cmake
# See https://bugs.debian.org/914019
sed -i 's,-fdebug-prefix-map=$(CURDIR)=. ,,' \
debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/qt5/mkspecs/qmodule.pri
override_dh_auto_install-indep:
dh_auto_build -- INSTALL_ROOT=$(CURDIR)/debian/tmp install_docs
......