aboutsummaryrefslogtreecommitdiffstats
path: root/qbs
diff options
context:
space:
mode:
Diffstat (limited to 'qbs')
-rw-r--r--qbs/imports/QtcLibrary.qbs5
-rw-r--r--qbs/imports/QtcPlugin.qbs7
-rw-r--r--qbs/imports/QtcProduct.qbs11
-rw-r--r--qbs/imports/QtcTool.qbs1
-rw-r--r--qbs/modules/libclang/functions.js9
-rw-r--r--qbs/modules/libclang/libclang.qbs9
-rw-r--r--qbs/modules/qbsbuildconfig/qbsbuildconfig.qbs4
-rw-r--r--qbs/modules/qtc/qtc.qbs15
8 files changed, 38 insertions, 23 deletions
diff --git a/qbs/imports/QtcLibrary.qbs b/qbs/imports/QtcLibrary.qbs
index af6eb04bad..8ea8a6d2df 100644
--- a/qbs/imports/QtcLibrary.qbs
+++ b/qbs/imports/QtcLibrary.qbs
@@ -1,10 +1,11 @@
import qbs 1.0
+import qbs.FileInfo
import QtcFunctions
QtcProduct {
type: ["dynamiclibrary", "dynamiclibrary_symlink", "qtc.dev-module"]
installDir: qtc.ide_library_path
- installTags: ["dynamiclibrary", "dynamiclibrary_symlink"]
+ installTags: ["dynamiclibrary", "dynamiclibrary_symlink", "debuginfo_dll"]
useNonGuiPchFile: true
Depends {
condition: qtc.testsEnabled
@@ -12,7 +13,7 @@ QtcProduct {
}
targetName: QtcFunctions.qtLibraryName(qbs, name)
- destinationDirectory: qtc.ide_library_path
+ destinationDirectory: FileInfo.joinPaths(project.buildDirectory, qtc.ide_library_path)
cpp.linkerFlags: {
var flags = base;
diff --git a/qbs/imports/QtcPlugin.qbs b/qbs/imports/QtcPlugin.qbs
index f72dd5b352..7606b02504 100644
--- a/qbs/imports/QtcPlugin.qbs
+++ b/qbs/imports/QtcPlugin.qbs
@@ -5,18 +5,15 @@ import QtcFunctions
QtcProduct {
type: ["dynamiclibrary", "pluginSpec", "qtc.dev-module"]
installDir: qtc.ide_plugin_path
- installTags: ["dynamiclibrary"]
+ installTags: ["dynamiclibrary", "debuginfo_dll"]
useGuiPchFile: true
property var pluginJsonReplacements
property var pluginRecommends: []
property var pluginTestDepends: []
- property string minimumQtVersion: "5.6.2"
- condition: QtcFunctions.versionIsAtLeast(Qt.core.version, minimumQtVersion)
-
targetName: QtcFunctions.qtLibraryName(qbs, name)
- destinationDirectory: qtc.ide_plugin_path
+ destinationDirectory: FileInfo.joinPaths(project.buildDirectory, qtc.ide_plugin_path)
Depends { name: "ExtensionSystem" }
Depends { name: "pluginjson" }
diff --git a/qbs/imports/QtcProduct.qbs b/qbs/imports/QtcProduct.qbs
index 4e3c8b0d49..fc6c2502e4 100644
--- a/qbs/imports/QtcProduct.qbs
+++ b/qbs/imports/QtcProduct.qbs
@@ -8,7 +8,7 @@ Product {
version: qtc.qtcreator_version
property bool install: true
property string installDir
- property string installSourceBase
+ property string installSourceBase: destinationDirectory
property stringList installTags: type
property string fileName: FileInfo.fileName(sourceDirectory) + ".qbs"
property bool useNonGuiPchFile: false
@@ -20,6 +20,7 @@ Product {
Depends { name: "cpp" }
Depends { name: "qtc" }
Depends { name: product.name + " dev headers"; required: false }
+ Depends { name: "Qt.core"; versionAtLeast: "5.6.2" }
// TODO: Should fall back to what came from Qt.core for Qt < 5.7, but we cannot express that
// atm. Conditionally pulling in a module that sets the property is also not possible,
@@ -30,14 +31,16 @@ Product {
condition: qbs.toolchain.contains("gcc") && !qbs.toolchain.contains("clang")
cpp.cxxFlags: base.concat(["-Wno-noexcept-type"])
}
+ Properties {
+ condition: qbs.toolchain.contains("msvc")
+ cpp.cxxFlags: base.concat(["/w44996"])
+ }
cpp.cxxLanguageVersion: "c++14"
cpp.defines: qtc.generalDefines
- cpp.minimumWindowsVersion: qbs.architecture === "x86" ? "5.1" : "5.2"
+ cpp.minimumWindowsVersion: "6.1"
cpp.useCxxPrecompiledHeader: useNonGuiPchFile || useGuiPchFile
cpp.visibility: "minimal"
- Depends { name: "Qt.core" }
-
Group {
fileTagsFilter: installTags
qbs.install: install
diff --git a/qbs/imports/QtcTool.qbs b/qbs/imports/QtcTool.qbs
index 304e2e87a9..1b38968650 100644
--- a/qbs/imports/QtcTool.qbs
+++ b/qbs/imports/QtcTool.qbs
@@ -5,6 +5,7 @@ QtcProduct {
type: ["application"]
consoleApplication: true
installDir: qtc.ide_libexec_path
+ installTags: base.concat(["debuginfo_app"])
useNonGuiPchFile: true
cpp.rpaths: {
diff --git a/qbs/modules/libclang/functions.js b/qbs/modules/libclang/functions.js
index a786e23d65..7d5e4149fc 100644
--- a/qbs/modules/libclang/functions.js
+++ b/qbs/modules/libclang/functions.js
@@ -1,7 +1,7 @@
var Environment = require("qbs.Environment")
var File = require("qbs.File")
var FileInfo = require("qbs.FileInfo")
-var MinimumLLVMVersion = "3.9.0"
+var MinimumLLVMVersion = "5.0.0" // CLANG-UPGRADE-CHECK: Adapt minimum version numbers.
var Process = require("qbs.Process")
function readOutput(executable, args)
@@ -16,7 +16,10 @@ function readOutput(executable, args)
function readListOutput(executable, args)
{
- return readOutput(executable, args).split(/\s+/);
+ var list = readOutput(executable, args).split(/\s+/);
+ if (!list[list.length - 1])
+ list.pop();
+ return list;
}
function isSuitableLLVMConfig(llvmConfigCandidate, qtcFunctions)
@@ -33,7 +36,7 @@ function llvmConfig(hostOS, qtcFunctions)
{
var llvmInstallDirFromEnv = Environment.getEnv("LLVM_INSTALL_DIR")
var llvmConfigVariants = [
- "llvm-config", "llvm-config-3.9", "llvm-config-4.0", "llvm-config-4.1"
+ "llvm-config", "llvm-config-5.0", "llvm-config-6.0", "llvm-config-7.0", "llvm-config-8.0",
];
// Prefer llvm-config* from LLVM_INSTALL_DIR
diff --git a/qbs/modules/libclang/libclang.qbs b/qbs/modules/libclang/libclang.qbs
index 8adf39a220..3b68faa0bb 100644
--- a/qbs/modules/libclang/libclang.qbs
+++ b/qbs/modules/libclang/libclang.qbs
@@ -53,14 +53,15 @@ Module {
})
property stringList llvmToolingCxxFlags: clangProbe.llvmToolingCxxFlags
property bool toolingEnabled: !Environment.getEnv("QTC_NO_CLANG_LIBTOOLING")
- && Utilities.versionCompare(llvmVersion, "3.9") > 0
- && Utilities.versionCompare(llvmVersion, "4") < 0
+ && Utilities.versionCompare(llvmVersion, "5") > 0
+ && Utilities.versionCompare(llvmVersion, "6") < 0
validate: {
if (!clangProbe.found) {
- console.warn("Set LLVM_INSTALL_DIR to build the Clang Code Model."
+ console.warn("No usable libclang version found."
+ + " Set LLVM_INSTALL_DIR to build the Clang Code Model."
+ " For details, see doc/src/editors/creator-clang-codemodel.qdoc.");
- throw "No usable libclang found";
+ throw new Error();
}
}
}
diff --git a/qbs/modules/qbsbuildconfig/qbsbuildconfig.qbs b/qbs/modules/qbsbuildconfig/qbsbuildconfig.qbs
index 492a6fe457..845ce4139c 100644
--- a/qbs/modules/qbsbuildconfig/qbsbuildconfig.qbs
+++ b/qbs/modules/qbsbuildconfig/qbsbuildconfig.qbs
@@ -9,12 +9,14 @@ Module {
property bool enableUnitTests: false
property bool enableProjectFileUpdates: true
property bool installApiHeaders: false
+ property bool enableBundledQt: false
property string libInstallDir: qtc.ide_library_path
property stringList libRPaths: qbs.targetOS.contains("macos")
? ["@loader_path/" + FileInfo.relativePath('/' + appInstallDir, '/' + libInstallDir)]
: ["$ORIGIN/..", "$ORIGIN/../" + qtc.ide_library_path]
property string resourcesInstallDir: qtc.ide_data_path + "/qbs"
- property string pluginsInstallDir: qtc.ide_plugin_path
+ property string pluginsInstallDir: qtc.ide_plugin_path + "/qbs/plugins"
+ property string qmlTypeDescriptionsInstallDir: qtc.ide_data_path + "/qml-type-descriptions"
property string appInstallDir: qtc.ide_bin_path
property string libexecInstallDir: qtc.ide_libexec_path
property bool installHtml: false
diff --git a/qbs/modules/qtc/qtc.qbs b/qbs/modules/qtc/qtc.qbs
index 36aded329d..e637ce8111 100644
--- a/qbs/modules/qtc/qtc.qbs
+++ b/qbs/modules/qtc/qtc.qbs
@@ -4,24 +4,30 @@ import qbs.FileInfo
import "qtc.js" as HelperFunctions
Module {
- property string qtcreator_display_version: '4.5.2'
+ property string qtcreator_display_version: '4.6.0-rc1'
property string ide_version_major: '4'
property string ide_version_minor: '5'
- property string ide_version_release: '2'
+ property string ide_version_release: '83'
property string qtcreator_version: ide_version_major + '.' + ide_version_minor + '.'
+ ide_version_release
property string ide_compat_version_major: '4'
property string ide_compat_version_minor: '5'
- property string ide_compat_version_release: '0'
+ property string ide_compat_version_release: '83'
property string qtcreator_compat_version: ide_compat_version_major + '.'
+ ide_compat_version_minor + '.' + ide_compat_version_release
property string qtcreator_copyright_year: '2018'
+ property string qtcreator_copyright_string: "(C) " + qtcreator_copyright_year + " The Qt Company Ltd"
+
+ property string ide_display_name: 'Qt Creator'
+ property string ide_id: 'qtcreator'
+ property string ide_cased_id: 'QtCreator'
+ property string ide_bundle_identifier: 'org.qt-project.qtcreator'
property string libDirName: "lib"
property string ide_app_path: qbs.targetOS.contains("macos") ? "" : "bin"
- property string ide_app_target: qbs.targetOS.contains("macos") ? "Qt Creator" : "qtcreator"
+ property string ide_app_target: qbs.targetOS.contains("macos") ? ide_display_name : ide_id
property string ide_library_path: {
if (qbs.targetOS.contains("macos"))
return ide_app_target + ".app/Contents/Frameworks"
@@ -79,6 +85,7 @@ Module {
"QT_USE_FAST_OPERATOR_PLUS",
"QT_USE_FAST_CONCATENATION",
].concat(testsEnabled ? ["WITH_TESTS"] : [])
+ .concat(qbs.toolchain.contains("msvc") ? ["_CRT_SECURE_NO_WARNINGS"] : [])
Rule {
condition: make_dev_package