diff options
author | pi <pi@FreeBSD.org> | 2016-06-22 14:19:53 +0800 |
---|---|---|
committer | pi <pi@FreeBSD.org> | 2016-06-22 14:19:53 +0800 |
commit | 38d3a78dd7943844256b36834dc31f6006dd6353 (patch) | |
tree | d05ed05490237ee9c0b13722b366f99fcfe31674 | |
parent | 12d0d81ecb25b0dd1bc6b389f1a1fbc427945e52 (diff) | |
download | freebsd-ports-graphics-38d3a78dd7943844256b36834dc31f6006dd6353.tar.gz freebsd-ports-graphics-38d3a78dd7943844256b36834dc31f6006dd6353.tar.zst freebsd-ports-graphics-38d3a78dd7943844256b36834dc31f6006dd6353.zip |
devel/qtcreator: 4.0.1 -> 4.0.2
During the update to 4.0.1 a bug was detected that led to the "Run"
buttons being disabled to start a project program binary and also
led to the debugger not finding the executable on 10.x and 11 systems
using clang while on 9.3 the issue did not appear. The cause was
detected and fixed in co-work with the Qt Creator developers, see
https://bugreports.qt.io/browse/QTCREATORBUG-16462
and the fix included as a patchset in this port in
https://codereview.qt-project.org/#/c/163090/
PR: 210443
Submitted by: Ralf Nolden <nolden@kde.org> (kde)
15 files changed, 225 insertions, 6 deletions
diff --git a/devel/qtcreator/Makefile b/devel/qtcreator/Makefile index 9700e586d77..7b924f270a8 100644 --- a/devel/qtcreator/Makefile +++ b/devel/qtcreator/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= qtcreator -DISTVERSION= 4.0.1 +DISTVERSION= 4.0.2 CATEGORIES= devel MASTER_SITES= QT/official_releases/qtcreator/${DISTVERSION:R}/${DISTVERSION} DISTNAME= qt-creator-opensource-src-${DISTVERSION} @@ -56,7 +56,5 @@ post-patch: ${WRKSRC}/share/qtcreator/debugger/dumper.py ${REINPLACE_CMD} -e 's|/usr/bin/ant|${LOCALBASE}/bin/ant|' \ ${WRKSRC}/src/plugins/android/androidsettingswidget.cpp - ${REINPLACE_CMD} -e '/unix:!openbsd: LIBS += -ldl/d' \ - ${WRKSRC}/src/libs/sqlite/sqlite-lib.pri .include <bsd.port.mk> diff --git a/devel/qtcreator/distinfo b/devel/qtcreator/distinfo index ecca62cbe23..fa121ab2bd2 100644 --- a/devel/qtcreator/distinfo +++ b/devel/qtcreator/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1465489154 -SHA256 (KDE/Qt/qtcreator/qt-creator-opensource-src-4.0.1.tar.gz) = 95518a0b93d2d2fb7e5b46508fc1f59811edb2c5e05659262539dd316b8e5f4c -SIZE (KDE/Qt/qtcreator/qt-creator-opensource-src-4.0.1.tar.gz) = 21651072 +TIMESTAMP = 1466350737 +SHA256 (KDE/Qt/qtcreator/qt-creator-opensource-src-4.0.2.tar.gz) = c2fce74fef0cc3a8f5c03d7ed1e95ccfe508d855ee750647896876824fcaee10 +SIZE (KDE/Qt/qtcreator/qt-creator-opensource-src-4.0.2.tar.gz) = 21651190 diff --git a/devel/qtcreator/files/patch-src_plugins_android_android.pro b/devel/qtcreator/files/patch-src_plugins_android_android.pro new file mode 100644 index 00000000000..30b604b3d84 --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_android_android.pro @@ -0,0 +1,12 @@ +--- src/plugins/android/android.pro.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/android/android.pro +@@ -89,7 +89,8 @@ SOURCES += \ + avddialog.cpp \ + androidbuildapkstep.cpp \ + androidbuildapkwidget.cpp \ +- androidqtsupport.cpp ++ androidqtsupport.cpp \ ++ androidrunnable.cpp + + FORMS += \ + androidsettingswidget.ui \ diff --git a/devel/qtcreator/files/patch-src_plugins_android_android.qbs b/devel/qtcreator/files/patch-src_plugins_android_android.qbs new file mode 100644 index 00000000000..07a3b495e1e --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_android_android.qbs @@ -0,0 +1,10 @@ +--- src/plugins/android/android.qbs.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/android/android.qbs +@@ -76,6 +76,7 @@ QtcPlugin { + "androidruncontrol.h", + "androidrunfactories.cpp", + "androidrunfactories.h", ++ "androidrunnable.cpp", + "androidrunnable.h", + "androidrunner.cpp", + "androidrunner.h", diff --git a/devel/qtcreator/files/patch-src_plugins_android_androiddevice.cpp b/devel/qtcreator/files/patch-src_plugins_android_androiddevice.cpp new file mode 100644 index 00000000000..307280c6689 --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_android_androiddevice.cpp @@ -0,0 +1,11 @@ +--- src/plugins/android/androiddevice.cpp.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/android/androiddevice.cpp +@@ -27,6 +27,8 @@ + #include "androidconstants.h" + #include "androidsignaloperation.h" + ++#include <projectexplorer/runnables.h> ++ + #include <QCoreApplication> + + using namespace ProjectExplorer; diff --git a/devel/qtcreator/files/patch-src_plugins_android_androidrunnable.cpp b/devel/qtcreator/files/patch-src_plugins_android_androidrunnable.cpp new file mode 100644 index 00000000000..d5ae322e153 --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_android_androidrunnable.cpp @@ -0,0 +1,35 @@ +--- src/plugins/android/androidrunnable.cpp.orig 2016-06-21 16:54:43 UTC ++++ src/plugins/android/androidrunnable.cpp +@@ -0,0 +1,32 @@ ++/**************************************************************************** ++** ++** Copyright (C) 2016 The Qt Company Ltd. ++** Contact: https://www.qt.io/licensing/ ++** ++** This file is part of Qt Creator. ++** ++** Commercial License Usage ++** Licensees holding valid commercial Qt licenses may use this file in ++** accordance with the commercial license agreement provided with the ++** Software or, alternatively, in accordance with the terms contained in ++** a written agreement between you and The Qt Company. For licensing terms ++** and conditions see https://www.qt.io/terms-conditions. For further ++** information use the contact form at https://www.qt.io/contact-us. ++** ++** GNU General Public License Usage ++** Alternatively, this file may be used under the terms of the GNU ++** General Public License version 3 as published by the Free Software ++** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT ++** included in the packaging of this file. Please review the following ++** information to ensure the GNU General Public License requirements will ++** be met: https://www.gnu.org/licenses/gpl-3.0.html. ++** ++****************************************************************************/ ++ ++#include "androidrunnable.h" ++ ++namespace Android { ++ ++void *AndroidRunnable::staticTypeId = &AndroidRunnable::staticTypeId; ++ ++} // namespace Android diff --git a/devel/qtcreator/files/patch-src_plugins_android_androidrunnable.h b/devel/qtcreator/files/patch-src_plugins_android_androidrunnable.h new file mode 100644 index 00000000000..368a17673a2 --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_android_androidrunnable.h @@ -0,0 +1,11 @@ +--- src/plugins/android/androidrunnable.h.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/android/androidrunnable.h +@@ -40,6 +40,8 @@ struct ANDROID_EXPORT AndroidRunnable + QVector<QStringList> beforeStartADBCommands; + QVector<QStringList> afterFinishADBCommands; + QString deviceSerialNumber; ++ ++ static void *staticTypeId; + }; + + inline bool operator==(const AndroidRunnable &r1, const AndroidRunnable &r2) diff --git a/devel/qtcreator/files/patch-src_plugins_debugger_analyzer_analyzerstartparameters.h b/devel/qtcreator/files/patch-src_plugins_debugger_analyzer_analyzerstartparameters.h new file mode 100644 index 00000000000..ad091d3029e --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_debugger_analyzer_analyzerstartparameters.h @@ -0,0 +1,11 @@ +--- src/plugins/debugger/analyzer/analyzerstartparameters.h.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/debugger/analyzer/analyzerstartparameters.h +@@ -42,6 +42,8 @@ public: + QString analyzerHost; + QString analyzerSocket; + quint16 analyzerPort = 0; ++ ++ static void *staticTypeId; + }; + + DEBUGGER_EXPORT bool operator==(const AnalyzerConnection &c1, const AnalyzerConnection &c2); diff --git a/devel/qtcreator/files/patch-src_plugins_debugger_debuggerplugin.cpp b/devel/qtcreator/files/patch-src_plugins_debugger_debuggerplugin.cpp new file mode 100644 index 00000000000..1f290b4bcc6 --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_debugger_debuggerplugin.cpp @@ -0,0 +1,12 @@ +--- src/plugins/debugger/debuggerplugin.cpp.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/debugger/debuggerplugin.cpp +@@ -3834,6 +3834,9 @@ QList<QObject *> DebuggerPlugin::createT + #endif // if WITH_TESTS + + } // namespace Internal ++ ++void *AnalyzerConnection::staticTypeId = &AnalyzerConnection::staticTypeId; ++ + } // namespace Debugger + + #include "debuggerplugin.moc" diff --git a/devel/qtcreator/files/patch-src_plugins_projectexplorer_customwizard_customwizard.cpp b/devel/qtcreator/files/patch-src_plugins_projectexplorer_customwizard_customwizard.cpp new file mode 100644 index 00000000000..95229ee165e --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_projectexplorer_customwizard_customwizard.cpp @@ -0,0 +1,13 @@ +--- src/plugins/projectexplorer/customwizard/customwizard.cpp.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/projectexplorer/customwizard/customwizard.cpp +@@ -28,8 +28,9 @@ + #include "customwizardpage.h" + #include "customwizardscriptgenerator.h" + +-#include <projectexplorer/projectexplorer.h> + #include <projectexplorer/baseprojectwizarddialog.h> ++#include <projectexplorer/projectexplorer.h> ++#include <projectexplorer/runconfiguration.h> + + #include <coreplugin/icore.h> + #include <coreplugin/messagemanager.h> diff --git a/devel/qtcreator/files/patch-src_plugins_projectexplorer_devicesupport_desktopdevice.cpp b/devel/qtcreator/files/patch-src_plugins_projectexplorer_devicesupport_desktopdevice.cpp new file mode 100644 index 00000000000..45ff62d8d73 --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_projectexplorer_devicesupport_desktopdevice.cpp @@ -0,0 +1,10 @@ +--- src/plugins/projectexplorer/devicesupport/desktopdevice.cpp.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/projectexplorer/devicesupport/desktopdevice.cpp +@@ -30,6 +30,7 @@ + #include "desktopdeviceconfigurationwidget.h" + #include "desktopprocesssignaloperation.h" + #include <projectexplorer/projectexplorerconstants.h> ++#include <projectexplorer/runnables.h> + + #include <ssh/sshconnection.h> + diff --git a/devel/qtcreator/files/patch-src_plugins_projectexplorer_devicesupport_idevice.cpp b/devel/qtcreator/files/patch-src_plugins_projectexplorer_devicesupport_idevice.cpp new file mode 100644 index 00000000000..61e76d089be --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_projectexplorer_devicesupport_idevice.cpp @@ -0,0 +1,17 @@ +--- src/plugins/projectexplorer/devicesupport/idevice.cpp.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/projectexplorer/devicesupport/idevice.cpp +@@ -30,6 +30,7 @@ + + #include "../kit.h" + #include "../kitinformation.h" ++#include "../runnables.h" + + #include <ssh/sshconnection.h> + #include <utils/portlist.h> +@@ -466,4 +467,6 @@ DeviceEnvironmentFetcher::DeviceEnvironm + { + } + ++void *HostName::staticTypeId = &HostName::staticTypeId; ++ + } // namespace ProjectExplorer diff --git a/devel/qtcreator/files/patch-src_plugins_projectexplorer_runconfiguration.h b/devel/qtcreator/files/patch-src_plugins_projectexplorer_runconfiguration.h new file mode 100644 index 00000000000..9115336b912 --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_projectexplorer_runconfiguration.h @@ -0,0 +1,45 @@ +--- src/plugins/projectexplorer/runconfiguration.h.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/projectexplorer/runconfiguration.h +@@ -159,6 +159,7 @@ public: + virtual ~ClonableConcept() = default; + virtual ClonableConcept *clone() const = 0; + virtual bool equals(const std::unique_ptr<ClonableConcept> &other) const = 0; ++ virtual void *typeId() const = 0; + }; + + template <class T> +@@ -168,11 +169,14 @@ public: + ClonableModel(const T &data) : m_data(data) { } + ~ClonableModel() Q_DECL_NOEXCEPT { } // gcc 4.7.3 + ClonableConcept *clone() const override { return new ClonableModel(*this); } ++ void *typeId() const { return T::staticTypeId; } + + bool equals(const std::unique_ptr<ClonableConcept> &other) const override + { +- auto that = dynamic_cast<const ClonableModel<T> *>(other.get()); +- return that && m_data == that->m_data; ++ if (other->typeId() != typeId()) ++ return false; ++ auto that = static_cast<const ClonableModel<T> *>(other.get()); ++ return m_data == that->m_data; + } + + T m_data; +@@ -189,7 +193,7 @@ public: + void operator=(Runnable other) { d = std::move(other.d); } + + template <class T> bool is() const { +- return dynamic_cast<ClonableModel<T> *>(d.get()) != 0; ++ return d.get()->typeId() == T::staticTypeId; + } + + template <class T> const T &as() const { +@@ -213,7 +217,7 @@ public: + void operator=(Connection other) { d = std::move(other.d); } + + template <class T> bool is() const { +- return dynamic_cast<ClonableModel<T> *>(d.get()) != 0; ++ return d.get()->typeId() == T::staticTypeId; + } + + template <class T> const T &as() const { diff --git a/devel/qtcreator/files/patch-src_plugins_projectexplorer_runnables.cpp b/devel/qtcreator/files/patch-src_plugins_projectexplorer_runnables.cpp new file mode 100644 index 00000000000..342d1259043 --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_projectexplorer_runnables.cpp @@ -0,0 +1,9 @@ +--- src/plugins/projectexplorer/runnables.cpp.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/projectexplorer/runnables.cpp +@@ -35,4 +35,6 @@ bool operator==(const StandardRunnable & + && r1.environment == r2.environment; + } + ++void *StandardRunnable::staticTypeId = &StandardRunnable::staticTypeId; ++ + } // namespace ProjectExplorer diff --git a/devel/qtcreator/files/patch-src_plugins_projectexplorer_runnables.h b/devel/qtcreator/files/patch-src_plugins_projectexplorer_runnables.h new file mode 100644 index 00000000000..845d1e93ae7 --- /dev/null +++ b/devel/qtcreator/files/patch-src_plugins_projectexplorer_runnables.h @@ -0,0 +1,25 @@ +--- src/plugins/projectexplorer/runnables.h.orig 2016-06-21 13:37:35 UTC ++++ src/plugins/projectexplorer/runnables.h +@@ -43,8 +43,22 @@ public: + Utils::Environment environment; + ApplicationLauncher::Mode runMode = ApplicationLauncher::Gui; + IDevice::ConstPtr device; // Override the kit's device. Keep unset by default. ++ ++ static void *staticTypeId; + }; + + PROJECTEXPLORER_EXPORT bool operator==(const StandardRunnable &r1, const StandardRunnable &r2); + ++class PROJECTEXPLORER_EXPORT HostName ++{ ++public: ++ explicit HostName(const QString &host) : m_host(host) {} ++ QString host() const { return m_host; } ++ ++ static void *staticTypeId; ++ ++private: ++ QString m_host; ++}; ++ + } // namespace ProjectExplorer |