From b4027e83f10dcfa9c842777138c45e32fb4f205c Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Wed, 18 Dec 2019 10:45:47 +0100 Subject: Doc: Fix default value of enableBundledQt This amends commit 905ee49f. Change-Id: I4faf5a1ef7d2a1dbdbe7ea78eae2e07a4f33ae61 Reviewed-by: Christian Kandeler --- doc/qbs.qdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/qbs.qdoc b/doc/qbs.qdoc index 08a901365..6b1aa0bb2 100644 --- a/doc/qbs.qdoc +++ b/doc/qbs.qdoc @@ -592,7 +592,7 @@ is required to build against the \QBS libraries. \row \li enableBundledQt - \li \c true + \li \c false \li Holds whether the Qt libraries that \QBS depends on will be bundled with \QBS during the \c install step. This option is only implemented on macOS. \row -- cgit v1.2.3 From ee72bf0daea58a7a9a57d7f84f9276ce04de82b2 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Wed, 18 Dec 2019 10:40:23 +0100 Subject: Fix make-release-archives.bat We must set enableBundledQt to true, because its default value changed. Change-Id: I1db53db309f82cb46fdd77eb2dad44ee40401386 Reviewed-by: Christian Kandeler --- scripts/make-release-archives.bat | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/make-release-archives.bat b/scripts/make-release-archives.bat index 867fa773c..0970d2702 100644 --- a/scripts/make-release-archives.bat +++ b/scripts/make-release-archives.bat @@ -68,6 +68,7 @@ subst Q: "%CD%" && Q: qbs build --settings-dir "%builddir%\.settings"^ -f qbs.qbs -d "%builddir%\build"^ -p dist qbs.buildVariant:release project.withDocumentation:false "products.qbs archive.includeTopLevelDir:true"^ + modules.qbsbuildconfig.enableBundledQt:true^ config:release "qbs.installRoot:%builddir%\qbs-windows-x86-%version%" profile:qt^ config:release-64 "qbs.installRoot:%builddir%\qbs-windows-x86_64-%version%" profile:qt64 || exit /b -- cgit v1.2.3 From 96c19a97306f058f8cb8eaf925bf6d0120376ccd Mon Sep 17 00:00:00 2001 From: Richard Weickelt Date: Thu, 2 Jan 2020 12:21:27 +0100 Subject: Bump version to 1.15.1 Change-Id: If821584c33182167931bc62fdc7f5701be009fe1 Reviewed-by: Christian Kandeler --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 141f2e805..ace44233b 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.15.0 +1.15.1 -- cgit v1.2.3 From 872c115f8b6fb213d787bf886709e564eecb37a8 Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Sat, 4 Jan 2020 19:28:54 +0200 Subject: MSVC: Suppress "Generating code" messages Appears when passing /LTCG in cpp.linkerFlags. Change-Id: I4282ae51355a178a85985642a86bc01433bb15db Reviewed-by: Ivan Komissarov Reviewed-by: Christian Kandeler --- share/qbs/modules/cpp/msvc.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/share/qbs/modules/cpp/msvc.js b/share/qbs/modules/cpp/msvc.js index 8b7864400..7d8e26121 100644 --- a/share/qbs/modules/cpp/msvc.js +++ b/share/qbs/modules/cpp/msvc.js @@ -526,7 +526,10 @@ function prepareLinker(project, product, inputs, outputs, input, output) { cmd.responseFileUsagePrefix = '@'; cmd.stdoutFilterFunction = function(output) { res = output.replace(/^.*performing full link.*\s*/, ""); - return res.replace(/^ *Creating library.*\r\n$/, ""); + res = res.replace(/^ *Creating library.*\s*/, ""); + res = res.replace(/^\s*Generating code\s*/, ""); + res = res.replace(/^\s*Finished generating code\s*/, ""); + return res; }; commands.push(cmd); -- cgit v1.2.3 From de28c042fa3522919cb7a8bc88ffd4be98390253 Mon Sep 17 00:00:00 2001 From: BogDan Vatra Date: Tue, 7 Jan 2020 11:08:25 +0200 Subject: Fix version parsing Latest debian java 8 adds some extra characters at the end of the version ("javac 1.8.0_242-ea"), which confuses the existing regex. Change-Id: I96acb978d95bdb22c71da4593fe5fae4d417e5f3 Reviewed-by: Christian Kandeler --- share/qbs/modules/java/utils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/qbs/modules/java/utils.js b/share/qbs/modules/java/utils.js index ae0c1356b..0e11b7d3e 100644 --- a/share/qbs/modules/java/utils.js +++ b/share/qbs/modules/java/utils.js @@ -136,7 +136,7 @@ function findJdkVersion(compilerFilePath) { var p = new Process(); try { p.exec(compilerFilePath, ["-version"]); - var re = /^javac (([0-9]+(?:\.[0-9]+){0,2})(_([0-9]+))?)$/m; + var re = /^javac (([0-9]+(?:\.[0-9]+){0,2})(_([0-9]+))?)(.*)?$/m; var match = p.readStdErr().trim().match(re); if (!match) match = p.readStdOut().trim().match(re); -- cgit v1.2.3 From 5c28285248fa55167f94fc41e883e8c1f4ac0450 Mon Sep 17 00:00:00 2001 From: Ivan Komissarov Date: Thu, 2 Jan 2020 02:47:06 +0300 Subject: Fix reading .prl files located in macOS frameworks with Qt 5.14 Since Qt 5.14, prl files were moved into 'Resources' folder within a framework Change-Id: Ia067789032e3ac9d3bde1ad5929f2436f9341a71 Reviewed-by: Christian Kandeler --- share/qbs/module-providers/Qt/setup-qt.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/share/qbs/module-providers/Qt/setup-qt.js b/share/qbs/module-providers/Qt/setup-qt.js index 3ddc214d3..b5f245a12 100644 --- a/share/qbs/module-providers/Qt/setup-qt.js +++ b/share/qbs/module-providers/Qt/setup-qt.js @@ -631,11 +631,14 @@ function doSetupLibraries(modInfo, qtProps, debugBuild, nonExistingPrlFiles) { var prlFilePath = modInfo.isPlugin ? FileInfo.joinPaths(qtProps.pluginPath, modInfo.pluginData.type) : (modInfo.libDir ? modInfo.libDir : qtProps.libraryPath); + var libDir = prlFilePath; if (isFramework(modInfo, qtProps)) { prlFilePath = FileInfo.joinPaths(prlFilePath, libraryBaseName(modInfo, qtProps, false) + ".framework"); + libDir = prlFilePath; + if (Utilities.versionCompare(qtProps.qtVersion, "5.14") >= 0) + prlFilePath = FileInfo.joinPaths(prlFilePath, "Resources"); } - var libDir = prlFilePath; var baseName = libraryBaseName(modInfo, qtProps, debugBuild); if (!qtProps.mkspecName.startsWith("win") && !isFramework(modInfo, qtProps)) baseName = "lib" + baseName; -- cgit v1.2.3 From 9cc149852645455ad481c1fef521622d6fd79791 Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Wed, 8 Jan 2020 12:26:56 +0200 Subject: MSVC: Avoid bad execution attempt of powershell If the user opted in for telemetry, vsdevcmd.bat tries to execute powershell. The batch file clears the PATH, so powershell cannot be used. Change-Id: I80e457aebea9d8c1c8ba0415d50d809bfd0bd4da Reviewed-by: Ivan Komissarov Reviewed-by: Joerg Bornemann --- src/lib/corelib/tools/vsenvironmentdetector.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib/corelib/tools/vsenvironmentdetector.cpp b/src/lib/corelib/tools/vsenvironmentdetector.cpp index f8f98e7b7..2490a5cdb 100644 --- a/src/lib/corelib/tools/vsenvironmentdetector.cpp +++ b/src/lib/corelib/tools/vsenvironmentdetector.cpp @@ -233,6 +233,8 @@ void VsEnvironmentDetector::writeBatchFile(QIODevice *device, const QString &vcv << QStringLiteral("WindowsSDKVersion") << QStringLiteral("VSINSTALLDIR"); QTextStream s(device); s << "@echo off" << endl; + // Avoid execution of powershell (in vsdevcmd.bat), which is not in the cleared PATH + s << "set VSCMD_SKIP_SENDTELEMETRY=1" << endl; for (const MSVC *msvc : msvcs) { s << "echo --" << msvc->architecture << "--" << endl << "setlocal" << endl; -- cgit v1.2.3 From e67398af5c09fc51f90db4b519805b150db5f3ac Mon Sep 17 00:00:00 2001 From: Marius Sincovici Date: Thu, 9 Jan 2020 20:14:28 +0100 Subject: Fix library not found for -lqbsscriptengine_debug on macOS MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On macOS the qbsscriptengine library doesn’t contain the suffix _debug when compiling in debug mode. Fix linker error by removing the suffix. Fixes: QTCREATORBUG-23456 Change-Id: Idca2b36e87a652dac52c45e75b6edde6b3afd322 Reviewed-by: Ivan Komissarov Reviewed-by: Christian Kandeler --- src/lib/scriptengine/use_scriptengine.pri | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/lib/scriptengine/use_scriptengine.pri b/src/lib/scriptengine/use_scriptengine.pri index 6450e171f..e8f82a949 100644 --- a/src/lib/scriptengine/use_scriptengine.pri +++ b/src/lib/scriptengine/use_scriptengine.pri @@ -3,7 +3,15 @@ isEmpty(QBSLIBDIR) { QBSLIBDIR = $$shadowed($$PWD/../../../$${QBS_LIBRARY_DIRNAME}) } - LIBS += -L$$QBSLIBDIR -lqbsscriptengine$$qtPlatformTargetSuffix() + + LIBS += -L$$QBSLIBDIR + macos { + LIBS += -lqbsscriptengine + } + else { + LIBS += -lqbsscriptengine$$qtPlatformTargetSuffix() + } + } INCLUDEPATH += \ -- cgit v1.2.3 From bf059105305fd33440940338a7aeb67ec75cb18e Mon Sep 17 00:00:00 2001 From: Richard Weickelt Date: Tue, 4 Feb 2020 20:35:59 +0100 Subject: Fix probes referencing project properties This patch fixes a regression introduced in e8637511. Probes in Project items could no longer reference project properties by writing project.xxx on the right hand side of a property assignment expression. Change-Id: I7d04c71f4c493481a00411f12666bd6c2caa8caa Reviewed-by: Christian Kandeler --- src/lib/corelib/language/moduleloader.cpp | 4 +- .../testdata/probeProperties/probeProperties.qbs | 51 +++++++++++++--------- tests/auto/blackbox/tst_blackbox.cpp | 3 ++ 3 files changed, 37 insertions(+), 21 deletions(-) diff --git a/src/lib/corelib/language/moduleloader.cpp b/src/lib/corelib/language/moduleloader.cpp index 9c8f9da1d..9c7f2b3a4 100644 --- a/src/lib/corelib/language/moduleloader.cpp +++ b/src/lib/corelib/language/moduleloader.cpp @@ -688,6 +688,9 @@ void ModuleLoader::handleProject(ModuleLoaderResult *loadResult, m_qbsVersion.toString())); } + for (Item * const child : projectItem->children()) + child->setScope(projectContext.scope); + resolveProbes(&dummyProductContext, projectItem); projectContext.topLevelProject->probes << dummyProductContext.info.probes; @@ -695,7 +698,6 @@ void ModuleLoader::handleProject(ModuleLoaderResult *loadResult, QList multiplexedProducts; for (Item * const child : projectItem->children()) { - child->setScope(projectContext.scope); if (child->type() == ItemType::Product) multiplexedProducts << multiplexProductItem(&dummyProductContext, child); } diff --git a/tests/auto/blackbox/testdata/probeProperties/probeProperties.qbs b/tests/auto/blackbox/testdata/probeProperties/probeProperties.qbs index 9846eacef..ce89d11f4 100644 --- a/tests/auto/blackbox/testdata/probeProperties/probeProperties.qbs +++ b/tests/auto/blackbox/testdata/probeProperties/probeProperties.qbs @@ -1,29 +1,40 @@ import qbs.Probes -CppApplication { - Probes.PathProbe { - id: probe1 - names: ["bin/tool"] - platformSearchPaths: [product.sourceDirectory] - } +Project { - Probes.PathProbe { - id: probe2 - names: ["tool"] - platformSearchPaths: [product.sourceDirectory + "/bin"] - } + CppApplication { + Probes.PathProbe { + id: probe1 + names: ["bin/tool"] + platformSearchPaths: [product.sourceDirectory] + } - targetName: { - console.info("probe1.fileName=" + probe1.fileName); - console.info("probe1.path=" + probe1.path); - console.info("probe1.filePath=" + probe1.filePath); + Probes.PathProbe { + id: probe2 + names: ["tool"] + platformSearchPaths: [product.sourceDirectory + "/bin"] + } - console.info("probe2.fileName=" + probe2.fileName); - console.info("probe2.path=" + probe2.path); - console.info("probe2.filePath=" + probe2.filePath); + targetName: { + console.info("probe1.fileName=" + probe1.fileName); + console.info("probe1.path=" + probe1.path); + console.info("probe1.filePath=" + probe1.filePath); - return name; + console.info("probe2.fileName=" + probe2.fileName); + console.info("probe2.path=" + probe2.path); + console.info("probe2.filePath=" + probe2.filePath); + + console.info("probe3.fileName=" + probe3.fileName); + console.info("probe3.path=" + probe3.path); + console.info("probe3.filePath=" + probe3.filePath); + return name; + } + } + + Probes.PathProbe { + id: probe3 + names: ["tool"] + platformSearchPaths: [project.sourceDirectory + "/bin"] } - files: ["main.c"] } diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp index 72f610364..9cdb83fd2 100644 --- a/tests/auto/blackbox/tst_blackbox.cpp +++ b/tests/auto/blackbox/tst_blackbox.cpp @@ -3009,6 +3009,9 @@ void TestBlackbox::probeProperties() QVERIFY2(m_qbsStdout.contains("probe2.fileName=tool"), m_qbsStdout.constData()); QVERIFY2(m_qbsStdout.contains("probe2.path=" + dir + "/bin"), m_qbsStdout.constData()); QVERIFY2(m_qbsStdout.contains("probe2.filePath=" + dir + "/bin/tool"), m_qbsStdout.constData()); + QVERIFY2(m_qbsStdout.contains("probe3.fileName=tool"), m_qbsStdout.constData()); + QVERIFY2(m_qbsStdout.contains("probe3.path=" + dir + "/bin"), m_qbsStdout.constData()); + QVERIFY2(m_qbsStdout.contains("probe3.filePath=" + dir + "/bin/tool"), m_qbsStdout.constData()); } void TestBlackbox::probesAndShadowProducts() -- cgit v1.2.3