diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2018-01-12 12:50:42 +0100 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2018-01-15 15:54:18 +0000 |
commit | d9b6a84900552b55117c8034743964726c2bc102 (patch) | |
tree | 26f8bf0ce54c3998cfa7e2dccdaaa090d3235cbe | |
parent | b08481ec22ffb42f6ce36ccdee57c60724c44bf4 (diff) |
Qt module templates: Fix for Qt 4
- Qt.phonon is special.
- QT_ARCH has bogus value on Windows.
Change-Id: I2f429463acb70a0871f9557c8124e980639e4698
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
-rw-r--r-- | src/lib/qtprofilesetup/qtmoduleinfo.cpp | 5 | ||||
-rw-r--r-- | src/lib/qtprofilesetup/qtprofilesetup.cpp | 5 | ||||
-rw-r--r-- | src/lib/qtprofilesetup/templates/QtModule.qbs | 2 | ||||
-rw-r--r-- | src/lib/qtprofilesetup/templates/core.qbs | 2 | ||||
-rw-r--r-- | src/lib/qtprofilesetup/templates/phonon.qbs | 19 |
5 files changed, 30 insertions, 3 deletions
diff --git a/src/lib/qtprofilesetup/qtmoduleinfo.cpp b/src/lib/qtprofilesetup/qtmoduleinfo.cpp index 28152ddd8..3cebc25a6 100644 --- a/src/lib/qtprofilesetup/qtmoduleinfo.cpp +++ b/src/lib/qtprofilesetup/qtmoduleinfo.cpp @@ -108,6 +108,8 @@ QtModuleInfo::QtModuleInfo(const QString &name, const QString &qbsName, const QS QString QtModuleInfo::moduleNameWithoutPrefix() const { + if (name == QLatin1String("Phonon")) + return QLatin1String("phonon"); if (modulePrefix.isEmpty() && name.startsWith(QLatin1String("Qt"))) return name.mid(2); // Strip off "Qt". if (name.startsWith(modulePrefix)) @@ -141,7 +143,8 @@ QString QtModuleInfo::libraryBaseName(const QtEnvironment &qtEnvironment, // Some modules use a different naming scheme, so it doesn't get boring. const bool libNameBroken = name == QLatin1String("Enginio") - || name == QLatin1String("DataVisualization"); + || name == QLatin1String("DataVisualization") + || name == QLatin1String("Phonon"); QString libName = modulePrefix.isEmpty() && !libNameBroken ? QLatin1String("Qt") : modulePrefix; if (qtEnvironment.qtMajorVersion >= 5 && !isFramework(qtEnvironment) && !libNameBroken) diff --git a/src/lib/qtprofilesetup/qtprofilesetup.cpp b/src/lib/qtprofilesetup/qtprofilesetup.cpp index 8e401f2bb..e76e98b60 100644 --- a/src/lib/qtprofilesetup/qtprofilesetup.cpp +++ b/src/lib/qtprofilesetup/qtprofilesetup.cpp @@ -152,6 +152,11 @@ static QString extractQbsArch(const QtEnvironment &qtEnv) QString qbsArch = canonicalArchitecture(qtEnv.architecture); if (qbsArch == QLatin1String("arm") && qtEnv.mkspecPath.contains(QLatin1String("android"))) qbsArch = QLatin1String("armv7a"); + + // Qt4 has "QT_ARCH = windows" in qconfig.pri for both MSVC and mingw. + if (qbsArch == QLatin1String("windows")) + qbsArch = QString(); + return qbsArch; } diff --git a/src/lib/qtprofilesetup/templates/QtModule.qbs b/src/lib/qtprofilesetup/templates/QtModule.qbs index 6291bae01..8b7de3675 100644 --- a/src/lib/qtprofilesetup/templates/QtModule.qbs +++ b/src/lib/qtprofilesetup/templates/QtModule.qbs @@ -2,7 +2,7 @@ import qbs 1.0 import qbs.FileInfo Module { - condition: !qbs.architecture || architecture === qbs.architecture + condition: !qbs.architecture || !architecture || architecture === qbs.architecture Depends { name: "cpp" } Depends { name: "Qt.core" } diff --git a/src/lib/qtprofilesetup/templates/core.qbs b/src/lib/qtprofilesetup/templates/core.qbs index 92395d07b..cf79b6837 100644 --- a/src/lib/qtprofilesetup/templates/core.qbs +++ b/src/lib/qtprofilesetup/templates/core.qbs @@ -8,7 +8,7 @@ import "moc.js" as Moc import "qdoc.js" as Qdoc Module { - condition: !qbs.architecture || architecture === qbs.architecture + condition: !qbs.architecture || !architecture || architecture === qbs.architecture id: qtcore diff --git a/src/lib/qtprofilesetup/templates/phonon.qbs b/src/lib/qtprofilesetup/templates/phonon.qbs index ea8434783..34bd51d9e 100644 --- a/src/lib/qtprofilesetup/templates/phonon.qbs +++ b/src/lib/qtprofilesetup/templates/phonon.qbs @@ -4,6 +4,25 @@ import '../QtModule.qbs' as QtModule QtModule { qtModuleName: "phonon" Depends { name: "Qt"; submodules: ['core'] } + + architecture: @arch@ + hasLibrary: @has_library@ + staticLibsDebug: @staticLibsDebug@ + staticLibsRelease: @staticLibsRelease@ + dynamicLibsDebug: @dynamicLibsDebug@ + dynamicLibsRelease: @dynamicLibsRelease@ + linkerFlagsDebug: @linkerFlagsDebug@ + linkerFlagsRelease: @linkerFlagsRelease@ + frameworksDebug: @frameworksDebug@ + frameworksRelease: @frameworksRelease@ + frameworkPathsDebug: @frameworkPathsDebug@ + frameworkPathsRelease: @frameworkPathsRelease@ + libNameForLinkerDebug: @libNameForLinkerDebug@ + libNameForLinkerRelease: @libNameForLinkerRelease@ + libFilePathDebug: @libFilePathDebug@ + libFilePathRelease: @libFilePathRelease@ cpp.defines: @defines@ cpp.includePaths: @includes@ + cpp.libraryPaths: @libraryPaths@ + @special_properties@ } |