import qt5-qtbase-5.12.5-4.el8
This commit is contained in:
parent
5ef676fd79
commit
b4eb4d52c3
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
||||
SOURCES/qtbase-everywhere-src-5.11.1.tar.xz
|
||||
SOURCES/qtbase-everywhere-src-5.12.5.tar.xz
|
||||
|
@ -1 +1 @@
|
||||
41c43cfd4713381b4e9f31db11836e9afdc0877e SOURCES/qtbase-everywhere-src-5.11.1.tar.xz
|
||||
47145a722a8a8457121071f60b4e44fc66c58979 SOURCES/qtbase-everywhere-src-5.12.5.tar.xz
|
||||
|
29
SOURCES/qt5-qtbase-5.12.1-firebird.patch
Normal file
29
SOURCES/qt5-qtbase-5.12.1-firebird.patch
Normal file
@ -0,0 +1,29 @@
|
||||
diff -up qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/configure.json.firebird qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/configure.json
|
||||
--- qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/configure.json.firebird 2019-01-28 11:11:52.000000000 -0600
|
||||
+++ qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/configure.json 2019-02-03 13:41:27.392305128 -0600
|
||||
@@ -49,10 +49,11 @@
|
||||
"ibase": {
|
||||
"label": "InterBase",
|
||||
"test": {},
|
||||
- "headers": "ibase.h",
|
||||
+ "headers": "firebird/ibase.h",
|
||||
"sources": [
|
||||
{ "libs": "-lgds32_ms", "condition": "config.win32" },
|
||||
- { "libs": "-lgds", "condition": "!config.win32" }
|
||||
+ { "libs": "-lgds", "condition": "!config.win32" },
|
||||
+ { "libs": "-lfbclient", "condition": "!config.win32" }
|
||||
]
|
||||
},
|
||||
"mysql": {
|
||||
diff -up qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/ibase/qsql_ibase_p.h.firebird qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/ibase/qsql_ibase_p.h
|
||||
--- qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/ibase/qsql_ibase_p.h.firebird 2019-01-28 11:11:52.000000000 -0600
|
||||
+++ qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/ibase/qsql_ibase_p.h 2019-02-03 13:27:30.683142996 -0600
|
||||
@@ -52,7 +52,7 @@
|
||||
//
|
||||
|
||||
#include <QtSql/qsqldriver.h>
|
||||
-#include <ibase.h>
|
||||
+#include <firebird/ibase.h>
|
||||
|
||||
#ifdef QT_PLUGIN
|
||||
#define Q_EXPORT_SQLDRIVER_IBASE
|
@ -1,32 +0,0 @@
|
||||
diff --git a/src/plugins/sqldrivers/configure.json b/src/plugins/sqldrivers/configure.json
|
||||
index 234f880..7b13671 100644
|
||||
--- a/src/plugins/sqldrivers/configure.json
|
||||
+++ b/src/plugins/sqldrivers/configure.json
|
||||
@@ -50,11 +50,12 @@
|
||||
"ibase": {
|
||||
"label": "InterBase",
|
||||
"test": {
|
||||
- "include": "ibase.h"
|
||||
+ "include": "firebird/ibase.h"
|
||||
},
|
||||
"sources": [
|
||||
{ "libs": "-lgds32_ms", "condition": "config.win32" },
|
||||
- { "libs": "-lgds", "condition": "!config.win32" }
|
||||
+ { "libs": "-lgds", "condition": "!config.win32" },
|
||||
+ { "libs": "-lfbclient", "condition": "!config.win32" }
|
||||
]
|
||||
},
|
||||
"mysql": {
|
||||
diff --git a/src/plugins/sqldrivers/ibase/qsql_ibase_p.h b/src/plugins/sqldrivers/ibase/qsql_ibase_p.h
|
||||
index c7cee41..6a9c56c 100644
|
||||
--- a/src/plugins/sqldrivers/ibase/qsql_ibase_p.h
|
||||
+++ b/src/plugins/sqldrivers/ibase/qsql_ibase_p.h
|
||||
@@ -52,7 +52,7 @@
|
||||
//
|
||||
|
||||
#include <QtSql/qsqldriver.h>
|
||||
-#include <ibase.h>
|
||||
+#include <firebird/ibase.h>
|
||||
|
||||
#ifdef QT_PLUGIN
|
||||
#define Q_EXPORT_SQLDRIVER_IBASE
|
@ -1,13 +0,0 @@
|
||||
diff --git a/src/corelib/serialization/qxmlstream_p.h b/src/corelib/serialization/qxmlstream_p.h
|
||||
index 4157fbbd..f8b1ede9 100644
|
||||
--- a/src/corelib/serialization/qxmlstream_p.h
|
||||
+++ b/src/corelib/serialization/qxmlstream_p.h
|
||||
@@ -1250,7 +1250,7 @@ bool QXmlStreamReaderPrivate::parse()
|
||||
state_stack[tos] = 0;
|
||||
return true;
|
||||
} else if (act > 0) {
|
||||
- if (++tos == stack_size-1)
|
||||
+ if (++tos >= stack_size-1)
|
||||
reallocateStack();
|
||||
|
||||
Value &val = sym_stack[tos];
|
@ -1,25 +0,0 @@
|
||||
diff --git a/src/plugins/imageformats/gif/qgifhandler.cpp b/src/plugins/imageformats/gif/qgifhandler.cpp
|
||||
index e0f7f44..ebe5964 100644
|
||||
--- a/src/plugins/imageformats/gif/qgifhandler.cpp
|
||||
+++ b/src/plugins/imageformats/gif/qgifhandler.cpp
|
||||
@@ -354,7 +354,8 @@ int QGIFFormat::decode(QImage *image, const uchar *buffer, int length,
|
||||
(*image) = QImage(swidth, sheight, format);
|
||||
bpl = image->bytesPerLine();
|
||||
bits = image->bits();
|
||||
- memset(bits, 0, image->sizeInBytes());
|
||||
+ if (bits)
|
||||
+ memset(bits, 0, image->sizeInBytes());
|
||||
}
|
||||
|
||||
// Check if the previous attempt to create the image failed. If it
|
||||
@@ -415,6 +416,10 @@ int QGIFFormat::decode(QImage *image, const uchar *buffer, int length,
|
||||
backingstore = QImage(qMax(backingstore.width(), w),
|
||||
qMax(backingstore.height(), h),
|
||||
QImage::Format_RGB32);
|
||||
+ if (backingstore.isNull()) {
|
||||
+ state = Error;
|
||||
+ return -1;
|
||||
+ }
|
||||
memset(backingstore.bits(), 0, backingstore.sizeInBytes());
|
||||
}
|
||||
const int dest_bpl = backingstore.bytesPerLine();
|
@ -1,13 +0,0 @@
|
||||
diff --git a/src/gui/image/qbmphandler.cpp b/src/gui/image/qbmphandler.cpp
|
||||
index 587f375c..5dff4ab0 100644
|
||||
--- a/src/gui/image/qbmphandler.cpp
|
||||
+++ b/src/gui/image/qbmphandler.cpp
|
||||
@@ -188,6 +188,8 @@ static bool read_dib_infoheader(QDataStream &s, BMP_INFOHDR &bi)
|
||||
if (!(comp == BMP_RGB || (nbits == 4 && comp == BMP_RLE4) ||
|
||||
(nbits == 8 && comp == BMP_RLE8) || ((nbits == 16 || nbits == 32) && comp == BMP_BITFIELDS)))
|
||||
return false; // weird compression type
|
||||
+ if (bi.biWidth < 0 || quint64(bi.biWidth) * qAbs(bi.biHeight) > 16384 * 16384)
|
||||
+ return false;
|
||||
|
||||
return true;
|
||||
}
|
@ -1,73 +0,0 @@
|
||||
diff --git a/src/corelib/configure.json b/src/corelib/configure.json
|
||||
index dfb575da..e87c3fd4 100644
|
||||
--- a/src/corelib/configure.json
|
||||
+++ b/src/corelib/configure.json
|
||||
@@ -508,7 +508,7 @@
|
||||
},
|
||||
"getentropy": {
|
||||
"label": "getentropy()",
|
||||
- "condition": "config.unix && tests.getentropy",
|
||||
+ "disable": "true",
|
||||
"output": [ "privateFeature" ]
|
||||
},
|
||||
"glib": {
|
||||
@@ -636,7 +636,7 @@
|
||||
},
|
||||
"renameat2": {
|
||||
"label": "renameat2()",
|
||||
- "condition": "config.linux && tests.renameat2",
|
||||
+ "disable": "true",
|
||||
"output": [ "privateFeature" ]
|
||||
},
|
||||
"slog2": {
|
||||
@@ -646,7 +646,7 @@
|
||||
},
|
||||
"statx": {
|
||||
"label": "statx() in libc",
|
||||
- "condition": "config.linux && tests.statx",
|
||||
+ "disable": "true",
|
||||
"output": [ "privateFeature" ]
|
||||
},
|
||||
"syslog": {
|
||||
diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp
|
||||
index be6ce48d..5b337c0f 100644
|
||||
--- a/src/corelib/io/qfilesystemengine_unix.cpp
|
||||
+++ b/src/corelib/io/qfilesystemengine_unix.cpp
|
||||
@@ -50,9 +50,10 @@
|
||||
#include <pwd.h>
|
||||
#include <stdlib.h> // for realpath()
|
||||
#include <sys/types.h>
|
||||
-#include <sys/stat.h>
|
||||
#include <unistd.h>
|
||||
+#define renameat2 renameat2_unused
|
||||
#include <stdio.h>
|
||||
+#undef renameat2
|
||||
#include <errno.h>
|
||||
|
||||
#if QT_HAS_INCLUDE(<paths.h>)
|
||||
@@ -91,7 +92,9 @@ extern "C" NSString *NSTemporaryDirectory();
|
||||
# include <sys/syscall.h>
|
||||
# include <sys/sendfile.h>
|
||||
# include <linux/fs.h>
|
||||
-# include <linux/stat.h>
|
||||
+#define statx statx_unused
|
||||
+# include <sys/stat.h>
|
||||
+#undef statx
|
||||
|
||||
// in case linux/fs.h is too old and doesn't define it:
|
||||
#ifndef FICLONE
|
||||
@@ -107,12 +110,12 @@ extern "C" NSString *NSTemporaryDirectory();
|
||||
# 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)
|
||||
+extern 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)
|
||||
-static int statx(int dirfd, const char *pathname, int flag, unsigned mask, struct statx *statxbuf)
|
||||
+extern 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
|
@ -1,16 +0,0 @@
|
||||
diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
|
||||
index 2ed708e0..5d0282a7 100644
|
||||
--- a/mkspecs/features/create_cmake.prf
|
||||
+++ b/mkspecs/features/create_cmake.prf
|
||||
@@ -28,11 +28,6 @@ CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake
|
||||
|
||||
CMAKE_MODULE_NAME = $$cmakeModuleName($${MODULE})
|
||||
|
||||
-!generated_privates {
|
||||
- isEmpty(SYNCQT.INJECTED_PRIVATE_HEADER_FILES):isEmpty(SYNCQT.PRIVATE_HEADER_FILES): \
|
||||
- CMAKE_NO_PRIVATE_INCLUDES = true
|
||||
-}
|
||||
-
|
||||
split_incpath {
|
||||
CMAKE_ADD_SOURCE_INCLUDE_DIRS = true
|
||||
CMAKE_SOURCE_INCLUDES = \
|
@ -1,5 +1,5 @@
|
||||
diff --git a/mkspecs/features/uikit/devices.py b/mkspecs/features/uikit/devices.py
|
||||
index 0443e838..3c6ededb 100755
|
||||
index 8cdcb370..b0c927ea 100755
|
||||
--- a/mkspecs/features/uikit/devices.py
|
||||
+++ b/mkspecs/features/uikit/devices.py
|
||||
@@ -1,4 +1,4 @@
|
||||
@ -8,3 +8,23 @@ index 0443e838..3c6ededb 100755
|
||||
|
||||
#############################################################################
|
||||
##
|
||||
diff --git a/tests/manual/xembed-raster/gtk-embedder.py b/tests/manual/xembed-raster/gtk-embedder.py
|
||||
index 5c37fd44..86ffa9fd 100755
|
||||
--- a/tests/manual/xembed-raster/gtk-embedder.py
|
||||
+++ b/tests/manual/xembed-raster/gtk-embedder.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/python
|
||||
+#!/usr/bin/python3
|
||||
#############################################################################
|
||||
##
|
||||
## Copyright (C) 2013 Canonical Ltd.
|
||||
diff --git a/tests/manual/xembed-widgets/gtk-embedder.py b/tests/manual/xembed-widgets/gtk-embedder.py
|
||||
index 2a7c92db..93135b14 100755
|
||||
--- a/tests/manual/xembed-widgets/gtk-embedder.py
|
||||
+++ b/tests/manual/xembed-widgets/gtk-embedder.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/python
|
||||
+#!/usr/bin/python3
|
||||
#############################################################################
|
||||
##
|
||||
## Copyright (C) 2013 Canonical Ltd.
|
||||
|
@ -0,0 +1,14 @@
|
||||
diff -up qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in.foo qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in
|
||||
--- qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in.foo 2019-04-30 15:18:24.886346423 -0500
|
||||
+++ qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in 2019-04-30 15:19:48.303873296 -0500
|
||||
@@ -66,8 +66,10 @@ unset(_GL_INCDIRS)
|
||||
# Don\'t check for existence of the "_qt5gui_OPENGL_INCLUDE_DIR" because it is
|
||||
# optional.
|
||||
|
||||
+if (NOT ${_qt5gui_OPENGL_INCLUDE_DIR} STREQUAL "/usr/include")
|
||||
list(APPEND Qt5Gui_INCLUDE_DIRS ${_qt5gui_OPENGL_INCLUDE_DIR})
|
||||
set_property(TARGET Qt5::Gui APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${_qt5gui_OPENGL_INCLUDE_DIR})
|
||||
+endif()
|
||||
|
||||
unset(_qt5gui_OPENGL_INCLUDE_DIR CACHE)
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff -up qtbase-opensource-src-5.9.4/src/corelib/mimetypes/qmimetype.cpp.fdo101667 qtbase-opensource-src-5.9.4/src/corelib/mimetypes/qmimetype.cpp
|
||||
--- qtbase-opensource-src-5.9.4/src/corelib/mimetypes/qmimetype.cpp.fdo101667 2018-01-16 00:53:43.000000000 -0600
|
||||
+++ qtbase-opensource-src-5.9.4/src/corelib/mimetypes/qmimetype.cpp 2018-01-28 07:18:09.502534397 -0600
|
||||
@@ -418,6 +418,8 @@ QStringList QMimeType::suffixes() const
|
||||
*/
|
||||
QString QMimeType::preferredSuffix() const
|
||||
{
|
||||
+ if (isDefault()) // workaround for unwanted *.bin suffix for octet-stream, https://bugs.freedesktop.org/show_bug.cgi?id=101667, fixed upstream in 1.10
|
||||
+ return QString();
|
||||
const QStringList suffixList = suffixes();
|
||||
return suffixList.isEmpty() ? QString() : suffixList.at(0);
|
||||
}
|
@ -1,13 +1,12 @@
|
||||
diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp
|
||||
index ec0f9ba..6d0d7a6 100644
|
||||
--- a/src/plugins/platforms/xcb/qxcbscreen.cpp
|
||||
+++ b/src/plugins/platforms/xcb/qxcbscreen.cpp
|
||||
@@ -747,7 +747,7 @@ void QXcbScreen::updateGeometry(const QRect &geometry, uint8_t rotation)
|
||||
m_sizeMillimeters = sizeInMillimeters(geometry.size(), virtualDpi());
|
||||
diff -up qtbase-everywhere-src-5.12.1/src/plugins/platforms/xcb/qxcbscreen.cpp.hidpi_scale_at_192 qtbase-everywhere-src-5.12.1/src/plugins/platforms/xcb/qxcbscreen.cpp
|
||||
--- qtbase-everywhere-src-5.12.1/src/plugins/platforms/xcb/qxcbscreen.cpp.hidpi_scale_at_192 2019-02-03 13:21:27.866906481 -0600
|
||||
+++ qtbase-everywhere-src-5.12.1/src/plugins/platforms/xcb/qxcbscreen.cpp 2019-02-03 13:23:47.554767565 -0600
|
||||
@@ -744,7 +744,7 @@ void QXcbScreen::updateGeometry(const QR
|
||||
// Use 128 as a reference DPI on small screens. This favors "small UI" over "large UI".
|
||||
qreal referenceDpi = physicalSize().width() <= 320 ? 128 : 96;
|
||||
|
||||
qreal dpi = geometry.width() / physicalSize().width() * qreal(25.4);
|
||||
- m_pixelDensity = qMax(1, qRound(dpi/96));
|
||||
+ m_pixelDensity = qMax(1, (int) (dpi/96)); // instead of rounding at 1.5, round at 2.0 (same as GNOME)
|
||||
- m_pixelDensity = qMax(1, qRound(dpi/referenceDpi));
|
||||
+ m_pixelDensity = qMax(1, (int) (dpi/referenceDpi)); //instead of rounding at 1.5, round at 2.0 (same as GNOME)
|
||||
m_geometry = geometry;
|
||||
m_availableGeometry = geometry & m_virtualDesktop->workArea();
|
||||
QWindowSystemInterface::handleScreenGeometryChange(QPlatformScreen::screen(), m_geometry, m_availableGeometry);
|
||||
|
@ -8,6 +8,10 @@
|
||||
%endif
|
||||
%global openssl -openssl-linked
|
||||
|
||||
%global no_feature_statx -no-feature-statx
|
||||
%global no_feature_renameat2 -no-feature-renameat2
|
||||
%global no_feature_getentropy -no-feature-getentropy
|
||||
|
||||
# support qtchooser (adds qtchooser .conf file)
|
||||
%global qtchooser 1
|
||||
%if 0%{?qtchooser}
|
||||
@ -37,8 +41,8 @@ BuildRequires: pkgconfig(libsystemd)
|
||||
|
||||
Name: qt5-qtbase
|
||||
Summary: Qt5 - QtBase components
|
||||
Version: 5.11.1
|
||||
Release: 7%{?dist}
|
||||
Version: 5.12.5
|
||||
Release: 4%{?dist}
|
||||
|
||||
# See LGPL_EXCEPTIONS.txt, for exception details
|
||||
License: LGPLv2 with exceptions or GPLv3 with exceptions
|
||||
@ -87,12 +91,9 @@ Patch51: qtbase-hidpi_scale_at_192.patch
|
||||
# 2. Workaround sysmacros.h (pre)defining major/minor a breaking stuff
|
||||
Patch52: qtbase-opensource-src-5.7.1-moc_macros.patch
|
||||
|
||||
# QMimeType: remove unwanted *.bin as preferredSuffix for octet-stream
|
||||
# This leads to an automatically appended .bin when saving a file.
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=101667
|
||||
# https://bugs.kde.org/382437
|
||||
# Fixed upstream in shared-mime-info 1.10
|
||||
Patch53: qtbase-fdo101667.patch
|
||||
# CMake generates wrong -isystem /usr/include compilations flags with Qt5::Gui
|
||||
# https://bugzilla.redhat.com/1704474
|
||||
Patch53: qtbase-everywhere-src-5.12.1-qt5gui_cmake_isystem_includes.patch
|
||||
|
||||
# respect QMAKE_LFLAGS_RELEASE when building qmake
|
||||
Patch54: qtbase-qmake_LFLAGS.patch
|
||||
@ -101,7 +102,7 @@ Patch54: qtbase-qmake_LFLAGS.patch
|
||||
Patch61: qt5-qtbase-cxxflag.patch
|
||||
|
||||
# support firebird version 3.x
|
||||
Patch64: qt5-qtbase-5.9.1-firebird.patch
|
||||
Patch64: qt5-qtbase-5.12.1-firebird.patch
|
||||
|
||||
# fix for new mariadb
|
||||
Patch65: qtbase-opensource-src-5.9.0-mysql.patch
|
||||
@ -113,18 +114,6 @@ Patch67: https://bugreports.qt.io/secure/attachment/66353/xcberror_filter.patch
|
||||
|
||||
Patch68: qtbase-ambiguous-python-shebang.patch
|
||||
|
||||
Patch69: qt5-qtbase-glibc.patch
|
||||
|
||||
# Bug 1667860 - CVE-2018-19870 qt5-qtbase: QImage allocation failure in qgifhandler
|
||||
Patch70: qt5-qtbase-CVE-2018-19870.patch
|
||||
|
||||
# Bug 1667858 - CVE-2018-15518 qt5-qtbase: Double free in QXmlStreamReader
|
||||
Patch71: qt5-qtbase-CVE-2018-15518.patch
|
||||
|
||||
# Bug 1667859 - CVE-2018-19873 qt5-qtbase: QBmpHandler segmentation fault on malformed BMP file
|
||||
Patch72: qt5-qtbase-CVE-2018-19873.patch
|
||||
|
||||
Patch100: qtbase-always-generate-private-includes.patch
|
||||
Patch101: qtbase-allow-dbus-not-running-during-build.patch
|
||||
|
||||
# Do not check any files in %%{_qt5_plugindir}/platformthemes/ for requires.
|
||||
@ -170,7 +159,6 @@ BuildRequires: openssl-devel%{?openssl11: >= 1.1}
|
||||
%endif
|
||||
BuildRequires: pkgconfig(libpulse) pkgconfig(libpulse-mainloop-glib)
|
||||
%if 0%{?fedora}
|
||||
%global xkbcommon -system-xkbcommon
|
||||
BuildRequires: pkgconfig(libinput)
|
||||
BuildRequires: pkgconfig(xcb-xkb) >= 1.10
|
||||
BuildRequires: pkgconfig(xkbcommon) >= 0.4.1
|
||||
@ -180,13 +168,12 @@ BuildRequires: pkgconfig(xkbcommon-x11) >= 0.4.1
|
||||
%if 0%{?rhel} == 6
|
||||
%global xcb -qt-xcb
|
||||
%endif
|
||||
%global xkbcommon -qt-xkbcommon
|
||||
Provides: bundled(libxkbcommon) = 0.4.1
|
||||
%endif
|
||||
BuildRequires: pkgconfig(xkeyboard-config)
|
||||
%if 0%{?fedora} || 0%{?rhel} > 6
|
||||
%global egl 1
|
||||
BuildRequires: pkgconfig(egl)
|
||||
BuildRequires: libEGL-devel
|
||||
BuildRequires: pkgconfig(gbm)
|
||||
BuildRequires: pkgconfig(glesv2)
|
||||
%global sqlite -system-sqlite
|
||||
@ -207,6 +194,7 @@ BuildRequires: libicu-devel
|
||||
BuildRequires: pkgconfig(xcb) pkgconfig(xcb-glx) pkgconfig(xcb-icccm) pkgconfig(xcb-image) pkgconfig(xcb-keysyms) pkgconfig(xcb-renderutil)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
BuildRequires: perl-generators
|
||||
BuildRequires: python3
|
||||
BuildRequires: qt5-rpm-macros
|
||||
|
||||
%if 0%{?build_tests}
|
||||
@ -255,7 +243,6 @@ BuildArch: noarch
|
||||
|
||||
%package devel
|
||||
Summary: Development files for %{name}
|
||||
Provides: %{name}-private-devel = %{version}-%{release}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Requires: %{name}-gui%{?_isa}
|
||||
%if 0%{?egl}
|
||||
@ -269,6 +256,16 @@ Requires: clang >= 3.7.0
|
||||
%description devel
|
||||
%{summary}.
|
||||
|
||||
%package private-devel
|
||||
Summary: Development files for %{name} private APIs
|
||||
# upgrade path, when private-devel was introduced
|
||||
Obsoletes: %{name}-devel < 5.12.1-3
|
||||
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
|
||||
# QtPrintSupport/private requires cups/ppd.h
|
||||
Requires: cups-devel
|
||||
%description private-devel
|
||||
%{summary}.
|
||||
|
||||
%package examples
|
||||
Summary: Programming examples for %{name}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
@ -328,7 +325,7 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%package postgresql
|
||||
Summary: PostgreSQL driver for Qt5's SQL classes
|
||||
BuildRequires: postgresql-devel
|
||||
BuildRequires: libpq-devel
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description postgresql
|
||||
%{summary}.
|
||||
@ -363,12 +360,13 @@ Qt5 libraries used for drawing widgets and OpenGL items.
|
||||
|
||||
## upstream fixes
|
||||
%patch4 -p1 -b .QTBUG-35459
|
||||
%patch8 -p1 -b .tell-the-truth-about-private-api
|
||||
# omit '-b .tell-the-truth-about-private-api' so it doesn't end up in installed files -- rdieter
|
||||
%patch8 -p1
|
||||
|
||||
%patch50 -p1 -b .QT_VERSION_CHECK
|
||||
%patch51 -p1 -b .hidpi_scale_at_192
|
||||
%patch52 -p1 -b .moc_macros
|
||||
# %patch53 -p1 -b .fdo101667
|
||||
%patch53 -p1 -b .qt5gui_cmake_isystem_includes
|
||||
%patch54 -p1 -b .qmake_LFLAGS
|
||||
%patch61 -p1 -b .qt5-qtbase-cxxflag
|
||||
%patch64 -p1 -b .firebird
|
||||
@ -377,17 +375,10 @@ Qt5 libraries used for drawing widgets and OpenGL items.
|
||||
%endif
|
||||
# FIXME/REBASE
|
||||
#patch67 -p1 -b .xcberror_filter
|
||||
%patch68 -p1 -b .ambiguous-python-shebang
|
||||
%patch69 -p1 -b .qtbase-glibc
|
||||
%patch70 -p1 -b .CVE-2018-19870
|
||||
%patch71 -p1 -b .CVE-2018-15518
|
||||
%patch72 -p1 -b .CVE-2018-19873
|
||||
%patch68 -p1
|
||||
|
||||
%patch100 -p1 -b .always-generate-private-includes
|
||||
%patch101 -p1 -b .qtbase-allow-dbus-not-running-during-build
|
||||
|
||||
rm -fv mkspecs/features/uikit/devices.py.ambiguous-python-shebang
|
||||
|
||||
# move some bundled libs to ensure they're not accidentally used
|
||||
pushd src/3rdparty
|
||||
mkdir UNUSED
|
||||
@ -473,6 +464,9 @@ export MAKEFLAGS="%{?_smp_mflags}"
|
||||
-system-zlib \
|
||||
%{?use_gold_linker} \
|
||||
-no-directfb \
|
||||
%{?no_feature_renameat2} \
|
||||
%{?no_feature_statx} \
|
||||
%{?no_feature_getentropy} \
|
||||
QMAKE_CFLAGS_RELEASE="${CFLAGS:-$RPM_OPT_FLAGS}" \
|
||||
QMAKE_CXXFLAGS_RELEASE="${CXXFLAGS:-$RPM_OPT_FLAGS}" \
|
||||
QMAKE_LFLAGS_RELEASE="${LDFLAGS:-$RPM_LD_FLAGS}"
|
||||
@ -496,9 +490,20 @@ make install INSTALL_ROOT=%{buildroot}
|
||||
|
||||
%if 0%{?build_tests}
|
||||
# Install tests for gating
|
||||
pushd tests
|
||||
make install INSTALL_ROOT=%{buildroot}
|
||||
popd
|
||||
mkdir -p %{buildroot}%{_qt5_libdir}/qt5
|
||||
find ./tests -not -path '*/\.*' -type d | while read LINE
|
||||
do
|
||||
mkdir -p "%{buildroot}%{_qt5_libdir}/qt5/$LINE"
|
||||
done
|
||||
find ./tests -not -path '*/\.*' -not -name '*.h' -not -name '*.cpp' -not -name '*.pro' -not -name 'uic_wrapper.sh' -not -name 'Makefile' -type f | while read LINE
|
||||
do
|
||||
cp -r --parents "$LINE" %{buildroot}%{_qt5_libdir}/qt5/
|
||||
done
|
||||
|
||||
# Remove tests which will produce error when checking rpath
|
||||
rm -rf %{buildroot}%{_qt5_libdir}/qt5/tests/auto/corelib/plugin/qpluginloader/elftest
|
||||
# Remove android stuff which will just add us dependencies on Perl modules
|
||||
rm -rf %{buildroot}%{_qt5_libdir}/qt5/tests/auto/android
|
||||
%endif
|
||||
|
||||
install -m644 -p -D %{SOURCE1} %{buildroot}%{_qt5_datadir}/qtlogging.ini
|
||||
@ -606,6 +611,9 @@ mkdir -p %{buildroot}%{_qt5_headerdir}/QtXcb
|
||||
install -m 644 src/plugins/platforms/xcb/*.h %{buildroot}%{_qt5_headerdir}/QtXcb/
|
||||
|
||||
%check
|
||||
# verify Qt5.pc
|
||||
export PKG_CONFIG_PATH=%{buildroot}%{_libdir}/pkgconfig
|
||||
test "$(pkg-config --modversion Qt5)" = "%{version}"
|
||||
%if 0%{?tests}
|
||||
## see tests/README for expected environment (running a plasma session essentially)
|
||||
## we are not quite there yet
|
||||
@ -666,7 +674,9 @@ fi
|
||||
%endif
|
||||
|
||||
%files
|
||||
%license LICENSE.LGPL* LGPL_EXCEPTION.txt LICENSE.FDL
|
||||
%license LICENSE.FDL
|
||||
%license LICENSE.GPL*
|
||||
%license LICENSE.LGPL*
|
||||
%if 0%{?qtchooser}
|
||||
%dir %{_sysconfdir}/xdg/qtchooser
|
||||
# not editable config files, so not using %%config here
|
||||
@ -699,7 +709,10 @@ fi
|
||||
%{_qt5_docdir}/global/
|
||||
%{_qt5_importdir}/
|
||||
%{_qt5_translationdir}/
|
||||
%dir %{_qt5_prefix}/
|
||||
%if "%{_qt5_prefix}" != "%{_prefix}"
|
||||
%dir %{_qt5_prefix}/
|
||||
%endif
|
||||
%dir %{_qt5_archdatadir}/
|
||||
%dir %{_qt5_datadir}/
|
||||
%{_qt5_datadir}/qtlogging.ini
|
||||
%dir %{_qt5_libexecdir}/
|
||||
@ -833,6 +846,14 @@ fi
|
||||
%{_qt5_libdir}/libQt5EglFsKmsSupport.so
|
||||
%endif
|
||||
|
||||
## private-devel globs
|
||||
# keep mkspecs/modules stuff in -devel for now, https://bugzilla.redhat.com/show_bug.cgi?id=1705280
|
||||
%{_qt5_archdatadir}/mkspecs/modules/qt_lib_*_private.pri
|
||||
%exclude %{_qt5_headerdir}/*/%{version}/*/private/
|
||||
|
||||
%files private-devel
|
||||
%{_qt5_headerdir}/*/%{version}/*/private/
|
||||
#{_qt5_archdatadir}/mkspecs/modules/qt_lib_*_private.pri
|
||||
|
||||
%files static
|
||||
%{_qt5_libdir}/libQt5Bootstrap.*a
|
||||
@ -917,8 +938,7 @@ fi
|
||||
%{_qt5_libdir}/cmake/Qt5Sql/Qt5Sql_QTDSDriverPlugin.cmake
|
||||
%endif
|
||||
|
||||
%post gui -p /sbin/ldconfig
|
||||
%postun gui -p /sbin/ldconfig
|
||||
%ldconfig_scriptlets gui
|
||||
|
||||
%files gui
|
||||
%dir %{_sysconfdir}/X11/xinit
|
||||
@ -984,15 +1004,27 @@ fi
|
||||
%{_qt5_libdir}/cmake/Qt5Gui/Qt5Gui_QXcbIntegrationPlugin.cmake
|
||||
%{_qt5_plugindir}/xcbglintegrations/libqxcb-glx-integration.so
|
||||
%{_qt5_libdir}/cmake/Qt5Gui/Qt5Gui_QXcbGlxIntegrationPlugin.cmake
|
||||
%{_qt5_plugindir}/platformthemes/libqflatpak.so
|
||||
%{_qt5_plugindir}/platformthemes/libqxdgdesktopportal.so
|
||||
%{_qt5_plugindir}/platformthemes/libqgtk3.so
|
||||
%{_qt5_libdir}/cmake/Qt5Gui/Qt5Gui_QFlatpakThemePlugin.cmake
|
||||
%{_qt5_libdir}/cmake/Qt5Gui/Qt5Gui_QXdgDesktopPortalThemePlugin.cmake
|
||||
%{_qt5_libdir}/cmake/Qt5Gui/Qt5Gui_QGtk3ThemePlugin.cmake
|
||||
%{_qt5_plugindir}/printsupport/libcupsprintersupport.so
|
||||
%{_qt5_libdir}/cmake/Qt5PrintSupport/Qt5PrintSupport_QCupsPrinterSupportPlugin.cmake
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Nov 27 2019 Jan Grulich <jgrulich@redhat.com> - 5.12-5-4
|
||||
- Fix build on RHEL 7 kernel
|
||||
Resolves: bz#1733135
|
||||
|
||||
* Thu Nov 07 2019 Jan Grulich <jgrulich@redhat.com> - 5.12-5-2
|
||||
- Remove Android specific test to avoid unnecessary dependencies
|
||||
Resolves: bz#1733135
|
||||
|
||||
* Tue Oct 29 2019 Jan Grulich <jgrulich@redhat.com> - 5.12-5-1
|
||||
- 5.12.5 + sync with Fedora
|
||||
Resolves: bz#1733135
|
||||
|
||||
* Wed May 22 2019 Jan Grulich <jgrulich@redhat.com> - 5.11-1-7
|
||||
- Move libQt5EglFSDeviceIntegration lib out of the -devel subpkg
|
||||
Resolves: bz#1692970
|
||||
|
Loading…
Reference in New Issue
Block a user