Compare commits
40 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
f70a96d940 | ||
|
fd2f8eff37 | ||
|
b8e06f9638 | ||
|
b58bf0b666 | ||
|
f48052b0ce | ||
|
ec348a04e3 | ||
|
14eda7769c | ||
|
3f74f2b68e | ||
|
d227b0946c | ||
|
38aa1e61dc | ||
|
fb8373871e | ||
|
544460f7bb | ||
|
e92a088d38 | ||
|
b533671ab3 | ||
|
c0e685509d | ||
|
110ec9baed | ||
|
39f6a0510d | ||
|
0e7ef982e3 | ||
|
d9c51aff85 | ||
|
6c8e045afd | ||
|
b30349c48a | ||
|
4b6561fca0 | ||
|
b8994e8b84 | ||
|
a83f4bf68d | ||
|
0cf76c6298 | ||
|
09c3d017c6 | ||
|
e6f846cdd9 | ||
|
0d8e35fac4 | ||
|
a8615afde7 | ||
|
482033860c | ||
|
c3c62d0de9 | ||
|
eecb688eef | ||
|
29b27d60a9 | ||
|
bf8d107133 | ||
|
444964f7dc | ||
|
8a2ee29496 | ||
|
393926b8c7 | ||
|
9387c747ab | ||
|
86b3c40394 | ||
|
3d68c8f028 |
14
qt-CVE-2020-17507.patch
Normal file
14
qt-CVE-2020-17507.patch
Normal file
@ -0,0 +1,14 @@
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/src/gui/image/qxbmhandler.cpp.me qt-everywhere-opensource-src-4.8.7/src/gui/image/qxbmhandler.cpp
|
||||
--- qt-everywhere-opensource-src-4.8.7/src/gui/image/qxbmhandler.cpp.me 2020-08-13 11:20:45.943402169 +0200
|
||||
+++ qt-everywhere-opensource-src-4.8.7/src/gui/image/qxbmhandler.cpp 2020-08-13 11:21:26.025976881 +0200
|
||||
@@ -154,7 +154,9 @@ static bool read_xbm_body(QIODevice *dev
|
||||
w = (w+7)/8; // byte width
|
||||
|
||||
while (y < h) { // for all encoded bytes...
|
||||
- if (p) { // p = "0x.."
|
||||
+ if (p && p < (buf + readBytes - 3)) { // p = "0x.."
|
||||
+ if (!isxdigit(p[2]) || !isxdigit(p[3]))
|
||||
+ return false;
|
||||
*b++ = hex2byte(p+2);
|
||||
p += 2;
|
||||
if (++x == w && ++y < h) {
|
13
qt-everywhere-opensource-src-4.8.5-CVE-2020-24741.patch
Normal file
13
qt-everywhere-opensource-src-4.8.5-CVE-2020-24741.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/src/corelib/plugin/qlibrary_unix.cpp b/src/corelib/plugin/qlibrary_unix.cpp
|
||||
index f0de1010d7b..135b82cd378 100644
|
||||
--- a/src/corelib/plugin/qlibrary_unix.cpp
|
||||
+++ b/src/corelib/plugin/qlibrary_unix.cpp
|
||||
@@ -218,6 +218,8 @@ bool QLibraryPrivate::load_sys()
|
||||
for(int suffix = 0; retry && !pHnd && suffix < suffixes.size(); suffix++) {
|
||||
if (!prefixes.at(prefix).isEmpty() && name.startsWith(prefixes.at(prefix)))
|
||||
continue;
|
||||
+ if (path.isEmpty() && prefixes.at(prefix).contains(QLatin1Char('/')))
|
||||
+ continue;
|
||||
if (!suffixes.at(suffix).isEmpty() && name.endsWith(suffixes.at(suffix)))
|
||||
continue;
|
||||
if (loadHints & QLibrary::LoadArchiveMemberHint) {
|
@ -10,3 +10,128 @@ diff -up qt-everywhere-opensource-src-4.8.7/config.tests/unix/alsa/alsatest.cpp.
|
||||
#error "Alsa version found too old, require >= 1.0.10"
|
||||
#endif
|
||||
|
||||
diff --git a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
|
||||
index 973cbab..0b27e9d 100644
|
||||
--- a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
|
||||
+++ b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
|
||||
@@ -63,7 +63,7 @@ QAudioDeviceInfoInternal::QAudioDeviceInfoInternal(QByteArray dev, QAudio::Mode
|
||||
device = QLatin1String(dev);
|
||||
this->mode = mode;
|
||||
|
||||
-#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
checkSurround();
|
||||
#endif
|
||||
}
|
||||
@@ -159,13 +159,13 @@ bool QAudioDeviceInfoInternal::open()
|
||||
QList<QByteArray> devices = availableDevices(mode);
|
||||
|
||||
if(dev.compare(QLatin1String("default")) == 0) {
|
||||
-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
dev = QLatin1String(devices.first().constData());
|
||||
#else
|
||||
dev = QLatin1String("hw:0,0");
|
||||
#endif
|
||||
} else {
|
||||
-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
dev = device;
|
||||
#else
|
||||
int idx = 0;
|
||||
@@ -212,13 +212,13 @@ bool QAudioDeviceInfoInternal::testSettings(const QAudioFormat& format) const
|
||||
QList<QByteArray> devices = QAudioDeviceInfoInternal::availableDevices(QAudio::AudioOutput);
|
||||
|
||||
if(dev.compare(QLatin1String("default")) == 0) {
|
||||
-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
dev = QLatin1String(devices.first().constData());
|
||||
#else
|
||||
dev = QLatin1String("hw:0,0");
|
||||
#endif
|
||||
} else {
|
||||
-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
dev = device;
|
||||
#else
|
||||
int idx = 0;
|
||||
@@ -396,7 +396,7 @@ void QAudioDeviceInfoInternal::updateLists()
|
||||
}
|
||||
channelz.append(1);
|
||||
channelz.append(2);
|
||||
-#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
if (surround40) channelz.append(4);
|
||||
if (surround51) channelz.append(6);
|
||||
if (surround71) channelz.append(8);
|
||||
@@ -419,7 +419,7 @@ QList<QByteArray> QAudioDeviceInfoInternal::availableDevices(QAudio::Mode mode)
|
||||
QList<QByteArray> devices;
|
||||
QByteArray filter;
|
||||
|
||||
-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
// Create a list of all current audio devices that support mode
|
||||
void **hints, **n;
|
||||
char *name, *descr, *io;
|
||||
@@ -498,7 +498,7 @@ QByteArray QAudioDeviceInfoInternal::defaultOutputDevice()
|
||||
return devices.first();
|
||||
}
|
||||
|
||||
-#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
void QAudioDeviceInfoInternal::checkSurround()
|
||||
{
|
||||
QList<QByteArray> devices;
|
||||
diff --git a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h
|
||||
index 96febf4..714bf60 100644
|
||||
--- a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h
|
||||
+++ b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h
|
||||
@@ -98,7 +98,7 @@ private:
|
||||
bool open();
|
||||
void close();
|
||||
|
||||
-#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
void checkSurround();
|
||||
bool surround40;
|
||||
bool surround51;
|
||||
diff --git a/src/multimedia/audio/qaudioinput_alsa_p.cpp b/src/multimedia/audio/qaudioinput_alsa_p.cpp
|
||||
index 339fd9f..abfa4a1 100644
|
||||
--- a/src/multimedia/audio/qaudioinput_alsa_p.cpp
|
||||
+++ b/src/multimedia/audio/qaudioinput_alsa_p.cpp
|
||||
@@ -284,13 +284,13 @@ bool QAudioInputPrivate::open()
|
||||
QString dev = QString(QLatin1String(m_device.constData()));
|
||||
QList<QByteArray> devices = QAudioDeviceInfoInternal::availableDevices(QAudio::AudioInput);
|
||||
if(dev.compare(QLatin1String("default")) == 0) {
|
||||
-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
dev = QLatin1String(devices.first());
|
||||
#else
|
||||
dev = QLatin1String("hw:0,0");
|
||||
#endif
|
||||
} else {
|
||||
-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
dev = QLatin1String(m_device);
|
||||
#else
|
||||
int idx = 0;
|
||||
diff --git a/src/multimedia/audio/qaudiooutput_alsa_p.cpp b/src/multimedia/audio/qaudiooutput_alsa_p.cpp
|
||||
index bf85de5..c29a89f 100644
|
||||
--- a/src/multimedia/audio/qaudiooutput_alsa_p.cpp
|
||||
+++ b/src/multimedia/audio/qaudiooutput_alsa_p.cpp
|
||||
@@ -299,13 +299,13 @@ bool QAudioOutputPrivate::open()
|
||||
QString dev = QString(QLatin1String(m_device.constData()));
|
||||
QList<QByteArray> devices = QAudioDeviceInfoInternal::availableDevices(QAudio::AudioOutput);
|
||||
if(dev.compare(QLatin1String("default")) == 0) {
|
||||
-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
dev = QLatin1String(devices.first());
|
||||
#else
|
||||
dev = QLatin1String("hw:0,0");
|
||||
#endif
|
||||
} else {
|
||||
-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
|
||||
+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
|
||||
dev = QLatin1String(m_device);
|
||||
#else
|
||||
int idx = 0;
|
||||
|
@ -0,0 +1,40 @@
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/src/svg/qsvghandler.cpp.me qt-everywhere-opensource-src-4.8.7/src/svg/qsvghandler.cpp
|
||||
--- qt-everywhere-opensource-src-4.8.7/src/svg/qsvghandler.cpp.me 2021-03-09 14:23:00.636840796 +0100
|
||||
+++ qt-everywhere-opensource-src-4.8.7/src/svg/qsvghandler.cpp 2021-03-09 21:34:46.240482104 +0100
|
||||
@@ -68,6 +68,7 @@
|
||||
#include "private/qmath_p.h"
|
||||
|
||||
#include "float.h"
|
||||
+#include <cmath>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
@@ -630,15 +631,10 @@ static qreal toDouble(const QChar *&str)
|
||||
if (neg)
|
||||
val = -val;
|
||||
} else {
|
||||
-#if defined(Q_WS_QWS) && !defined(Q_OS_VXWORKS)
|
||||
- if(sizeof(qreal) == sizeof(float))
|
||||
- val = strtof(temp, 0);
|
||||
- else
|
||||
-#endif
|
||||
- {
|
||||
- bool ok = false;
|
||||
- val = qstrtod(temp, 0, &ok);
|
||||
- }
|
||||
+ val = QByteArray::fromRawData(temp, pos).toDouble();
|
||||
+ // Do not tolerate values too wild to be represented normally by floats
|
||||
+ if (std::fpclassify(float(val)) != FP_NORMAL)
|
||||
+ val = 0;
|
||||
}
|
||||
return val;
|
||||
|
||||
@@ -2945,6 +2941,8 @@ static QSvgStyleProperty *createRadialGr
|
||||
ncy = toDouble(cy);
|
||||
if (!r.isEmpty())
|
||||
nr = toDouble(r);
|
||||
+ if (nr < 0.5)
|
||||
+ nr = 0.5;
|
||||
|
||||
qreal nfx = ncx;
|
||||
if (!fx.isEmpty())
|
@ -0,0 +1,12 @@
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/src/gui/image/qppmhandler.cpp.me qt-everywhere-opensource-src-4.8.7/src/gui/image/qppmhandler.cpp
|
||||
--- qt-everywhere-opensource-src-4.8.7/src/gui/image/qppmhandler.cpp.me 2019-03-22 10:22:16.213800109 +0100
|
||||
+++ qt-everywhere-opensource-src-4.8.7/src/gui/image/qppmhandler.cpp 2019-03-22 10:22:40.721890281 +0100
|
||||
@@ -108,7 +108,7 @@ static bool read_pbm_header(QIODevice *d
|
||||
else
|
||||
mcc = read_pbm_int(device); // get max color component
|
||||
|
||||
- if (w <= 0 || w > 32767 || h <= 0 || h > 32767 || mcc <= 0)
|
||||
+ if (w <= 0 || w > 32767 || h <= 0 || h > 32767 || mcc <= 0 || mcc > 0xffff)
|
||||
return false; // weird P.M image
|
||||
|
||||
return true;
|
@ -1,15 +1,3 @@
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.cpp.ibase qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.cpp
|
||||
--- qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.cpp.ibase 2015-05-07 09:14:42.000000000 -0500
|
||||
+++ qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.cpp 2016-11-30 10:55:05.825339674 -0600
|
||||
@@ -39,7 +39,7 @@
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
-#include <ibase.h>
|
||||
+#include <firebird/ibase.h>
|
||||
|
||||
int main(int, char **)
|
||||
{
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.pro.ibase qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.pro
|
||||
--- qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.pro.ibase 2015-05-07 09:14:42.000000000 -0500
|
||||
+++ qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.pro 2016-11-30 10:56:11.017740104 -0600
|
||||
@ -19,18 +7,6 @@ diff -up qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.pro.ib
|
||||
mac:CONFIG -= app_bundle
|
||||
-LIBS += -lgds
|
||||
+LIBS += -lfbclient
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.h.ibase qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.h
|
||||
--- qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.h.ibase 2015-05-07 09:14:48.000000000 -0500
|
||||
+++ qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.h 2016-11-30 10:57:34.516252974 -0600
|
||||
@@ -45,7 +45,7 @@
|
||||
#include <QtSql/qsqlresult.h>
|
||||
#include <QtSql/qsqldriver.h>
|
||||
#include <QtSql/private/qsqlcachedresult_p.h>
|
||||
-#include <ibase.h>
|
||||
+#include <firebird/ibase.h>
|
||||
|
||||
QT_BEGIN_HEADER
|
||||
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.pri.ibase qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.pri
|
||||
--- qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.pri.ibase 2015-05-07 09:14:48.000000000 -0500
|
||||
+++ qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.pri 2016-11-30 10:57:11.783113341 -0600
|
26
qt-everywhere-opensource-src-4.8.7-gcc11.patch
Normal file
26
qt-everywhere-opensource-src-4.8.7-gcc11.patch
Normal file
@ -0,0 +1,26 @@
|
||||
diff --git a/src/3rdparty/webkit/Source/WebCore/html/HTMLImageElement.cpp b/src/3rdparty/webkit/Source/WebCore/html/HTMLImageElement.cpp
|
||||
index d66075e4..b51a27ad 100644
|
||||
--- a/src/3rdparty/webkit/Source/WebCore/html/HTMLImageElement.cpp
|
||||
+++ b/src/3rdparty/webkit/Source/WebCore/html/HTMLImageElement.cpp
|
||||
@@ -74,7 +74,7 @@ PassRefPtr<HTMLImageElement> HTMLImageElement::createForJSConstructor(Document*
|
||||
RefPtr<HTMLImageElement> image = adoptRef(new HTMLImageElement(imgTag, document));
|
||||
if (optionalWidth)
|
||||
image->setWidth(*optionalWidth);
|
||||
- if (optionalHeight > 0)
|
||||
+ if (optionalHeight != 0)
|
||||
image->setHeight(*optionalHeight);
|
||||
return image.release();
|
||||
}
|
||||
diff --git a/tools/linguist/linguist/messagemodel.cpp b/tools/linguist/linguist/messagemodel.cpp
|
||||
index 61c5389f..8d43d14b 100644
|
||||
--- a/tools/linguist/linguist/messagemodel.cpp
|
||||
+++ b/tools/linguist/linguist/messagemodel.cpp
|
||||
@@ -183,7 +183,7 @@ static int calcMergeScore(const DataModel *one, const DataModel *two)
|
||||
if (ContextItem *c = one->findContext(oc->context())) {
|
||||
for (int j = 0; j < oc->messageCount(); ++j) {
|
||||
MessageItem *m = oc->messageItem(j);
|
||||
- if (c->findMessage(m->text(), m->comment()) >= 0)
|
||||
+ if (c->findMessage(m->text(), m->comment()) != 0)
|
||||
++inBoth;
|
||||
}
|
||||
}
|
@ -1,24 +1,3 @@
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/configure.gcc6 qt-everywhere-opensource-src-4.8.7/configure
|
||||
--- qt-everywhere-opensource-src-4.8.7/configure.gcc6 2016-04-15 07:04:19.430268222 -0500
|
||||
+++ qt-everywhere-opensource-src-4.8.7/configure 2016-04-15 07:05:22.157568689 -0500
|
||||
@@ -7744,7 +7744,7 @@ case "$XPLATFORM" in
|
||||
*-g++*)
|
||||
# Check gcc's version
|
||||
case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
|
||||
- 5*|4*|3.4*)
|
||||
+ 8*|7*|6*|5*|4*|3.4*)
|
||||
;;
|
||||
3.3*)
|
||||
canBuildWebKit="no"
|
||||
@@ -8060,7 +8060,7 @@ g++*)
|
||||
3.*)
|
||||
COMPILER_VERSION="3.*"
|
||||
;;
|
||||
- 5*|4.*)
|
||||
+ 8*|7*|6*|5*|4.*)
|
||||
COMPILER_VERSION="4"
|
||||
;;
|
||||
*)
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h.gcc6 qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h
|
||||
--- qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h.gcc6 2015-05-07 09:14:48.000000000 -0500
|
||||
+++ qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h 2016-04-15 07:04:19.431268227 -0500
|
||||
|
43
qt-everywhere-opensource-src-4.8.7-hardcode-buildkey.patch
Normal file
43
qt-everywhere-opensource-src-4.8.7-hardcode-buildkey.patch
Normal file
@ -0,0 +1,43 @@
|
||||
diff -ur qt-everywhere-opensource-src-4.8.7/configure qt-everywhere-opensource-src-4.8.7-hardcode-buildkey/configure
|
||||
--- qt-everywhere-opensource-src-4.8.7/configure 2015-05-07 16:14:56.000000000 +0200
|
||||
+++ qt-everywhere-opensource-src-4.8.7-hardcode-buildkey/configure 2020-08-19 23:43:10.792653485 +0200
|
||||
@@ -7732,18 +7732,6 @@
|
||||
canBuildQtXmlPatterns="no"
|
||||
;;
|
||||
*-g++*)
|
||||
- # Check gcc's version
|
||||
- case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
|
||||
- 5*|4*|3.4*)
|
||||
- ;;
|
||||
- 3.3*)
|
||||
- canBuildWebKit="no"
|
||||
- ;;
|
||||
- *)
|
||||
- canBuildWebKit="no"
|
||||
- canBuildQtXmlPatterns="no"
|
||||
- ;;
|
||||
- esac
|
||||
;;
|
||||
solaris-cc*)
|
||||
# Check the compiler version
|
||||
@@ -8043,19 +8031,7 @@
|
||||
;;
|
||||
esac
|
||||
|
||||
- case "$COMPILER_VERSION" in
|
||||
- 2.95.*)
|
||||
- COMPILER_VERSION="2.95.*"
|
||||
- ;;
|
||||
- 3.*)
|
||||
- COMPILER_VERSION="3.*"
|
||||
- ;;
|
||||
- 5*|4.*)
|
||||
- COMPILER_VERSION="4"
|
||||
- ;;
|
||||
- *)
|
||||
- ;;
|
||||
- esac
|
||||
+ COMPILER_VERSION="4"
|
||||
[ '!' -z "$COMPILER_VERSION" ] && COMPILER="g++-${COMPILER_VERSION}"
|
||||
;;
|
||||
icc*)
|
90
qt-everywhere-opensource-src-4.8.7-openssl3.patch
Normal file
90
qt-everywhere-opensource-src-4.8.7-openssl3.patch
Normal file
@ -0,0 +1,90 @@
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl.cpp.me qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl.cpp
|
||||
--- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl.cpp.me 2021-10-19 15:12:03.727951685 +0200
|
||||
+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl.cpp 2021-10-19 15:18:59.795315141 +0200
|
||||
@@ -273,7 +273,11 @@ init_context:
|
||||
#endif
|
||||
break;
|
||||
case QSsl::SslV3:
|
||||
+#ifndef OPENSSL_NO_SSL3
|
||||
ctx = q_SSL_CTX_new(client ? q_SSLv3_client_method() : q_SSLv3_server_method());
|
||||
+#else
|
||||
+ ctx = 0;
|
||||
+#endif
|
||||
break;
|
||||
case QSsl::SecureProtocols: // SslV2 will be disabled below
|
||||
case QSsl::TlsV1SslV3: // SslV2 will be disabled below
|
||||
diff -up qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp.me qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp
|
||||
--- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp.me 2021-10-12 19:58:01.005913416 +0200
|
||||
+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp 2021-10-19 15:11:32.660331443 +0200
|
||||
@@ -253,7 +253,9 @@ DEFINEFUNC(int, SSL_shutdown, SSL *a, a,
|
||||
#ifndef OPENSSL_NO_SSL2
|
||||
DEFINEFUNC(const SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
#endif
|
||||
+#ifndef OPENSSL_NO_SSL3
|
||||
DEFINEFUNC(const SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
+#endif
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
DEFINEFUNC(const SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
#else
|
||||
@@ -263,7 +265,9 @@ DEFINEFUNC(const SSL_METHOD *, TLSv1_cli
|
||||
#ifndef OPENSSL_NO_SSL2
|
||||
DEFINEFUNC(const SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
#endif
|
||||
+#ifndef OPENSSL_NO_SSL3
|
||||
DEFINEFUNC(const SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
+#endif
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
DEFINEFUNC(const SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
#else
|
||||
@@ -272,11 +276,15 @@ DEFINEFUNC(const SSL_METHOD *, TLS_serve
|
||||
DEFINEFUNC(const SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
#else
|
||||
DEFINEFUNC(SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
+#ifndef OPENSSL_NO_SSL3
|
||||
DEFINEFUNC(SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
+#endif
|
||||
DEFINEFUNC(SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
DEFINEFUNC(SSL_METHOD *, TLSv1_client_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
DEFINEFUNC(SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
+#ifndef OPENSSL_NO_SSL3
|
||||
DEFINEFUNC(SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
+#endif
|
||||
DEFINEFUNC(SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
DEFINEFUNC(SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
|
||||
#endif
|
||||
@@ -756,11 +764,15 @@ bool q_resolveOpenSslSymbols()
|
||||
RESOLVEFUNC(SSL_shutdown, 173, libs.first )
|
||||
RESOLVEFUNC(SSL_write, 188, libs.first )
|
||||
RESOLVEFUNC(SSLv2_client_method, 192, libs.first )
|
||||
+#ifndef OPENSSL_NO_SSL3
|
||||
RESOLVEFUNC(SSLv3_client_method, 195, libs.first )
|
||||
+#endif
|
||||
RESOLVEFUNC(SSLv23_client_method, 189, libs.first )
|
||||
RESOLVEFUNC(TLSv1_client_method, 198, libs.first )
|
||||
RESOLVEFUNC(SSLv2_server_method, 194, libs.first )
|
||||
+#ifndef OPENSSL_NO_SSL3
|
||||
RESOLVEFUNC(SSLv3_server_method, 197, libs.first )
|
||||
+#endif
|
||||
RESOLVEFUNC(SSLv23_server_method, 191, libs.first )
|
||||
RESOLVEFUNC(TLSv1_server_method, 200, libs.first )
|
||||
RESOLVEFUNC(SSL_CTX_load_verify_locations, 34, libs.first )
|
||||
@@ -927,7 +939,9 @@ bool q_resolveOpenSslSymbols()
|
||||
#ifndef OPENSSL_NO_SSL2
|
||||
RESOLVEFUNC(SSLv2_client_method)
|
||||
#endif
|
||||
+#ifndef OPENSSL_NO_SSL3
|
||||
RESOLVEFUNC(SSLv3_client_method)
|
||||
+#endif
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
RESOLVEFUNC(SSLv23_client_method)
|
||||
#else
|
||||
@@ -937,7 +951,9 @@ bool q_resolveOpenSslSymbols()
|
||||
#ifndef OPENSSL_NO_SSL2
|
||||
RESOLVEFUNC(SSLv2_server_method)
|
||||
#endif
|
||||
+#ifndef OPENSSL_NO_SSL3
|
||||
RESOLVEFUNC(SSLv3_server_method)
|
||||
+#endif
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
RESOLVEFUNC(SSLv23_server_method)
|
||||
#else
|
40
qt-everywhere-opensource-src-4.8.7-qforeach.patch
Normal file
40
qt-everywhere-opensource-src-4.8.7-qforeach.patch
Normal file
@ -0,0 +1,40 @@
|
||||
--- a/src/corelib/global/qglobal.h
|
||||
+++ b/src/corelib/global/qglobal.h
|
||||
@@ -2482,22 +2482,32 @@ typedef uint Flags;
|
||||
|
||||
#endif /* Q_NO_TYPESAFE_FLAGS */
|
||||
|
||||
-#if defined(Q_CC_GNU) && !defined(Q_CC_INTEL) && !defined(Q_CC_RVCT)
|
||||
+#if (defined(Q_CC_GNU) && !defined(Q_CC_RVCT))
|
||||
/* make use of typeof-extension */
|
||||
template <typename T>
|
||||
class QForeachContainer {
|
||||
public:
|
||||
- inline QForeachContainer(const T& t) : c(t), brk(0), i(c.begin()), e(c.end()) { }
|
||||
+ inline QForeachContainer(const T& t) : c(t), i(c.begin()), e(c.end()), control(1) { }
|
||||
const T c;
|
||||
int brk;
|
||||
typename T::const_iterator i, e;
|
||||
+ int control;
|
||||
};
|
||||
|
||||
+// Explanation of the control word:
|
||||
+// - it's initialized to 1
|
||||
+// - that means both the inner and outer loops start
|
||||
+// - if there were no breaks, at the end of the inner loop, it's set to 0, which
|
||||
+// causes it to exit (the inner loop is run exactly once)
|
||||
+// - at the end of the outer loop, it's inverted, so it becomes 1 again, allowing
|
||||
+// the outer loop to continue executing
|
||||
+// - if there was a break inside the inner loop, it will exit with control still
|
||||
+// set to 1; in that case, the outer loop will invert it to 0 and will exit too
|
||||
#define Q_FOREACH(variable, container) \
|
||||
for (QForeachContainer<__typeof__(container)> _container_(container); \
|
||||
- !_container_.brk && _container_.i != _container_.e; \
|
||||
- __extension__ ({ ++_container_.brk; ++_container_.i; })) \
|
||||
- for (variable = *_container_.i;; __extension__ ({--_container_.brk; break;}))
|
||||
+ _container_.control && _container_.i != _container_.e; \
|
||||
+ ++_container_.i, _container_.control ^= 1) \
|
||||
+ for (variable = *_container_.i; _container_.control; _container_.control = 0)
|
||||
|
||||
#else
|
||||
|
233
qt.spec
233
qt.spec
@ -27,8 +27,11 @@
|
||||
# trim changelog included in binary rpms
|
||||
%global _changelog_trimtime %(date +%s -d "1 year ago")
|
||||
|
||||
# support qtchooser
|
||||
# support qtchooser, except when building for inclusion in a flatpak
|
||||
%if !0%{?flatpak}
|
||||
%define qtchooser 1
|
||||
%endif
|
||||
|
||||
%if 0%{?qtchooser}
|
||||
%define priority 20
|
||||
%ifarch %{multilib_basearchs}
|
||||
@ -40,11 +43,10 @@ Summary: Qt toolkit
|
||||
Name: qt
|
||||
Epoch: 1
|
||||
Version: 4.8.7
|
||||
Release: 40%{?dist}
|
||||
Release: 69%{?dist}
|
||||
|
||||
# See LGPL_EXCEPTIONS.txt, LICENSE.GPL3, respectively, for exception details
|
||||
License: (LGPLv2 with exceptions or GPLv3 with exceptions) and ASL 2.0 and BSD and FTL and MIT
|
||||
Group: System Environment/Libraries
|
||||
Url: http://qt-project.org/
|
||||
%if 0%{?beta:1}
|
||||
Source0: https://download.qt-project.org/development_releases/qt/4.8/%{version}-%{beta}/qt-everywhere-opensource-src-%{version}-%{beta}.tar.gz
|
||||
@ -102,8 +104,8 @@ Patch28: qt-everywhere-opensource-src-4.8.5-qt_plugin_path.patch
|
||||
# add support for pkgconfig's Requires.private to qmake
|
||||
Patch50: qt-everywhere-opensource-src-4.8.4-qmake_pkgconfig_requires_private.patch
|
||||
|
||||
# FTBFS against newer firebird
|
||||
Patch51: qt-everywhere-opensource-src-4.8.7-firebird.patch
|
||||
# FTBFS against newer firebird-4.0.0
|
||||
Patch51: qt-everywhere-opensource-src-4.8.7-firebird-4.0.0.patch
|
||||
|
||||
# workaround major/minor macros possibly being defined already
|
||||
Patch52: qt-everywhere-opensource-src-4.8.7-QT_VERSION_CHECK.patch
|
||||
@ -201,6 +203,15 @@ Patch95: qt-everywhere-opensource-src-4.8.7-icu59.patch
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1580047
|
||||
Patch96: qt-everywhere-opensource-src-4.8.7-gcc8_qtscript.patch
|
||||
|
||||
# Fix ordered pointer comparison against zero problem reported by gcc-11
|
||||
Patch97: qt-everywhere-opensource-src-4.8.7-gcc11.patch
|
||||
|
||||
# hardcode the compiler version in the build key once and for all
|
||||
Patch98: qt-everywhere-opensource-src-4.8.7-hardcode-buildkey.patch
|
||||
|
||||
# FTBFS openssl3
|
||||
Patch99: qt-everywhere-opensource-src-4.8.7-openssl3.patch
|
||||
|
||||
# upstream patches
|
||||
# backported from Qt5 (essentially)
|
||||
# http://bugzilla.redhat.com/702493
|
||||
@ -213,9 +224,24 @@ Patch113: qt-everywhere-opensource-src-4.8.6-QTBUG-22829.patch
|
||||
# aarch64 support, https://bugreports.qt-project.org/browse/QTBUG-35442
|
||||
Patch180: qt-aarch64.patch
|
||||
|
||||
# Fix problem caused by gcc 9 fixing a longstanding bug.
|
||||
# https://github.com/qt/qtbase/commit/c35a3f519007af44c3b364b9af86f6a336f6411b.patch
|
||||
Patch181: qt-everywhere-opensource-src-4.8.7-qforeach.patch
|
||||
|
||||
## upstream git
|
||||
|
||||
## security patches
|
||||
# CVE-2018-19872 qt: malformed PPM image causing division by zero and crash in qppmhandler.cpp
|
||||
Patch500: qt-everywhere-opensource-src-4.8.7-crash-in-qppmhandler.patch
|
||||
|
||||
# CVE-2020-17507 qt: buffer over-read in read_xbm_body in gui/image/qxbmhandler.cpp
|
||||
Patch501: qt-CVE-2020-17507.patch
|
||||
|
||||
# no CVE qt: Clamp parsed doubles to float representable values
|
||||
Patch502: qt-everywhere-opensource-src-4.8.7-clamp-parsed-doubles-to-float-representtable-values.patch
|
||||
|
||||
# CVE-2020-24741 qt: QLibrary loads libraries relative to CWD which could result in arbitrary code execution
|
||||
Patch503: qt-everywhere-opensource-src-4.8.5-CVE-2020-24741.patch
|
||||
|
||||
# desktop files
|
||||
Source20: assistant.desktop
|
||||
@ -256,6 +282,16 @@ Source31: hi48-app-qt4-logo.png
|
||||
%define ibase -no-sql-ibase
|
||||
%define tds -no-sql-tds
|
||||
%endif
|
||||
# disable it temporary (firebird build failed on s390x, bz#1969393)
|
||||
%if 0%{?fedora} > 34
|
||||
%define ibase -no-sql-ibase
|
||||
%endif
|
||||
|
||||
# workaround FTBFS with gcc9
|
||||
#if 0%{?fedora} > 29
|
||||
%if 0
|
||||
%global no_javascript_jit -no-javascript-jit
|
||||
%endif
|
||||
|
||||
# macros, be mindful to keep sync'd with macros.qt4
|
||||
Source1: macros.qt4
|
||||
@ -275,6 +311,7 @@ Source1: macros.qt4
|
||||
%define _qt4_sysconfdir %{_sysconfdir}
|
||||
%define _qt4_translationdir %{_datadir}/qt4/translations
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: cups-devel
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: findutils
|
||||
@ -292,9 +329,15 @@ BuildRequires: pkgconfig(icu-i18n)
|
||||
%else
|
||||
BuildRequires: libicu-devel
|
||||
%endif
|
||||
BuildRequires: pkgconfig(NetworkManager)
|
||||
## as far as I can tell, this isn't used anywhere, omitting for now
|
||||
## https://bugzilla.redhat.com/show_bug.cgi?id=1606047
|
||||
#BuildRequires: pkgconfig(NetworkManager)
|
||||
%global openssl -openssl-linked
|
||||
%if 0%{?fedora} == 27
|
||||
BuildRequires: compat-openssl10-devel
|
||||
%else
|
||||
BuildRequires: openssl-devel
|
||||
%endif
|
||||
BuildRequires: pkgconfig(libpng)
|
||||
BuildRequires: pkgconfig(libpulse)
|
||||
BuildRequires: pkgconfig(xtst)
|
||||
@ -334,7 +377,7 @@ BuildRequires: pkgconfig(gtk+-2.0)
|
||||
%endif
|
||||
|
||||
%if "%{?psql}" != "-no-sql-psql"
|
||||
BuildRequires: postgresql-devel
|
||||
BuildRequires: libpq-devel
|
||||
%endif
|
||||
|
||||
%if "%{?odbc}" != "-no-sql-odbc"
|
||||
@ -367,6 +410,7 @@ Requires: qt-settings
|
||||
Requires(post): %{_sbindir}/update-alternatives
|
||||
Requires(postun): %{_sbindir}/update-alternatives
|
||||
%endif
|
||||
Recommends: (ibus-qt if ibus)
|
||||
|
||||
%description
|
||||
Qt is a software toolkit for developing applications.
|
||||
@ -383,7 +427,6 @@ BuildArch: noarch
|
||||
|
||||
%package assistant
|
||||
Summary: Documentation browser for Qt 4
|
||||
Group: Documentation
|
||||
Requires: %{name}-sqlite%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: qt4-assistant = %{version}-%{release}
|
||||
Requires: %{name}-x11%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
@ -395,7 +438,6 @@ Provides: bundled(clucene09)
|
||||
|
||||
%package config
|
||||
Summary: Graphical configuration tool for programs using Qt 4
|
||||
Group: User Interface/Desktops
|
||||
# -config introduced in 4.7.1-10 , for upgrade path
|
||||
# seems to tickle a pk bug, https://bugzilla.redhat.com/674326
|
||||
#Obsoletes: %{name}-x11 < 1:4.7.1-10
|
||||
@ -408,7 +450,6 @@ Requires: %{name}-x11%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
%define demos 1
|
||||
%package demos
|
||||
Summary: Demonstration applications for %{name}
|
||||
Group: Documentation
|
||||
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Requires: %{name}-doc
|
||||
%description demos
|
||||
@ -417,7 +458,6 @@ Requires: %{name}-doc
|
||||
%define docs 1
|
||||
%package doc
|
||||
Summary: API documentation for %{name}
|
||||
Group: Documentation
|
||||
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Requires: %{name}-assistant
|
||||
Obsoletes: qt4-doc < %{version}-%{release}
|
||||
@ -430,14 +470,12 @@ BuildArch: noarch
|
||||
|
||||
%package designer-plugin-webkit
|
||||
Summary: Qt designer plugin for WebKit
|
||||
Group: Development/Libraries
|
||||
Requires: %{name}-x11%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
%description designer-plugin-webkit
|
||||
%{summary}.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for the Qt toolkit
|
||||
Group: Development/Libraries
|
||||
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Requires: %{name}-x11%{?_isa}
|
||||
Requires: %{name}-sqlite%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
@ -474,7 +512,6 @@ Qt Linguist
|
||||
%define private 1
|
||||
%package devel-private
|
||||
Summary: Private headers for Qt toolkit
|
||||
Group: Development/Libraries
|
||||
Provides: qt4-devel-private = %{version}-%{release}
|
||||
Provides: %{name}-private-devel = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: qt4-private-devel = %{version}-%{release}
|
||||
@ -486,7 +523,6 @@ BuildArch: noarch
|
||||
%define examples 1
|
||||
%package examples
|
||||
Summary: Programming examples for %{name}
|
||||
Group: Documentation
|
||||
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
%description examples
|
||||
%{summary}.
|
||||
@ -494,14 +530,12 @@ Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
%define qvfb 1
|
||||
%package qvfb
|
||||
Summary: Virtual frame buffer for Qt for Embedded Linux
|
||||
Group: Applications/Emulators
|
||||
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
%description qvfb
|
||||
%{summary}.
|
||||
|
||||
%package ibase
|
||||
Summary: IBase driver for Qt's SQL classes
|
||||
Group: System Environment/Libraries
|
||||
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: qt4-ibase = %{version}-%{release}
|
||||
%{?_isa:Provides: qt4-ibase%{?_isa} = %{version}-%{release}}
|
||||
@ -510,7 +544,6 @@ Provides: qt4-ibase = %{version}-%{release}
|
||||
|
||||
%package mysql
|
||||
Summary: MySQL driver for Qt's SQL classes
|
||||
Group: System Environment/Libraries
|
||||
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Obsoletes: qt4-MySQL < %{version}-%{release}
|
||||
Provides: qt4-MySQL = %{version}-%{release}
|
||||
@ -522,7 +555,6 @@ Provides: qt4-mysql = %{version}-%{release}
|
||||
|
||||
%package odbc
|
||||
Summary: ODBC driver for Qt's SQL classes
|
||||
Group: System Environment/Libraries
|
||||
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Obsoletes: qt4-ODBC < %{version}-%{release}
|
||||
Provides: qt4-ODBC = %{version}-%{release}
|
||||
@ -534,7 +566,6 @@ Provides: qt4-odbc = %{version}-%{release}
|
||||
|
||||
%package postgresql
|
||||
Summary: PostgreSQL driver for Qt's SQL classes
|
||||
Group: System Environment/Libraries
|
||||
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Obsoletes: qt4-PostgreSQL < %{version}-%{release}
|
||||
Provides: qt4-PostgreSQL = %{version}-%{release}
|
||||
@ -546,7 +577,6 @@ Provides: qt4-postgresql = %{version}-%{release}
|
||||
|
||||
%package tds
|
||||
Summary: TDS driver for Qt's SQL classes
|
||||
Group: System Environment/Libraries
|
||||
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: qt4-tds = %{version}-%{release}
|
||||
%{?_isa:Provides: qt4-tds%{?_isa} = %{version}-%{release}}
|
||||
@ -555,7 +585,6 @@ Provides: qt4-tds = %{version}-%{release}
|
||||
|
||||
%package x11
|
||||
Summary: Qt GUI-related libraries
|
||||
Group: System Environment/Libraries
|
||||
# include Obsoletes here to be safe(r) bootstrap-wise with phonon-4.5.0
|
||||
# that will Provides: it -- Rex
|
||||
Obsoletes: qt-designer-plugin-phonon < 1:4.7.2-6
|
||||
@ -632,21 +661,32 @@ rm -rf src/3rdparty/clucene
|
||||
%patch91 -p1 -b .mips64
|
||||
%patch92 -p1 -b .gcc6
|
||||
%patch93 -p1 -b .alsa1.1
|
||||
%if 0%{?fedora} > 27 || 0%{?rhel} > 7
|
||||
%patch94 -p1 -b .openssl1.1
|
||||
%endif
|
||||
%patch95 -p1 -b .icu59
|
||||
%if 0%{?fedora} > 27
|
||||
%patch96 -p1 -b .gcc8_qtscript
|
||||
%endif
|
||||
%patch97 -p1 -b .gcc11
|
||||
%patch98 -p1 -b .hardcode-buildkey
|
||||
%patch99 -p1 -b .ssl3
|
||||
|
||||
# upstream patches
|
||||
%patch102 -p1 -b .qgtkstyle_disable_gtk_theme_check
|
||||
%patch113 -p1 -b .QTBUG-22829
|
||||
|
||||
%patch180 -p1 -b .aarch64
|
||||
%patch181 -p1 -b .qforeach
|
||||
|
||||
# upstream git
|
||||
|
||||
# security fixes
|
||||
%patch500 -p1 -b .malformed-ppb-image-causing-crash
|
||||
%patch501 -p1 -b .buffer-over-read-in-read_xbm_body
|
||||
%patch502 -p1 -b .clamp-parsed-doubles-to-float-representtable-values
|
||||
%patch503 -p1 -b .CVE-2020-24741
|
||||
|
||||
# regression fixes for the security fixes
|
||||
%patch84 -p1 -b .QTBUG-35459
|
||||
|
||||
@ -701,6 +741,11 @@ done
|
||||
|
||||
|
||||
%build
|
||||
# QT is known not to work properly with LTO at this point. Some of the issues
|
||||
# are being worked on upstream and disabling LTO should be re-evaluated as
|
||||
# we update this change. Until such time...
|
||||
# Disable LTO
|
||||
%define _lto_cflags %{nil}
|
||||
|
||||
# drop -fexceptions from $RPM_OPT_FLAGS
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS | sed 's|-fexceptions||g'`
|
||||
@ -795,25 +840,23 @@ fi
|
||||
%if ! 0%{?inject_optflags}
|
||||
# ensure qmake build using optflags (which can happen if not munging qmake.conf defaults)
|
||||
make clean -C qmake
|
||||
make %{?_smp_mflags} -C qmake \
|
||||
%make_build -C qmake \
|
||||
QMAKE_CFLAGS_RELEASE="${CFLAGS:-$RPM_OPT_FLAGS}" \
|
||||
QMAKE_CXXFLAGS_RELEASE="${CXXFLAGS:-$RPM_OPT_FLAGS}" \
|
||||
QMAKE_LFLAGS_RELEASE="${LDFLAGS:-$RPM_LD_FLAGS}" \
|
||||
QMAKE_STRIP=
|
||||
%endif
|
||||
|
||||
make %{?_smp_mflags}
|
||||
%make_build
|
||||
|
||||
# TODO: consider patching tools/tools.pro to enable building this by default
|
||||
%{?qvfb:make %{?_smp_mflags} -C tools/qvfb}
|
||||
%{?qvfb:%make_build -C tools/qvfb}
|
||||
|
||||
# recreate .qm files
|
||||
bin/lrelease translations/*.ts
|
||||
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
|
||||
make install INSTALL_ROOT=%{buildroot}
|
||||
|
||||
%if 0%{?qvfb}
|
||||
@ -1061,7 +1104,7 @@ fi
|
||||
%endif
|
||||
|
||||
%post
|
||||
/sbin/ldconfig
|
||||
%{?ldconfig}
|
||||
%if 0%{?qtchooser}
|
||||
%{_sbindir}/update-alternatives \
|
||||
--install %{_sysconfdir}/xdg/qtchooser/4.conf \
|
||||
@ -1077,7 +1120,7 @@ fi
|
||||
%endif
|
||||
|
||||
%postun
|
||||
/sbin/ldconfig
|
||||
%{?ldconfig}
|
||||
%if 0%{?qtchooser}
|
||||
if [ $1 -eq 0 ]; then
|
||||
%{_sbindir}/update-alternatives \
|
||||
@ -1150,18 +1193,6 @@ fi
|
||||
%files common
|
||||
# empty for now, consider: filesystem/dir ownership, licenses
|
||||
|
||||
%post assistant
|
||||
touch --no-create %{_datadir}/icons/hicolor ||:
|
||||
|
||||
%posttrans assistant
|
||||
gtk-update-icon-cache -q %{_datadir}/icons/hicolor 2> /dev/null ||:
|
||||
|
||||
%postun assistant
|
||||
if [ $1 -eq 0 ] ; then
|
||||
touch --no-create %{_datadir}/icons/hicolor ||:
|
||||
gtk-update-icon-cache -q %{_datadir}/icons/hicolor 2> /dev/null ||:
|
||||
fi
|
||||
|
||||
%files assistant
|
||||
%if "%{_qt4_bindir}" != "%{_bindir}"
|
||||
%{_bindir}/assistant*
|
||||
@ -1192,20 +1223,6 @@ fi
|
||||
%{_qt4_plugindir}/designer/libqwebview.so
|
||||
%endif
|
||||
|
||||
%post devel
|
||||
touch --no-create %{_datadir}/icons/hicolor ||:
|
||||
|
||||
%posttrans devel
|
||||
gtk-update-icon-cache -q %{_datadir}/icons/hicolor 2> /dev/null ||:
|
||||
update-desktop-database -q &> /dev/null ||:
|
||||
|
||||
%postun devel
|
||||
if [ $1 -eq 0 ] ; then
|
||||
touch --no-create %{_datadir}/icons/hicolor ||:
|
||||
gtk-update-icon-cache -q %{_datadir}/icons/hicolor 2> /dev/null ||:
|
||||
update-desktop-database -q &> /dev/null ||:
|
||||
fi
|
||||
|
||||
%files devel -f qt-devel.lang
|
||||
%{rpm_macros_dir}/macros.qt4
|
||||
%{_qt4_bindir}/lconvert
|
||||
@ -1343,19 +1360,7 @@ fi
|
||||
%{_qt4_plugindir}/sqldrivers/libqsqltds*
|
||||
%endif
|
||||
|
||||
%post x11
|
||||
/sbin/ldconfig
|
||||
touch --no-create %{_datadir}/icons/hicolor ||:
|
||||
|
||||
%posttrans x11
|
||||
gtk-update-icon-cache -q %{_datadir}/icons/hicolor 2> /dev/null ||:
|
||||
|
||||
%postun x11
|
||||
/sbin/ldconfig
|
||||
if [ $1 -eq 0 ] ; then
|
||||
touch --no-create %{_datadir}/icons/hicolor ||:
|
||||
gtk-update-icon-cache -q %{_datadir}/icons/hicolor 2> /dev/null ||:
|
||||
fi
|
||||
%ldconfig_scriptlets x11
|
||||
|
||||
%files x11 -f qt-x11.lang
|
||||
%dir %{_qt4_importdir}/
|
||||
@ -1403,6 +1408,98 @@ fi
|
||||
|
||||
|
||||
%changelog
|
||||
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.8.7-69
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Mon Apr 25 2022 Jens Petersen <petersen@redhat.com> - 1:4.8.7-68
|
||||
- Recommend ibus-qt when ibus is installed
|
||||
|
||||
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.8.7-67
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Tue Oct 19 2021 Than Ngo <than@redhat.com> - 1:4.8.7-66
|
||||
- Fix FTBFS
|
||||
|
||||
* Tue Oct 12 2021 Than Ngo <than@redhat.com> - 1:4.8.7-65
|
||||
- CVE-2020-24741, Do not attempt to load a library relative to $PWD
|
||||
|
||||
* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 1:4.8.7-64
|
||||
- Rebuilt with OpenSSL 3.0.0
|
||||
|
||||
* Thu Jul 29 2021 Than Ngo <than@redhat.com> - 4.8.7-63
|
||||
- Fixed FTBFS against firebird-4.0.0
|
||||
|
||||
* Tue Jul 27 2021 Than Ngo <than@redhat.com> - 4.8.7-62
|
||||
- Fixed FTBFS
|
||||
|
||||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.8.7-61
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Tue Mar 09 2021 Than Ngo <than@redhat.com> - 4.8.7-60
|
||||
- Resolves: #1931444, Clamp parsed doubles to float representable values
|
||||
|
||||
* Mon Feb 08 2021 Pavel Raiskup <praiskup@redhat.com> - 1:4.8.7-59
|
||||
- rebuild for libpq ABI fix rhbz#1908268
|
||||
|
||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.8.7-58
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Wed Aug 19 2020 Kevin Kofler <Kevin@tigcc.ticalc.org> - 4.8.7-57
|
||||
- Hardcode the compiler version in the build key once and for all
|
||||
|
||||
* Wed Aug 19 2020 Jeff Law <law@redhat.com> - 4.8.7-56
|
||||
- Add support for gcc-11
|
||||
- Fix ordered pointer comparison against zero problems
|
||||
|
||||
* Thu Aug 13 2020 Than Ngo <than@redhat.com> - 4.8.7-55
|
||||
- fixed #1868534 - CVE-2020-17507
|
||||
|
||||
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.8.7-54
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Wed Jul 01 2020 Jeff Law <law@redhat.com> - 4.8.7-53
|
||||
- Disable LTO
|
||||
|
||||
* Fri Jan 31 2020 Than Ngo <than@redhat.com> - 4.8.7-52
|
||||
- fixed FTBFS against gcc10
|
||||
|
||||
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.8.7-51
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.8.7-50
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Sat Apr 20 2019 Rex Dieter <rdieter@fedoraproject.org> - 4.8.7-49
|
||||
- re-enable javascript-jit
|
||||
|
||||
* Tue Apr 02 2019 Rex Dieter <rdieter@fedoraproject.org> - 4.8.7-48
|
||||
- rebuild
|
||||
|
||||
* Fri Mar 22 2019 Than Ngo <than@redhat.com> - 4.8.7-47
|
||||
- fixed #1691638 - CVE-2018-19872 qt: malformed PPM image causing division by zero and crash in qppmhandler.cpp
|
||||
|
||||
* Thu Feb 28 2019 Rex Dieter <rdieter@fedoraproject.org> - 1:4.8.7-46
|
||||
- backport qforeach.patch from qt5
|
||||
- -no-javascript-jit on f30 to workaround gcc9 FTBFS for now
|
||||
|
||||
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.8.7-45
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Fri Oct 19 2018 Kevin Kofler <Kevin@tigcc.ticalc.org> - 1:4.8.7-44
|
||||
- fix QAudio hardcoding hw:0,0 on ALSA1.1 (patch by Jaroslav Škarvada, #1641151)
|
||||
- disable OpenSSL 1.1 patch for F27, keep building against compat-openssl10
|
||||
(It really does not make sense to switch over the F27 package at this point.)
|
||||
|
||||
* Fri Sep 21 2018 Owen Taylor <otaylor@redhat.com> - 1:4.8.7-43
|
||||
- Disable qtchooser for Flatpak builds
|
||||
|
||||
* Sat Jul 21 2018 Rex Dieter <rdieter@fedoraproject.org> - 1:4.8.7-42
|
||||
- drop BR: pkgconfig(NetworkManager) (#1606047)
|
||||
- use %%make_build %%ldconfig
|
||||
|
||||
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.8.7-41
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Sat May 19 2018 Rex Dieter <rdieter@fedoraproject.org> - 1:4.8.7-40
|
||||
- build only qtscript using -O1 (#1580047)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user