diff options
author | Joerg Bornemann <joerg.bornemann@theqtcompany.com> | 2015-05-18 17:51:39 +0200 |
---|---|---|
committer | Joerg Bornemann <joerg.bornemann@theqtcompany.com> | 2015-05-19 08:35:10 +0000 |
commit | e703ca1c84b0f51f3c9d82bdfe7bc646afcb9582 (patch) | |
tree | 9ecd5bdf9248cc5dd4e915ea8f7dec19bdd42076 /src/lib/qtprofilesetup | |
parent | 5a462306f2a156b7f99796906e68eee36a8a879f (diff) |
fix setup-qt for static builds of Qt4
Treat every Qt4 module as static library if the Qt build is static.
Change-Id: If31f45c775aab583a0bfb68345c9d5b977d8de97
Task-number: QBS-804
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Diffstat (limited to 'src/lib/qtprofilesetup')
-rw-r--r-- | src/lib/qtprofilesetup/qtenvironment.h | 6 | ||||
-rw-r--r-- | src/lib/qtprofilesetup/qtmoduleinfo.cpp | 8 | ||||
-rw-r--r-- | src/lib/qtprofilesetup/qtprofilesetup.cpp | 6 |
3 files changed, 15 insertions, 5 deletions
diff --git a/src/lib/qtprofilesetup/qtenvironment.h b/src/lib/qtprofilesetup/qtenvironment.h index b8eeee16e..f7b56c414 100644 --- a/src/lib/qtprofilesetup/qtenvironment.h +++ b/src/lib/qtprofilesetup/qtenvironment.h @@ -38,6 +38,11 @@ namespace qbs { class QBS_EXPORT QtEnvironment { public: + QtEnvironment() + : staticBuild(false), frameworkBuild(false) + { + } + QString installPrefixPath; QString libraryPath; QString includePath; @@ -62,6 +67,7 @@ public: int qtMajorVersion; int qtMinorVersion; int qtPatchVersion; + bool staticBuild; bool frameworkBuild; }; diff --git a/src/lib/qtprofilesetup/qtmoduleinfo.cpp b/src/lib/qtprofilesetup/qtmoduleinfo.cpp index d190ae64a..87db445b7 100644 --- a/src/lib/qtprofilesetup/qtmoduleinfo.cpp +++ b/src/lib/qtprofilesetup/qtmoduleinfo.cpp @@ -472,8 +472,12 @@ QList<QtModuleInfo> allQt4Modules(const QtEnvironment &qtEnvironment) } QSet<QString> nonExistingPrlFiles; - for (int i = 0; i < modules.count(); ++i) - modules[i].setupLibraries(qtEnvironment, &nonExistingPrlFiles); + for (int i = 0; i < modules.count(); ++i) { + QtModuleInfo &module = modules[i]; + if (qtEnvironment.staticBuild) + module.isStaticLibrary = true; + module.setupLibraries(qtEnvironment, &nonExistingPrlFiles); + } replaceQtLibNamesWithFilePath(&modules, qtEnvironment); return modules; diff --git a/src/lib/qtprofilesetup/qtprofilesetup.cpp b/src/lib/qtprofilesetup/qtprofilesetup.cpp index 176bcce01..de5240a85 100644 --- a/src/lib/qtprofilesetup/qtprofilesetup.cpp +++ b/src/lib/qtprofilesetup/qtprofilesetup.cpp @@ -303,10 +303,10 @@ void doSetupQtProfile(const QString &profileName, Settings *settings, const QtEnvironment &_qtEnvironment) { QtEnvironment qtEnvironment = _qtEnvironment; - const bool staticBuild = checkForStaticBuild(qtEnvironment); + qtEnvironment.staticBuild = checkForStaticBuild(qtEnvironment); // determine whether user apps require C++11 - if (qtEnvironment.qtConfigItems.contains(QLatin1String("c++11")) && staticBuild) + if (qtEnvironment.qtConfigItems.contains(QLatin1String("c++11")) && qtEnvironment.staticBuild) qtEnvironment.configItems.append(QLatin1String("c++11")); Profile profile(profileName, settings); @@ -326,7 +326,7 @@ void doSetupQtProfile(const QString &profileName, Settings *settings, profile.setValue(settingsTemplate.arg(QLatin1String("buildVariant")), qtEnvironment.buildVariant); // TODO: Remove in 1.5 profile.setValue(settingsTemplate.arg(QLatin1String("availableBuildVariants")), qtEnvironment.buildVariant); - profile.setValue(settingsTemplate.arg(QLatin1String("staticBuild")), staticBuild); + profile.setValue(settingsTemplate.arg(QLatin1String("staticBuild")), qtEnvironment.staticBuild); // Set the minimum operating system versions appropriate for this Qt version const QString windowsVersion = guessMinimumWindowsVersion(qtEnvironment); |