aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/qtprofilesetup
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@theqtcompany.com>2015-05-18 17:51:39 +0200
committerJoerg Bornemann <joerg.bornemann@theqtcompany.com>2015-05-19 08:35:10 +0000
commite703ca1c84b0f51f3c9d82bdfe7bc646afcb9582 (patch)
tree9ecd5bdf9248cc5dd4e915ea8f7dec19bdd42076 /src/lib/qtprofilesetup
parent5a462306f2a156b7f99796906e68eee36a8a879f (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.h6
-rw-r--r--src/lib/qtprofilesetup/qtmoduleinfo.cpp8
-rw-r--r--src/lib/qtprofilesetup/qtprofilesetup.cpp6
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);