Prepare for QtC 4.1

This commit is contained in:
Benjamin Zeller
2016-08-24 18:00:57 +02:00
parent c8cff486c7
commit 6ccb277e73
17 changed files with 549 additions and 35 deletions

View File

@@ -30,6 +30,10 @@ set (QT_SOURCE_DIR "${EXT_SOURCE_DIR}/qt-everywhere-opensource-src-5.6.0")
set (QT_BUILD_DIR "${CMAKE_BINARY_DIR}/qt-build/build")
set (QT_INSTALL_DIR "${CMAKE_BINARY_DIR}/qt")
add_custom_target(RevertPatches
quilt pop -a
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
add_custom_target(QtSource
${CMAKE_SOURCE_DIR}/get_bzr_source.py -d "${QT_SOURCE_DIR}" lp:~bzoltan/+junk/qt-everywhere-opensource-src-5.6.0
COMMAND ${CMAKE_SOURCE_DIR}/get_package_source.py -c ${QT_SOURCE_DIR} qtfeedback-opensource-src:qtfeedback qtpim-opensource-src:qtpim
@@ -55,13 +59,19 @@ add_custom_target(AppmenuSource
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
add_custom_target(QtCreatorSource
${CMAKE_SOURCE_DIR}/get_bzr_source.py -d "${EXT_SOURCE_DIR}/qtcreator" lp:~zeller-benjamin/+junk/qtc-lxd
COMMAND ${CMAKE_SOURCE_DIR}/get_bzr_source.py -d "${EXT_SOURCE_DIR}/qtcreator/src/plugins/ubuntu" lp:qtcreator-plugin-ubuntu
COMMAND sed -i "'s/\\(welcome\\)/\\1 \\\\ \\n ubuntu/g'" ${EXT_SOURCE_DIR}/qtcreator/src/plugins/plugins.pro
${CMAKE_SOURCE_DIR}/get_git_source.py -d "${EXT_SOURCE_DIR}/qtcreator" -b "4.1" "https://codereview.qt-project.org/qt-creator/qt-creator"
COMMAND ${CMAKE_SOURCE_DIR}/get_bzr_source.py -d "${EXT_SOURCE_DIR}/qtcreator/src/plugins/ubuntu" lp:~zeller-benjamin/qtcreator-plugin-ubuntu/qtc41-beta #lp:qtcreator-plugin-ubuntu
#COMMAND sed -i "'s/\\(welcome\\)/\\1 \\\\ \\n ubuntu/g'" ${EXT_SOURCE_DIR}/qtcreator/src/plugins/plugins.pro
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
add_custom_target(sources DEPENDS QtSource LibDusSource MaliitSource fcitx-qtSource AppmenuSource QtCreatorSource)
add_custom_command(TARGET sources
PRE_BUILD
COMMAND "REVERTING ALL PATCHES"
COMMAND quilt pop -a
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
IF(CMAKE_BUILD_TYPE MATCHES DEBUG)
message("debug mode enabled")
set(QT_ADDITIONAL_CONF "-debug")
@@ -72,6 +82,10 @@ ELSE(CMAKE_BUILD_TYPE MATCHES DEBUG)
set(CMAKE_BUILD_TYPE_STRING "RelWithDebInfo")
ENDIF(CMAKE_BUILD_TYPE MATCHES DEBUG)
add_custom_target(ApplyPatches
quilt push -a
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
ExternalProject_Add(${QT_VERSION}
#URL http://download.qt.io/official_releases/qt/5.4/5.6.0/single/qt-everywhere-opensource-src-5.6.0.tar.gz
PREFIX "qt-build"
@@ -82,6 +96,7 @@ ExternalProject_Add(${QT_VERSION}
CONFIGURE_COMMAND sh -c "${CMAKE_SOURCE_DIR}/fix-qt-build.py -f \"${QT_SOURCE_DIR}\" && ${QT_SOURCE_DIR}/configure -prefix ${QT_INSTALL_DIR} ${QT_ADDITIONAL_CONF} `cat ${CMAKE_SOURCE_DIR}/qt5config`"
BUILD_COMMAND sh -c "make ${GENERATED_MAKE_FLAGS}"
INSTALL_COMMAND sh -c "make install"
DEPENDS ApplyPatches
)
SET (DBUSMENU_PREFIX "${CMAKE_BINARY_DIR}/libdbusmenu-qt-build")
@@ -161,7 +176,7 @@ ExternalProject_Add(qtcreator_3.5.0
BINARY_DIR "${QTCREATOR_PREFIX}/build"
INSTALL_DIR "${CMAKE_BINARY_DIR}/ubuntu-sdk-ide"
DOWNLOAD_COMMAND sh -c "exit 0"
CONFIGURE_COMMAND sh -c "${QT_INSTALL_DIR}/bin/qmake -r USE_SYSTEM_BOTAN=1 ${QMAKE_ADDITIONAL_CONF} ${EXT_SOURCE_DIR}/qtcreator"
CONFIGURE_COMMAND sh -c "${QT_INSTALL_DIR}/bin/qmake -r USE_SYSTEM_BOTAN=1 CONFIG+=debug ${QMAKE_ADDITIONAL_CONF} ${EXT_SOURCE_DIR}/qtcreator"
BUILD_COMMAND sh -c "QT_PRIVATE_HEADERS=${QT_INSTALL_DIR} LD_LIBRARY_PATH=${QT_INSTALL_DIR}/lib make ${GENERATED_MAKE_FLAGS}"
INSTALL_COMMAND sh -c "QT_PRIVATE_HEADERS=${QT_INSTALL_DIR} LD_LIBRARY_PATH=${QT_INSTALL_DIR}/lib make INSTALL_ROOT=${CMAKE_BINARY_DIR}/ubuntu-sdk-ide -j1 docs deployqt"
)

1
debian/control vendored
View File

@@ -6,6 +6,7 @@ Build-Depends: debhelper (>= 9),
cmake,
dpkg-dev (>= 1.16.1),
devscripts,
quilt,
chrpath,
doxygen,
ca-certificates,

View File

@@ -0,0 +1,101 @@
Index: qtcreator/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
===================================================================
--- qtcreator.orig/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
+++ qtcreator/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
@@ -97,7 +97,7 @@ bool qtVersionNumberCompare(BaseQtVersio
return a->qtVersion() > b->qtVersion() || (a->qtVersion() == b->qtVersion() && a->uniqueId() < b->uniqueId());
}
static bool restoreQtVersions();
-static void findSystemQt();
+static void updateSystemQt();
static void saveQtVersions();
static void updateDocumentation();
@@ -126,14 +126,11 @@ void QtVersionManager::triggerQtVersionR
disconnect(ProjectExplorer::ToolChainManager::instance(), SIGNAL(toolChainsLoaded()),
this, SLOT(triggerQtVersionRestore()));
- bool success = restoreQtVersions();
+ restoreQtVersions();
m_instance->updateFromInstaller(false);
- if (!success) {
- // We did neither restore our settings or upgraded
- // in that case figure out if there's a qt in path
- // and add it to the Qt versions
- findSystemQt();
- }
+
+ // add system Qt
+ updateSystemQt();
emit m_instance->qtVersionsLoaded();
emit m_instance->qtVersionsChanged(m_versions.keys(), QList<int>(), QList<int>());
@@ -433,22 +430,57 @@ static FileNameList gatherQmakePathsFrom
return foundQMakes.toList();
}
-static void findSystemQt()
+static void addSystemQtVersion(FileName qmake_fn)
+{
+ BaseQtVersion *v = QtVersionFactory::createQtVersionFromQMakePath(qmake_fn, true, QLatin1String("PATH"));
+ if (v) {
+ v->setUnexpandedDisplayName(BaseQtVersion::defaultUnexpandedDisplayName(qmake_fn, true));
+ m_versions.insert(v->uniqueId(), v);
+ }
+}
+
+static void updateSystemQt()
{
- FileNameList systemQMakes;
FileName systemQMakePath = BuildableHelperLibrary::findSystemQt(Environment::systemEnvironment());
- if (!systemQMakePath.isEmpty())
- systemQMakes << systemQMakePath;
+ FileNameList qmakePathsFromQtChooser = gatherQmakePathsFromQtChooser();
+ if (!qmakePathsFromQtChooser.contains(systemQMakePath))
+ qmakePathsFromQtChooser << systemQMakePath;
+ std::sort(qmakePathsFromQtChooser.begin(), qmakePathsFromQtChooser.end());
- systemQMakes.append(gatherQmakePathsFromQtChooser());
+ QMap<QString, int> currentAutoVersions;
+ for (QMap<int, BaseQtVersion *>::const_iterator i = m_versions.begin(); i != m_versions.end(); ++i) {
+ if (i.value()->isAutodetected()) {
+ currentAutoVersions.insert(i.value()->qmakeCommand().toString(), i.key());
+ }
+ }
- foreach (const FileName &qmakePath, Utils::filteredUnique(systemQMakes)) {
- BaseQtVersion *version
- = QtVersionFactory::createQtVersionFromQMakePath(qmakePath, false, QLatin1String("PATH"));
- if (version) {
- version->setUnexpandedDisplayName(BaseQtVersion::defaultUnexpandedDisplayName(qmakePath, true));
- m_versions.insert(version->uniqueId(), version);
+ QMap<QString, int>::const_iterator av = currentAutoVersions.begin(); // auto-saved versions
+ FileNameList::const_iterator dv = qmakePathsFromQtChooser.begin(); // detected versions
+ while (av != currentAutoVersions.end() && dv != qmakePathsFromQtChooser.end()) {
+ if (av.key() == dv->toString()) {
+ ++av;
+ ++dv;
+ }
+ else if (av.key() < dv->toString()) {
+ // currently saved automatic version has been removed
+ m_versions.remove(*av);
+ ++av;
}
+ else { // av.key() > dv->toString()
+ // detected version is missing, add it
+ addSystemQtVersion(*dv);
+ ++dv;
+ }
+ }
+
+ while (av != currentAutoVersions.end()) {
+ m_versions.remove(*av);
+ ++av;
+ }
+
+ while (dv != qmakePathsFromQtChooser.end()) {
+ addSystemQtVersion(*dv);
+ ++dv;
}
}

79
debian/patches/botan_system_lib.diff vendored Normal file
View File

@@ -0,0 +1,79 @@
Description: Use the system botan library instead of the bundled one.
Author: Felix Geyer <debfx@ubuntu.com>
Last-Reviewed: 2014-08-19
---
src/libs/ssh/sshcryptofacility.cpp | 5 +++++
src/libs/ssh/sshcryptofacility_p.h | 2 ++
src/libs/ssh/sshkeyexchange.cpp | 6 ++++++
src/libs/ssh/sshkeygenerator.cpp | 5 +++++
src/libs/ssh/sshkeypasswordretriever_p.h | 1 +
5 files changed, 19 insertions(+)
--- a/dist/qtcreator/src/libs/ssh/sshcryptofacility.cpp
+++ b/dist/qtcreator/src/libs/ssh/sshcryptofacility.cpp
@@ -34,6 +34,11 @@
#include "sshpacket_p.h"
#include <botan/botan.h>
+#include <botan/cbc.h>
+#include <botan/dsa.h>
+#include <botan/pkcs8.h>
+#include <botan/pubkey.h>
+#include <botan/rsa.h>
#include <QDebug>
#include <QList>
--- a/dist/qtcreator/src/libs/ssh/sshcryptofacility_p.h
+++ b/dist/qtcreator/src/libs/ssh/sshcryptofacility_p.h
@@ -27,9 +27,11 @@
#define SSHCRYPTOFACILITY_P_H
#include <botan/botan.h>
+#include <botan/hmac.h>
#include <QByteArray>
#include <QScopedPointer>
+#include <QSharedPointer>
namespace QSsh {
namespace Internal {
--- a/dist/qtcreator/src/libs/ssh/sshkeyexchange.cpp
+++ b/dist/qtcreator/src/libs/ssh/sshkeyexchange.cpp
@@ -34,6 +34,12 @@
#include "sshincomingpacket_p.h"
#include <botan/botan.h>
+#include <botan/dh.h>
+#include <botan/dl_group.h>
+#include <botan/dsa.h>
+#include <botan/pem.h>
+#include <botan/pubkey.h>
+#include <botan/rsa.h>
#include <string>
--- a/dist/qtcreator/src/libs/ssh/sshkeygenerator.cpp
+++ b/dist/qtcreator/src/libs/ssh/sshkeygenerator.cpp
@@ -32,6 +32,11 @@
#include "sshpacket_p.h"
#include <botan/botan.h>
+#include <botan/der_enc.h>
+#include <botan/dsa.h>
+#include <botan/pem.h>
+#include <botan/pkcs8.h>
+#include <botan/rsa.h>
#include <QDateTime>
#include <QInputDialog>
--- a/dist/qtcreator/src/libs/ssh/sshkeypasswordretriever_p.h
+++ b/dist/qtcreator/src/libs/ssh/sshkeypasswordretriever_p.h
@@ -27,6 +27,7 @@
#define KEYPASSWORDRETRIEVER_H
#include <botan/botan.h>
+#include <botan/ui.h>
#include <string>

View File

@@ -0,0 +1,109 @@
--- a/dist/qtcreator/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp
+++ b/dist/qtcreator/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp
@@ -165,10 +165,10 @@
proc->setWorkingDirectory(buildDirectoryPath);
proc->setEnvironment(env);
- const QString srcdir = buildDirectory.exists(QLatin1String("CMakeCache.txt")) ?
- QString(QLatin1Char('.')) : sourceDirectory;
+ //const QString srcdir = buildDirectory.exists(QLatin1String("CMakeCache.txt")) ?
+ // QString(QLatin1Char('.')) : sourceDirectory;
QString args;
- Utils::QtcProcess::addArg(&args, srcdir);
+ Utils::QtcProcess::addArg(&args, sourceDirectory);
Utils::QtcProcess::addArgs(&args, arguments);
proc->setCommand(executable, args);
--- a/dist/qtcreator/src/plugins/qmlprojectmanager/qmlproject.cpp
+++ b/dist/qtcreator/src/plugins/qmlprojectmanager/qmlproject.cpp
@@ -288,9 +288,10 @@
bool QmlProject::supportsKit(Kit *k, QString *errorMessage) const
{
Id deviceType = DeviceTypeKitInformation::deviceTypeId(k);
- if (deviceType != ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE) {
+ if (deviceType != ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE &&
+ !deviceType.toString().startsWith(QStringLiteral("UbuntuProjectManager.DeviceTypeId"))) {
if (errorMessage)
- *errorMessage = tr("Device type is not desktop.");
+ *errorMessage = tr("Device type is not desktop or Ubuntu.");
return false;
}
--- a/dist/qtcreator/src/plugins/qmakeprojectmanager/qmakenodes.cpp
+++ b/dist/qtcreator/src/plugins/qmakeprojectmanager/qmakenodes.cpp
@@ -2024,6 +2024,7 @@
result->newVarValues[AndroidExtraLibs] = input.readerExact->values(QLatin1String("ANDROID_EXTRA_LIBS"));
result->newVarValues[IsoIconsVar] = input.readerExact->values(QLatin1String("ISO_ICONS"));
result->newVarValues[QmakeProjectName] = input.readerExact->values(QLatin1String("QMAKE_PROJECT_NAME"));
+ result->newVarValues[UbuntuManifestFile] = input.readerExact->values(QLatin1String("UBUNTU_MANIFEST_FILE"));
result->isDeployable = false;
if (result->projectType == ApplicationTemplate) {
--- a/dist/qtcreator/src/plugins/qmakeprojectmanager/qmakenodes.h
+++ b/dist/qtcreator/src/plugins/qmakeprojectmanager/qmakenodes.h
@@ -107,7 +107,8 @@
AndroidPackageSourceDir,
AndroidExtraLibs,
IsoIconsVar,
- QmakeProjectName
+ QmakeProjectName,
+ UbuntuManifestFile
};
namespace Internal {
--- a/dist/qtcreator/src/plugins/cmakeprojectmanager/cmakeconfigitem.h
+++ b/dist/qtcreator/src/plugins/cmakeprojectmanager/cmakeconfigitem.h
@@ -25,6 +25,8 @@
#pragma once
+#include "cmake_global.h"
+
#include <QByteArray>
#include <QList>
@@ -34,7 +36,7 @@
namespace CMakeProjectManager {
-class CMakeConfigItem {
+class CMAKE_EXPORT CMakeConfigItem {
public:
enum Type { FILEPATH, PATH, BOOL, STRING, INTERNAL, STATIC };
CMakeConfigItem();
--- a/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
+++ b/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
@@ -568,6 +568,11 @@
return m_versions.contains(id);
}
+void QtVersionManager::triggerDocumentationUpdate()
+{
+ updateDocumentation();
+}
+
BaseQtVersion *QtVersionManager::version(int id)
{
QTC_ASSERT(isLoaded(), return 0);
--- a/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.h
+++ b/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.h
@@ -63,6 +63,7 @@
static void removeVersion(BaseQtVersion *version);
static bool isValidId(int id);
+ static void triggerDocumentationUpdate ();
signals:
// content of BaseQtVersion objects with qmake path might have changed
--- a/dist/qtcreator/src/plugins/plugins.pro
+++ b/dist/qtcreator/src/plugins/plugins.pro
@@ -56,7 +56,8 @@
winrt \
qmlprofiler \
updateinfo \
- welcome
+ welcome \
+ ubuntu
DO_NOT_BUILD_QMLDESIGNER = $$(DO_NOT_BUILD_QMLDESIGNER)
isEmpty(DO_NOT_BUILD_QMLDESIGNER) {

View File

@@ -0,0 +1,17 @@
---
src/plugins/coreplugin/icore.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: qtcreator/dist/qtcreator/src/plugins/coreplugin/icore.cpp
===================================================================
--- qtcreator.orig/dist/qtcreator/src/plugins/coreplugin/icore.cpp
+++ qtcreator/dist/qtcreator/src/plugins/coreplugin/icore.cpp
@@ -420,7 +420,7 @@ QString ICore::userResourcePath()
QString ICore::documentationPath()
{
const QString docPath = QLatin1String(Utils::HostOsInfo::isMacHost()
- ? "/../Resources/doc" : "/../share/doc/qtcreator");
+ ? "/../Resources/doc" : "/../share/qtcreator/doc");
return QDir::cleanPath(QCoreApplication::applicationDirPath() + docPath);
}

View File

@@ -0,0 +1,41 @@
Author: Benjamin Zeller <benjamin.zeller@canonical.com>
Description: Fix piling up of Qt configurations.
The current Debian Qt autodetection patch registers a "new" Qt version
on each Qt Creator startup. This fixes it.
Last-Update: 2015-11-02
Forwarded: no
Index: qtcreator/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
===================================================================
--- qtcreator.orig/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
+++ qtcreator/dist/qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
@@ -449,7 +449,7 @@ static void updateSystemQt()
QMap<QString, int> currentAutoVersions;
for (QMap<int, BaseQtVersion *>::const_iterator i = m_versions.begin(); i != m_versions.end(); ++i) {
- if (i.value()->isAutodetected()) {
+ if (i.value()->isAutodetected() && !i.value()->autodetectionSource().startsWith(QLatin1String("SDK."))) {
currentAutoVersions.insert(i.value()->qmakeCommand().toString(), i.key());
}
}
Index: qtcreator/dist/qtcreator/src/libs/utils/buildablehelperlibrary.cpp
===================================================================
--- qtcreator.orig/dist/qtcreator/src/libs/utils/buildablehelperlibrary.cpp
+++ qtcreator/dist/qtcreator/src/libs/utils/buildablehelperlibrary.cpp
@@ -83,8 +83,15 @@ FileName BuildableHelperLibrary::findSys
if (dir.exists(qmake)) {
const QString qmakePath = dir.absoluteFilePath(qmake);
- if (isQmake(qmakePath))
+ if (isQmake(qmakePath)) {
+ QFileInfo fi(qmakePath);
+ if (BuildableHelperLibrary::isQtChooser(fi)) {
+ const QString qtChooserPath = BuildableHelperLibrary::qtChooserToQmakePath(fi.symLinkTarget());
+ if (!qtChooserPath.isEmpty())
+ return FileName::fromString(qtChooserPath);
+ }
return FileName::fromString(qmakePath);
+ }
}
// Prefer qmake-qt5 to qmake-qt4 by sorting the filenames in reverse order.

View File

12
debian/patches/missing_header.diff vendored Normal file
View File

@@ -0,0 +1,12 @@
Index: qtcreator/dist/qtcreator/src/libs/ssh/sshcryptofacility.cpp
===================================================================
--- qtcreator.orig/dist/qtcreator/src/libs/ssh/sshcryptofacility.cpp
+++ qtcreator/dist/qtcreator/src/libs/ssh/sshcryptofacility.cpp
@@ -35,6 +35,7 @@
#include <botan/botan.h>
#include <botan/cbc.h>
+#include <botan/ctr.h>
#include <botan/dsa.h>
#include <botan/pkcs8.h>
#include <botan/pubkey.h>

36
debian/patches/remove_libexec.diff vendored Normal file
View File

@@ -0,0 +1,36 @@
Index: qtcreator/dist/qtcreator/qtcreator.pri
===================================================================
--- qtcreator.orig/dist/qtcreator/qtcreator.pri
+++ qtcreator/dist/qtcreator/qtcreator.pri
@@ -108,7 +108,7 @@ osx {
win32: \
IDE_LIBEXEC_PATH = $$IDE_OUTPUT_PATH/bin
else: \
- IDE_LIBEXEC_PATH = $$IDE_OUTPUT_PATH/libexec/qtcreator
+ IDE_LIBEXEC_PATH = $$IDE_LIBRARY_PATH/libexec
!isEqual(IDE_SOURCE_TREE, $$IDE_OUTPUT_PATH):copydata = 1
LINK_LIBRARY_PATH = $$IDE_BUILD_TREE/$$IDE_LIBRARY_BASENAME/qtcreator
@@ -119,7 +119,7 @@ osx {
win32: \
INSTALL_LIBEXEC_PATH = $$QTC_PREFIX/bin
else: \
- INSTALL_LIBEXEC_PATH = $$QTC_PREFIX/libexec/qtcreator
+ INSTALL_LIBEXEC_PATH = $$INSTALL_LIBRARY_PATH/libexec
INSTALL_DATA_PATH = $$QTC_PREFIX/share/qtcreator
INSTALL_DOC_PATH = $$QTC_PREFIX/share/doc/qtcreator
INSTALL_BIN_PATH = $$QTC_PREFIX/bin
Index: qtcreator/dist/qtcreator/src/plugins/coreplugin/icore.cpp
===================================================================
--- qtcreator.orig/dist/qtcreator/src/plugins/coreplugin/icore.cpp
+++ qtcreator/dist/qtcreator/src/plugins/coreplugin/icore.cpp
@@ -441,7 +441,8 @@ QString ICore::libexecPath()
case Utils::OsTypeLinux:
case Utils::OsTypeOtherUnix:
case Utils::OsTypeOther:
- path = QCoreApplication::applicationDirPath() + QLatin1String("/../libexec/qtcreator");
+ path = QCoreApplication::applicationDirPath()
+ + QLatin1String("/../" IDE_LIBRARY_BASENAME "/qtcreator/libexec");
break;
}
return QDir::cleanPath(path);

54
debian/patches/rpath_nonlinux.diff vendored Normal file
View File

@@ -0,0 +1,54 @@
Author: Pino Toscano <pino@debian.org>
Description: Enable RPATH also on kFreeBSD and Hurd
qtcreator's plugins use RPATH to locate the qtcreator libraries, so enable it
also on kFreeBSD and Hurd.
Last-Update: 2014-08-19
Forwarded: no
---
src/qtcreatorplugin.pri | 2 +-
src/rpath.pri | 2 +-
src/tools/qtcreatorwidgets/qtcreatorwidgets.pro | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
--- a/dist/qtcreator/src/rpath.pri
+++ b/dist/qtcreator/src/rpath.pri
@@ -1,6 +1,6 @@
macx {
QMAKE_LFLAGS += -Wl,-rpath,@loader_path/../,-rpath,@executable_path/../
-} else:linux-* {
+} else:linux-*|glibc-*|hurd-* {
#do the rpath by hand since it's not possible to use ORIGIN in QMAKE_RPATHDIR
# this expands to $ORIGIN (after qmake and make), it does NOT read a qmake var
QMAKE_RPATHDIR += \$\$ORIGIN
--- a/dist/qtcreator/src/qtcreatorplugin.pri
+++ b/dist/qtcreator/src/qtcreatorplugin.pri
@@ -91,7 +91,7 @@ contains(QT_CONFIG, reduce_exports):CONF
TEMPLATE = lib
CONFIG += plugin plugin_with_soname
-linux*:QMAKE_LFLAGS += $$QMAKE_LFLAGS_NOUNDEF
+linux*|glibc-*|hurd-*:QMAKE_LFLAGS += $$QMAKE_LFLAGS_NOUNDEF
!macx {
target.path = $$INSTALL_PLUGIN_PATH
--- a/dist/qtcreator/src/tools/qtcreatorwidgets/qtcreatorwidgets.pro
+++ b/dist/qtcreator/src/tools/qtcreatorwidgets/qtcreatorwidgets.pro
@@ -13,7 +13,7 @@ isEmpty(IDE_LIBRARY_BASENAME) {
IDE_LIBRARY_BASENAME = lib
}
-linux-*||win32 {
+linux-*||win32||glibc-*||hurd-* {
# form abs path to qtcreator lib dir
QTC_LIBS=$$dirname(OUT_PWD)
QTC_LIBS=$$dirname(QTC_LIBS)
@@ -21,7 +21,7 @@ linux-*||win32 {
QTC_LIBS=$$QTC_LIBS/$$IDE_LIBRARY_BASENAME/qtcreator
}
-linux-*{
+linux-*|glibc-*|hurd-*{
QMAKE_RPATHDIR *= $$QTC_LIBS
}

12
debian/patches/series vendored Normal file
View File

@@ -0,0 +1,12 @@
rpath_nonlinux.diff
# Debian patches.
botan_system_lib.diff
always_autotect_qt_versions
fix_qt_version_autodetection.diff
missing_header.diff
fix_documentation_path.diff
# remove_libexec.diff
# Ubuntu patches.
skip_failing_unit_tests.diff
cmake_ubuntuspecificbits.diff

View File

@@ -0,0 +1,32 @@
Index: qtcreator/dist/qtcreator/tests/auto/auto.pro
===================================================================
--- qtcreator.orig/dist/qtcreator/tests/auto/auto.pro 2014-04-08 10:18:58.684264000 +0000
+++ qtcreator/dist/qtcreator/tests/auto/auto.pro 2014-04-08 10:20:30.671316474 +0000
@@ -4,10 +4,8 @@
changeset \
clangstaticanalyzer \
cplusplus \
- debugger \
diff \
- extensionsystem \
externaltool \
environment \
generichighlighter \
profilewriter \
@@ -15,11 +13,13 @@
qtcprocess \
json \
utils \
- filesearch \
mapreduce \
runextensions \
- sdktool \
- valgrind
+ filesearch
+
+!unix:SUBDIRS += debugger
+!unix:SUBDIRS += extensionsystem
+!unix:SUBDIRS += valgrind
qtHaveModule(qml): SUBDIRS += qml
qtHaveModule(quick): SUBDIRS += timeline

5
debian/quiltrc vendored Normal file
View File

@@ -0,0 +1,5 @@
QUILT_PATCHES="debian/patches"
QUILT_PATCH_OPTS="--reject-format=unified"
QUILT_DIFF_ARGS="--no-timestamps --no-index"
QUILT_REFRESH_ARGS="--no-timestamps --no-index -pab --diffstat"
QUILT_DIFF_OPTS="-p"

View File

@@ -1,29 +1,28 @@
-v
-v
-confirm-license
-sysconfdir /etc/xdg
-opensource
-plugin-sql-mysql
-plugin-sql-odbc
-plugin-sql-psql
-plugin-sql-sqlite
-no-sql-sqlite2
-plugin-sql-tds
-system-sqlite
-system-zlib
-sysconfdir /etc/xdg
-opensource
-plugin-sql-mysql
-plugin-sql-odbc
-plugin-sql-psql
-plugin-sql-sqlite
-no-sql-sqlite2
-plugin-sql-tds
-system-sqlite
-system-zlib
-system-libjpeg
-system-libpng
-openssl
-no-rpath
-system-libpng
-openssl
-glib
-verbose
-optimized-qmake
-no-strip
-no-separate-debug-info
-qpa xcb
-xcb
-icu
-accessibility
-no-directfb
-verbose
-optimized-qmake
-no-strip
-no-separate-debug-info
-qpa xcb
-xcb
-icu
-accessibility
-no-directfb
-nomake examples
-nomake tests
-skip qtwayland
@@ -31,5 +30,6 @@
-skip qtsensors
-skip qtenginio
-skip qtlocation
-dbus-linked
-system-libjpeg
-dbus-linked
-system-libjpeg
-R "."

View File

@@ -1,7 +1,7 @@
#!/bin/bash
BINDIR=/usr/ubuntu-sdk-ide/bin
LIBDIR=/usr/ubuntu-sdk-ide/lib/qtcreator
LD_LIBRARY_PATH=$LIBDIR
export LD_LIBRARY_PATH
#LIBDIR=/usr/ubuntu-sdk-ide/lib/qtcreator
#LD_LIBRARY_PATH=$LIBDIR
#export LD_LIBRARY_PATH
$BINDIR/qtcreator -platformtheme appmenu-qt5 ${1+"$@"}

View File

@@ -1,6 +1,6 @@
#!/bin/bash
BINDIR=/usr/ubuntu-sdk-ide/bin
LIBDIR=/usr/ubuntu-sdk-ide/lib/qtcreator
LD_LIBRARY_PATH=$LIBDIR
export LD_LIBRARY_PATH
#LIBDIR=/usr/ubuntu-sdk-ide/lib/qtcreator
#LD_LIBRARY_PATH=$LIBDIR
#export LD_LIBRARY_PATH
$BINDIR/qtcreator -platformtheme appmenu-qt5 ${1+"$@"}