From a83b3f5024073ab7b512c128cc164b0a0a18e85f Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Mon, 26 May 2014 13:57:55 +0200 Subject: setup-qt: fix module name for ActiveQt Preparation for fixing QBS-598. Change-Id: I039d3276eddf0eaf047b1b50f72d5b1976a47152 Reviewed-by: Christian Kandeler --- src/lib/qtprofilesetup/qtprofilesetup.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/lib/qtprofilesetup/qtprofilesetup.cpp') diff --git a/src/lib/qtprofilesetup/qtprofilesetup.cpp b/src/lib/qtprofilesetup/qtprofilesetup.cpp index 31b6950a1..9774ef39d 100644 --- a/src/lib/qtprofilesetup/qtprofilesetup.cpp +++ b/src/lib/qtprofilesetup/qtprofilesetup.cpp @@ -66,6 +66,16 @@ struct QtModuleInfo bool hasLibrary; }; +static QString qtModuleName(const QtModuleInfo &module) +{ + if (module.name.startsWith(QLatin1String("Qt"))) + return module.name.mid(2); // Strip off "Qt". + else if (module.name.startsWith(QLatin1String("QAx"))) + return module.name.mid(1); // Strip off "Q". + else + return module.name; +} + static void copyTemplateFile(const QString &fileName, const QString &targetDirectory, const QString &profileName) { @@ -304,7 +314,7 @@ static void createModules(Profile &profile, Settings *settings, .arg(profile.name(), moduleFile.fileName(), moduleFile.errorString())); } QByteArray content = moduleFile.readAll(); - content.replace("### name", '"' + module.name.mid(2).toUtf8() + '"'); // Strip off "Qt". + content.replace("### name", '"' + qtModuleName(module).toUtf8() + '"'); content.replace("### has library", module.hasLibrary ? "true" : "false"); replaceListPlaceholder(content, "### dependencies", module.dependencies); replaceListPlaceholder(content, "### includes", module.includePaths); -- cgit v1.2.3 From 966acf24274595e9c1786255e6c5855e91ff9bf4 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Mon, 26 May 2014 14:01:37 +0200 Subject: setup-qt: fix module prefix for ActiveQt Task-number: QBS-598 Change-Id: I3c722239bf51317e55a028680c03c31629f5ed0b Reviewed-by: Christian Kandeler --- src/lib/qtprofilesetup/qtprofilesetup.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'src/lib/qtprofilesetup/qtprofilesetup.cpp') diff --git a/src/lib/qtprofilesetup/qtprofilesetup.cpp b/src/lib/qtprofilesetup/qtprofilesetup.cpp index 9774ef39d..1e50ba08b 100644 --- a/src/lib/qtprofilesetup/qtprofilesetup.cpp +++ b/src/lib/qtprofilesetup/qtprofilesetup.cpp @@ -59,6 +59,7 @@ struct QtModuleInfo QtModuleInfo() : hasLibrary(true) {} + QString modulePrefix; // default is empty and means "Qt". QString name; // As in the path to the headers and ".name" in the pri files. QString qbsName; // Lower-case version without "qt" prefix. QStringList dependencies; // qbs names. @@ -200,12 +201,19 @@ static void createModules(Profile &profile, Settings *settings, << QtModuleInfo(QLatin1String("QtTest"), QLatin1String("testlib")) << QtModuleInfo(QLatin1String("QtTest"), QLatin1String("testlib-private"), QStringList() << QLatin1String("testlib")) - << QtModuleInfo(QLatin1String("QAxContainer"), QLatin1String("axcontainer")) - << QtModuleInfo(QLatin1String("QAxServer"), QLatin1String("axserver")) << QtModuleInfo(QLatin1String("QtDBus"), QLatin1String("dbus")) << QtModuleInfo(QLatin1String("QtDBus"), QLatin1String("dbus-private"), QStringList() << QLatin1String("dbus")); + QtModuleInfo axcontainer(QLatin1String("QAxContainer"), QLatin1String("axcontainer")); + axcontainer.modulePrefix = QLatin1String("Q"); + modules << axcontainer; + + QtModuleInfo axserver = axcontainer; + axserver.name = QLatin1String("QAxServer"); + axserver.qbsName = QLatin1String("axserver"); + modules << axserver; + QtModuleInfo designerComponentsPrivate(QLatin1String("QtDesignerComponents"), QLatin1String("designercomponents-private"), QStringList() << QLatin1String("gui-private") << QLatin1String("designer-private")); @@ -328,6 +336,11 @@ static void createModules(Profile &profile, Settings *settings, " cpp.defines: " "qmlDebugging ? base.concat('" + debugMacro + "') : base"; } + if (!module.modulePrefix.isEmpty()) { + if (!propertiesString.isEmpty()) + propertiesString += "\n "; + propertiesString += "qtModulePrefix: \"" + module.modulePrefix.toUtf8() + '"'; + } content.replace("### special properties", propertiesString); moduleFile.resize(0); moduleFile.write(content); -- cgit v1.2.3 From b300372f7e6bb106e8b77adebaa40bfbfebebd3a Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Mon, 26 May 2014 14:05:14 +0200 Subject: setup-qt: mark ActiveQt libs as static for Qt4 Task-number: QBS-598 Change-Id: I2c453da06b927b120bcdfbecc369bb8063d27fe6 Reviewed-by: Christian Kandeler --- src/lib/qtprofilesetup/qtprofilesetup.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/lib/qtprofilesetup/qtprofilesetup.cpp') diff --git a/src/lib/qtprofilesetup/qtprofilesetup.cpp b/src/lib/qtprofilesetup/qtprofilesetup.cpp index 1e50ba08b..fda3c7b7b 100644 --- a/src/lib/qtprofilesetup/qtprofilesetup.cpp +++ b/src/lib/qtprofilesetup/qtprofilesetup.cpp @@ -50,7 +50,8 @@ struct QtModuleInfo QtModuleInfo(const QString &name, const QString &qbsName, const QStringList &deps = QStringList()) : name(name), qbsName(qbsName), dependencies(deps), - hasLibrary(!qbsName.endsWith(QLatin1String("-private"))) + hasLibrary(!qbsName.endsWith(QLatin1String("-private"))), + isStaticLibrary(false) { const QString coreModule = QLatin1String("core"); if (qbsName != coreModule && !dependencies.contains(coreModule)) @@ -65,6 +66,7 @@ struct QtModuleInfo QStringList dependencies; // qbs names. QStringList includePaths; bool hasLibrary; + bool isStaticLibrary; }; static QString qtModuleName(const QtModuleInfo &module) @@ -207,6 +209,7 @@ static void createModules(Profile &profile, Settings *settings, QtModuleInfo axcontainer(QLatin1String("QAxContainer"), QLatin1String("axcontainer")); axcontainer.modulePrefix = QLatin1String("Q"); + axcontainer.isStaticLibrary = true; modules << axcontainer; QtModuleInfo axserver = axcontainer; @@ -341,6 +344,11 @@ static void createModules(Profile &profile, Settings *settings, propertiesString += "\n "; propertiesString += "qtModulePrefix: \"" + module.modulePrefix.toUtf8() + '"'; } + if (module.isStaticLibrary) { + if (!propertiesString.isEmpty()) + propertiesString += "\n "; + propertiesString += "isStaticLibrary: true"; + } content.replace("### special properties", propertiesString); moduleFile.resize(0); moduleFile.write(content); -- cgit v1.2.3