diff options
Diffstat (limited to 'src/lib/qtprofilesetup/qtprofilesetup.cpp')
-rw-r--r-- | src/lib/qtprofilesetup/qtprofilesetup.cpp | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/src/lib/qtprofilesetup/qtprofilesetup.cpp b/src/lib/qtprofilesetup/qtprofilesetup.cpp index fda3c7b7b..c99406358 100644 --- a/src/lib/qtprofilesetup/qtprofilesetup.cpp +++ b/src/lib/qtprofilesetup/qtprofilesetup.cpp @@ -132,6 +132,13 @@ static void addDesignerComponentsModule(QList<QtModuleInfo> &modules) modules << module; } +static QString quotedPath(const QString &str) +{ + return QLatin1Char('"') + + QDir::fromNativeSeparators(str).replace(QLatin1Char('"'), QLatin1String("\\\"")) + + QLatin1Char('"'); +} + static void createModules(Profile &profile, Settings *settings, const QtEnvironment &qtEnvironment) { @@ -335,9 +342,21 @@ static void createModules(Profile &profile, Settings *settings, const QByteArray debugMacro = module.qbsName == QLatin1String("declarative") || qtEnvironment.qtMajorVersion < 5 ? "QT_DECLARATIVE_DEBUG" : "QT_QML_DEBUG"; - propertiesString = "property bool qmlDebugging: false\n" - " cpp.defines: " - "qmlDebugging ? base.concat('" + debugMacro + "') : base"; + + const QString indent = QLatin1String(" "); + QTextStream s(&propertiesString); + s << "property bool qmlDebugging: false" << endl + << indent << "cpp.defines: " + << "qmlDebugging ? base.concat('" + debugMacro + "') : base" << endl; + + s << indent << "property string qmlPath"; + if (qtEnvironment.qmlPath.isEmpty()) + s << endl; + else + s << ": " << quotedPath(qtEnvironment.qmlPath) << endl; + + s << indent << "property string qmlImportsPath: " + << quotedPath(qtEnvironment.qmlImportPath); } if (!module.modulePrefix.isEmpty()) { if (!propertiesString.isEmpty()) |