forked from qt-creator/qt-creator
qbs build: Introduce new module "qtc".
The qtc module gathers properties that used to live in the top-level
project file. This is the first step towards making it possible to build
plugins against an installed Qt Creator ("out of source build").
Change-Id: Ia1514cc9c888e80be01b308e908de48980fcbdb8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
This commit is contained in:
@@ -12,8 +12,8 @@ QtcProduct {
|
||||
+ FileInfo.relativePath(project.ide_source_tree, sourceDirectory)
|
||||
|
||||
cpp.rpaths: [
|
||||
project.buildDirectory + '/' + project.ide_library_path,
|
||||
project.buildDirectory + '/' + project.ide_plugin_path
|
||||
project.buildDirectory + '/' + qtc.ide_library_path,
|
||||
project.buildDirectory + '/' + qtc.ide_plugin_path
|
||||
]
|
||||
cpp.minimumOsxVersion: "10.7"
|
||||
cpp.defines: base.filter(function(d) { return d != "QT_RESTRICTED_CAST_FROM_ASCII"; })
|
||||
@@ -28,6 +28,6 @@ QtcProduct {
|
||||
// absolute paths to resources in the build directory.
|
||||
// cpp.rpaths: qbs.targetOS.contains("osx")
|
||||
// ? ["@loader_path/../Frameworks", "@loader_path/../PlugIns"]
|
||||
// : ["$ORIGIN/../" + project.libDirName + "/qtcreator",
|
||||
// "$ORIGIN/../" project.libDirName + "/qtcreator/plugins"]
|
||||
// : ["$ORIGIN/../" + qtc.libDirName + "/qtcreator",
|
||||
// "$ORIGIN/../" qtc.libDirName + "/qtcreator/plugins"]
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ Product {
|
||||
builtByDefault: false
|
||||
type: [isOnlineDoc ? "qdoc-output" : "qch"]
|
||||
Depends { name: "Qt.core" }
|
||||
Depends { name: "qtc" }
|
||||
|
||||
property path mainDocConfFile
|
||||
property bool isOnlineDoc
|
||||
@@ -14,11 +15,11 @@ Product {
|
||||
fileTags: ["qdocconf-main"]
|
||||
}
|
||||
|
||||
property string versionTag: project.qtcreator_version.replace(/\.|-/g, "")
|
||||
property string versionTag: qtc.qtcreator_version.replace(/\.|-/g, "")
|
||||
Qt.core.qdocEnvironment: [
|
||||
"QTC_LICENSE_TYPE=" + project.licenseType,
|
||||
"QTC_VERSION=" + project.qtcreator_version,
|
||||
"QTC_VERSION_TAG=" + project.qtcreator_version,
|
||||
"QTC_VERSION=" + qtc.qtcreator_version,
|
||||
"QTC_VERSION_TAG=" + qtc.qtcreator_version,
|
||||
"SRCDIR=" + sourceDirectory,
|
||||
"QT_INSTALL_DOCS=" + Qt.core.docPath,
|
||||
"QDOC_INDEX_DIR=" + Qt.core.docPath,
|
||||
@@ -28,6 +29,6 @@ Product {
|
||||
Group {
|
||||
fileTagsFilter: ["qch"]
|
||||
qbs.install: !qbs.targetOS.contains("osx")
|
||||
qbs.installDir: project.ide_doc_path
|
||||
qbs.installDir: qtc.ide_doc_path
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,21 +3,21 @@ import QtcFunctions
|
||||
|
||||
QtcProduct {
|
||||
type: ["dynamiclibrary", "dynamiclibrary_symlink"]
|
||||
installDir: project.ide_library_path
|
||||
installDir: qtc.ide_library_path
|
||||
Depends {
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
name: "Qt.test"
|
||||
}
|
||||
|
||||
targetName: QtcFunctions.qtLibraryName(qbs, name)
|
||||
destinationDirectory: project.ide_library_path
|
||||
destinationDirectory: qtc.ide_library_path
|
||||
|
||||
cpp.linkerFlags: {
|
||||
var flags = base;
|
||||
if (qbs.buildVariant == "debug" && qbs.toolchain.contains("msvc"))
|
||||
flags.push("/INCREMENTAL:NO"); // Speed up startup time when debugging with cdb
|
||||
if (qbs.targetOS.contains("osx"))
|
||||
flags.push("-compatibility_version", project.qtcreator_compat_version);
|
||||
flags.push("-compatibility_version", qtc.qtcreator_compat_version);
|
||||
return flags;
|
||||
}
|
||||
cpp.installNamePrefix: "@rpath"
|
||||
|
||||
@@ -4,7 +4,7 @@ import QtcFunctions
|
||||
|
||||
QtcProduct {
|
||||
type: ["dynamiclibrary", "pluginSpec"]
|
||||
installDir: project.ide_plugin_path
|
||||
installDir: qtc.ide_plugin_path
|
||||
|
||||
property var pluginJsonReplacements
|
||||
property var pluginRecommends: []
|
||||
@@ -14,12 +14,12 @@ QtcProduct {
|
||||
condition: QtcFunctions.versionIsAtLeast(Qt.core.version, minimumQtVersion)
|
||||
|
||||
targetName: QtcFunctions.qtLibraryName(qbs, name)
|
||||
destinationDirectory: project.ide_plugin_path
|
||||
destinationDirectory: qtc.ide_plugin_path
|
||||
|
||||
Depends { name: "ExtensionSystem" }
|
||||
Depends { name: "pluginjson" }
|
||||
Depends {
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
name: "Qt.test"
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ QtcProduct {
|
||||
if (qbs.buildVariant == "debug" && qbs.toolchain.contains("msvc"))
|
||||
flags.push("/INCREMENTAL:NO"); // Speed up startup time when debugging with cdb
|
||||
if (qbs.targetOS.contains("osx"))
|
||||
flags.push("-compatibility_version", project.qtcreator_compat_version);
|
||||
flags.push("-compatibility_version", qtc.qtcreator_compat_version);
|
||||
return flags;
|
||||
}
|
||||
|
||||
|
||||
@@ -2,13 +2,15 @@ import qbs 1.0
|
||||
import QtcFunctions
|
||||
|
||||
Product {
|
||||
version: project.qtcreator_version
|
||||
version: qtc.qtcreator_version
|
||||
property bool install: true
|
||||
property string installDir
|
||||
|
||||
Depends { name: "cpp" }
|
||||
cpp.defines: project.generalDefines
|
||||
Depends { name: "qtc" }
|
||||
|
||||
cpp.cxxLanguageVersion: "c++11"
|
||||
cpp.defines: qtc.generalDefines
|
||||
cpp.linkerFlags: {
|
||||
var flags = [];
|
||||
if (qbs.buildVariant == "release" && (qbs.toolchain.contains("gcc") || qbs.toolchain.contains("mingw")))
|
||||
|
||||
@@ -4,13 +4,13 @@ import qbs.FileInfo
|
||||
QtcProduct {
|
||||
type: ["application"]
|
||||
consoleApplication: true
|
||||
installDir: project.ide_libexec_path
|
||||
installDir: qtc.ide_libexec_path
|
||||
|
||||
cpp.rpaths: {
|
||||
var relativePathToLibs = FileInfo.relativePath('/' + project.ide_libexec_path,
|
||||
'/' + project.ide_library_path);
|
||||
var relativePathToPlugins = FileInfo.relativePath('/' + project.ide_libexec_path,
|
||||
'/' + project.ide_plugin_path);
|
||||
var relativePathToLibs = FileInfo.relativePath('/' + qtc.ide_libexec_path,
|
||||
'/' + qtc.ide_library_path);
|
||||
var relativePathToPlugins = FileInfo.relativePath('/' + qtc.ide_libexec_path,
|
||||
'/' + qtc.ide_plugin_path);
|
||||
var prefix = qbs.targetOS.contains("osx") ? "@executable_path" : "$ORIGIN";
|
||||
return [
|
||||
FileInfo.joinPaths(prefix, relativePathToLibs),
|
||||
|
||||
@@ -4,6 +4,7 @@ import qbs.FileInfo
|
||||
|
||||
Module {
|
||||
Depends { id: qtcore; name: "Qt.core" }
|
||||
Depends { name: "qtc" }
|
||||
|
||||
additionalProductTypes: ["qt_plugin_metadata"]
|
||||
|
||||
@@ -46,20 +47,22 @@ Module {
|
||||
// replace quoted quotes
|
||||
all = all.replace(/\\\"/g, '"');
|
||||
// replace config vars
|
||||
vars['QTCREATOR_VERSION'] = project.qtcreator_version;
|
||||
vars['QTCREATOR_COMPAT_VERSION'] = project.qtcreator_compat_version;
|
||||
vars['IDE_VERSION_MAJOR'] = project.ide_version_major;
|
||||
vars['IDE_VERSION_MINOR'] = project.ide_version_minor;
|
||||
vars['IDE_VERSION_RELEASE'] = project.ide_version_release;
|
||||
var qtcVersion = product.moduleProperty("qtc", "qtcreator_version");
|
||||
vars['QTCREATOR_VERSION'] = qtcVersion;
|
||||
vars['QTCREATOR_COMPAT_VERSION']
|
||||
= product.moduleProperty("qtc", "qtcreator_compat_version");
|
||||
vars['IDE_VERSION_MAJOR'] = product.moduleProperty("qtc", "ide_version_major");
|
||||
vars['IDE_VERSION_MINOR'] = product.moduleProperty("qtc", "ide_version_minor");
|
||||
vars['IDE_VERSION_RELEASE'] = product.moduleProperty("qtc", "ide_version_release");
|
||||
var deplist = [];
|
||||
for (i in plugin_depends) {
|
||||
deplist.push(" { \"Name\" : \"" + plugin_depends[i] + "\", \"Version\" : \"" + project.qtcreator_version + "\" }");
|
||||
deplist.push(" { \"Name\" : \"" + plugin_depends[i] + "\", \"Version\" : \"" + qtcVersion + "\" }");
|
||||
}
|
||||
for (i in plugin_recommends) {
|
||||
deplist.push(" { \"Name\" : \"" + plugin_recommends[i] + "\", \"Version\" : \"" + project.qtcreator_version + "\", \"Type\" : \"optional\" }");
|
||||
deplist.push(" { \"Name\" : \"" + plugin_recommends[i] + "\", \"Version\" : \"" + qtcVersion + "\", \"Type\" : \"optional\" }");
|
||||
}
|
||||
for (i in plugin_test_depends) {
|
||||
deplist.push(" { \"Name\" : \"" + plugin_test_depends[i] + "\", \"Version\" : \"" + project.qtcreator_version + "\", \"Type\" : \"test\" }");
|
||||
deplist.push(" { \"Name\" : \"" + plugin_test_depends[i] + "\", \"Version\" : \"" + qtcVersion + "\", \"Type\" : \"test\" }");
|
||||
}
|
||||
deplist = deplist.join(",\n")
|
||||
vars['dependencyList'] = "\"Dependencies\" : [\n" + deplist + "\n ]";
|
||||
|
||||
24
qbs/modules/qbsbuildconfig/qbsbuildconfig.qbs
Normal file
24
qbs/modules/qbsbuildconfig/qbsbuildconfig.qbs
Normal file
@@ -0,0 +1,24 @@
|
||||
import qbs
|
||||
import qbs.FileInfo
|
||||
|
||||
Module {
|
||||
Depends { name: "qtc" }
|
||||
|
||||
property bool enableUnitTests: false
|
||||
property bool enableProjectFileUpdates: true
|
||||
property bool installApiHeaders: false
|
||||
property string libInstallDir: qtc.ide_library_path
|
||||
property stringList libRPaths: qbs.targetOS.contains("osx")
|
||||
? ["@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 appInstallDir: qtc.ide_bin_path
|
||||
property string libexecInstallDir: qtc.ide_libexec_path
|
||||
property string relativeLibexecPath: FileInfo.relativePath('/' + appInstallDir,
|
||||
'/' + libexecInstallDir)
|
||||
property string relativePluginsPath: FileInfo.relativePath('/' + appInstallDir,
|
||||
'/' + pluginsInstallDir)
|
||||
property string relativeSearchPath: FileInfo.relativePath('/' + appInstallDir,
|
||||
'/' + resourcesInstallDir)
|
||||
}
|
||||
57
qbs/modules/qtc/qtc.qbs
Normal file
57
qbs/modules/qtc/qtc.qbs
Normal file
@@ -0,0 +1,57 @@
|
||||
import qbs
|
||||
import qbs.Environment
|
||||
|
||||
Module {
|
||||
property string ide_version_major: '4'
|
||||
property string ide_version_minor: '0'
|
||||
property string ide_version_release: '82'
|
||||
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: '0'
|
||||
property string ide_compat_version_release: '82'
|
||||
property string qtcreator_compat_version: ide_compat_version_major + '.'
|
||||
+ ide_compat_version_minor + '.' + ide_compat_version_release
|
||||
|
||||
property string libDirName: "lib"
|
||||
property string ide_app_path: qbs.targetOS.contains("osx") ? "" : "bin"
|
||||
property string ide_app_target: qbs.targetOS.contains("osx") ? "Qt Creator" : "qtcreator"
|
||||
property string ide_library_path: {
|
||||
if (qbs.targetOS.contains("osx"))
|
||||
return ide_app_target + ".app/Contents/Frameworks"
|
||||
else if (qbs.targetOS.contains("windows"))
|
||||
return ide_app_path
|
||||
else
|
||||
return libDirName + "/qtcreator"
|
||||
}
|
||||
property string ide_plugin_path: {
|
||||
if (qbs.targetOS.contains("osx"))
|
||||
return ide_app_target + ".app/Contents/PlugIns"
|
||||
else if (qbs.targetOS.contains("windows"))
|
||||
return libDirName + "/qtcreator/plugins"
|
||||
else
|
||||
return ide_library_path + "/plugins"
|
||||
}
|
||||
property string ide_data_path: qbs.targetOS.contains("osx")
|
||||
? ide_app_target + ".app/Contents/Resources"
|
||||
: "share/qtcreator"
|
||||
property string ide_libexec_path: qbs.targetOS.contains("osx")
|
||||
? ide_data_path : qbs.targetOS.contains("windows")
|
||||
? ide_app_path
|
||||
: "libexec/qtcreator"
|
||||
property string ide_bin_path: qbs.targetOS.contains("osx")
|
||||
? ide_app_target + ".app/Contents/MacOS"
|
||||
: ide_app_path
|
||||
property string ide_doc_path: qbs.targetOS.contains("osx")
|
||||
? ide_data_path + "/doc"
|
||||
: "share/doc/qtcreator"
|
||||
|
||||
property bool testsEnabled: Environment.getEnv("TEST") || qbs.buildVariant === "debug"
|
||||
property stringList generalDefines: [
|
||||
"QT_CREATOR",
|
||||
'IDE_LIBRARY_BASENAME="' + libDirName + '"',
|
||||
"QT_NO_CAST_TO_ASCII",
|
||||
"QT_RESTRICTED_CAST_FROM_ASCII"
|
||||
].concat(testsEnabled ? ["WITH_TESTS"] : [])
|
||||
}
|
||||
@@ -7,59 +7,12 @@ Project {
|
||||
minimumQbsVersion: "1.5.0"
|
||||
property bool withAutotests: qbs.buildVariant === "debug"
|
||||
property string licenseType: "opensource"
|
||||
property string ide_version_major: '4'
|
||||
property string ide_version_minor: '0'
|
||||
property string ide_version_release: '82'
|
||||
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: '0'
|
||||
property string ide_compat_version_release: '82'
|
||||
property string qtcreator_compat_version: ide_compat_version_major + '.' + ide_compat_version_minor + '.' + ide_compat_version_release
|
||||
property path ide_source_tree: path
|
||||
property string ide_app_path: qbs.targetOS.contains("osx") ? "" : "bin"
|
||||
property string ide_app_target: qbs.targetOS.contains("osx") ? "Qt Creator" : "qtcreator"
|
||||
property pathList additionalPlugins: []
|
||||
property pathList additionalLibs: []
|
||||
property pathList additionalTools: []
|
||||
property pathList additionalAutotests: []
|
||||
property string sharedSourcesDir: path + "/src/shared"
|
||||
property string libDirName: "lib"
|
||||
property string ide_library_path: {
|
||||
if (qbs.targetOS.contains("osx"))
|
||||
return ide_app_target + ".app/Contents/Frameworks"
|
||||
else if (qbs.targetOS.contains("windows"))
|
||||
return ide_app_path
|
||||
else
|
||||
return libDirName + "/qtcreator"
|
||||
}
|
||||
property string ide_plugin_path: {
|
||||
if (qbs.targetOS.contains("osx"))
|
||||
return ide_app_target + ".app/Contents/PlugIns"
|
||||
else if (qbs.targetOS.contains("windows"))
|
||||
return libDirName + "/qtcreator/plugins"
|
||||
else
|
||||
return ide_library_path + "/plugins"
|
||||
}
|
||||
property string ide_data_path: qbs.targetOS.contains("osx")
|
||||
? ide_app_target + ".app/Contents/Resources"
|
||||
: "share/qtcreator"
|
||||
property string ide_libexec_path: qbs.targetOS.contains("osx")
|
||||
? ide_data_path : qbs.targetOS.contains("windows")
|
||||
? ide_app_path
|
||||
: "libexec/qtcreator"
|
||||
property string ide_doc_path: qbs.targetOS.contains("osx")
|
||||
? ide_data_path + "/doc"
|
||||
: "share/doc/qtcreator"
|
||||
property string ide_bin_path: qbs.targetOS.contains("osx")
|
||||
? ide_app_target + ".app/Contents/MacOS"
|
||||
: ide_app_path
|
||||
property bool testsEnabled: Environment.getEnv("TEST") || qbs.buildVariant === "debug"
|
||||
property stringList generalDefines: [
|
||||
"QT_CREATOR",
|
||||
'IDE_LIBRARY_BASENAME="' + libDirName + '"',
|
||||
"QT_NO_CAST_TO_ASCII",
|
||||
"QT_RESTRICTED_CAST_FROM_ASCII"
|
||||
].concat(testsEnabled ? ["WITH_TESTS"] : [])
|
||||
qbsSearchPaths: "qbs"
|
||||
|
||||
references: [
|
||||
@@ -72,6 +25,7 @@ Project {
|
||||
|
||||
AutotestRunner {
|
||||
Depends { name: "Qt.core" }
|
||||
Depends { name: "qtc" }
|
||||
environment: {
|
||||
var env = base;
|
||||
if (!qbs.hostOS.contains("windows") || !qbs.targetOS.contains("windows"))
|
||||
@@ -85,9 +39,10 @@ Project {
|
||||
}
|
||||
var fullQtcInstallDir
|
||||
= FileInfo.joinPaths(qbs.installRoot, qbs.installPrefix, qbs.InstallDir);
|
||||
var fullLibInstallDir = FileInfo.joinPaths(fullQtcInstallDir, project.ide_library_path);
|
||||
var fullPluginInstallDir
|
||||
= FileInfo.joinPaths(fullQtcInstallDir, project.ide_plugin_path);
|
||||
var fullLibInstallDir = FileInfo.joinPaths(fullQtcInstallDir,
|
||||
product.moduleProperty("ide", "ide_library_path"));
|
||||
var fullPluginInstallDir = FileInfo.joinPaths(fullQtcInstallDir,
|
||||
product.moduleProperty("qtc", "ide_plugin_path"));
|
||||
path = Qt.core.binPath + ";" + fullLibInstallDir + ";" + fullPluginInstallDir
|
||||
+ ";" + path;
|
||||
var arrayElem = "PATH=" + path;
|
||||
|
||||
@@ -4,6 +4,7 @@ Product {
|
||||
name: "Translations"
|
||||
type: "qm"
|
||||
Depends { name: "Qt.core" }
|
||||
Depends { name: "qtc" }
|
||||
|
||||
Group {
|
||||
files: ["*.ts"]
|
||||
@@ -17,6 +18,6 @@ Product {
|
||||
Group {
|
||||
fileTagsFilter: product.type
|
||||
qbs.install: true
|
||||
qbs.installDir: project.ide_data_path + "/translations"
|
||||
qbs.installDir: qtc.ide_data_path + "/translations"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,11 +2,12 @@ import qbs 1.0
|
||||
|
||||
Product {
|
||||
name: "SharedContent"
|
||||
Depends { name: "qtc" }
|
||||
|
||||
Group {
|
||||
name: "Unconditional"
|
||||
qbs.install: true
|
||||
qbs.installDir: project.ide_data_path
|
||||
qbs.installDir: qtc.ide_data_path
|
||||
qbs.installSourceBase: "qtcreator"
|
||||
prefix: "qtcreator/"
|
||||
files: [
|
||||
@@ -31,7 +32,7 @@ Product {
|
||||
Group {
|
||||
name: "3rdparty"
|
||||
qbs.install: true
|
||||
qbs.installDir: project.ide_data_path
|
||||
qbs.installDir: qtc.ide_data_path
|
||||
qbs.installSourceBase: project.ide_source_tree + "/src/share/3rdparty"
|
||||
prefix: project.ide_source_tree + "/src/share/3rdparty/"
|
||||
files: [
|
||||
@@ -42,7 +43,7 @@ Product {
|
||||
Group {
|
||||
name: "Conditional"
|
||||
qbs.install: true
|
||||
qbs.installDir: project.ide_data_path + "/externaltools"
|
||||
qbs.installDir: qtc.ide_data_path + "/externaltools"
|
||||
prefix: project.ide_source_tree + "/src/share/qtcreator/externaltools/"
|
||||
files: {
|
||||
var list = [
|
||||
|
||||
@@ -18,14 +18,15 @@ QtcProduct {
|
||||
consoleApplication: false
|
||||
|
||||
type: ["application"]
|
||||
name: project.ide_app_target
|
||||
version: project.qtcreator_version
|
||||
name: "qtcreator"
|
||||
targetName: qtc.ide_app_target
|
||||
version: qtc.qtcreator_version
|
||||
|
||||
installDir: project.ide_bin_path
|
||||
installDir: qtc.ide_bin_path
|
||||
property bool qtcRunnable: true
|
||||
|
||||
cpp.rpaths: qbs.targetOS.contains("osx") ? ["@executable_path/../Frameworks"]
|
||||
: ["$ORIGIN/../" + project.libDirName + "/qtcreator"]
|
||||
: ["$ORIGIN/../" + qtc.libDirName + "/qtcreator"]
|
||||
cpp.includePaths: [
|
||||
project.sharedSourcesDir + "/qtsingleapplication",
|
||||
project.sharedSourcesDir + "/qtlockedfile",
|
||||
|
||||
@@ -6,6 +6,8 @@ Product {
|
||||
type: "hpp"
|
||||
files: "app_version.h.in"
|
||||
|
||||
Depends { name: "qtc" }
|
||||
|
||||
Transformer {
|
||||
inputs: ["app_version.h.in"]
|
||||
Artifact {
|
||||
@@ -26,10 +28,14 @@ Product {
|
||||
if (onWindows)
|
||||
content = content.replace(/\r\n/g, "\n");
|
||||
// replace the magic qmake incantations
|
||||
content = content.replace(/(\n#define IDE_VERSION) .+\n/, "$1 " + project.qtcreator_version + "\n");
|
||||
content = content.replace(/(\n#define IDE_VERSION_MAJOR) .+\n/, "$1 " + project.ide_version_major + "\n")
|
||||
content = content.replace(/(\n#define IDE_VERSION_MINOR) .+\n/, "$1 " + project.ide_version_minor + "\n")
|
||||
content = content.replace(/(\n#define IDE_VERSION_RELEASE) .+\n/, "$1 " + project.ide_version_release + "\n")
|
||||
content = content.replace(/(\n#define IDE_VERSION) .+\n/, "$1 "
|
||||
+ product.moduleProperty("qtc", "qtcreator_version") + "\n");
|
||||
content = content.replace(/(\n#define IDE_VERSION_MAJOR) .+\n/, "$1 "
|
||||
+ product.moduleProperty("qtc", "ide_version_major") + "\n");
|
||||
content = content.replace(/(\n#define IDE_VERSION_MINOR) .+\n/, "$1 "
|
||||
+ product.moduleProperty("qtc", "ide_version_minor") + "\n");
|
||||
content = content.replace(/(\n#define IDE_VERSION_RELEASE) .+\n/, "$1 "
|
||||
+ product.moduleProperty("qtc", "ide_version_release") + "\n");
|
||||
file = new TextFile(output.filePath, TextFile.WriteOnly);
|
||||
file.truncate();
|
||||
file.write(content);
|
||||
|
||||
@@ -57,7 +57,7 @@ QtcLibrary {
|
||||
dirName += "64";
|
||||
else
|
||||
dirName += "32";
|
||||
return FileInfo.joinPaths(project.libDirName, dirName);
|
||||
return FileInfo.joinPaths(qtc.libDirName, dirName);
|
||||
}
|
||||
files: [
|
||||
"common.cpp",
|
||||
|
||||
@@ -6,8 +6,8 @@ QtcLibrary {
|
||||
|
||||
cpp.defines: base.concat([
|
||||
"QTCREATOR_UTILS_LIB",
|
||||
"QTC_REL_TOOLS_PATH=\"" + FileInfo.relativePath('/' + project.ide_bin_path,
|
||||
'/' + project.ide_libexec_path) + "\""
|
||||
"QTC_REL_TOOLS_PATH=\"" + FileInfo.relativePath('/' + qtc.ide_bin_path,
|
||||
'/' + qtc.ide_libexec_path) + "\""
|
||||
])
|
||||
cpp.dynamicLibraries: {
|
||||
var libs = [];
|
||||
|
||||
@@ -18,12 +18,12 @@ QtcPlugin {
|
||||
|
||||
Depends {
|
||||
name: "QtSupport"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
}
|
||||
|
||||
Depends {
|
||||
name: "Qt.test"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
}
|
||||
|
||||
Depends { name: "Qt.widgets" }
|
||||
@@ -92,7 +92,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Test sources"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: [
|
||||
"autotestunittests.cpp",
|
||||
"autotestunittests.h",
|
||||
@@ -108,6 +108,6 @@ QtcPlugin {
|
||||
]
|
||||
fileTags: []
|
||||
qbs.install: true
|
||||
qbs.installDir: project.ide_data_path + "/templates/wizards/autotest"
|
||||
qbs.installDir: qtc.ide_data_path + "/templates/wizards/autotest"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -97,7 +97,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
prefix: "test/"
|
||||
files: [
|
||||
"data/clangtestdata.qrc",
|
||||
|
||||
@@ -57,7 +57,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Unit tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: [
|
||||
"clangstaticanalyzerunittests.cpp",
|
||||
"clangstaticanalyzerunittests.h",
|
||||
|
||||
@@ -193,7 +193,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: [
|
||||
"testdatadir.cpp",
|
||||
"testdatadir.h",
|
||||
|
||||
@@ -57,7 +57,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: [
|
||||
"cppdoxygen_test.cpp", "cppdoxygen_test.h",
|
||||
"cppeditortestcase.cpp", "cppeditortestcase.h",
|
||||
|
||||
@@ -105,7 +105,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: [
|
||||
"cppcodegen_test.cpp",
|
||||
"cppcompletion_test.cpp",
|
||||
|
||||
@@ -21,7 +21,7 @@ QtcPlugin {
|
||||
|
||||
Depends {
|
||||
name: "Qt.test"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
}
|
||||
|
||||
pluginTestDepends: [
|
||||
@@ -265,7 +265,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Unit tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: [
|
||||
"debuggerunittests.qrc",
|
||||
]
|
||||
|
||||
@@ -74,7 +74,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: [ "gotoslot_test.cpp" ]
|
||||
|
||||
cpp.defines: outer.concat(['SRCDIR="' + FileInfo.path(filePath) + '"'])
|
||||
|
||||
@@ -29,7 +29,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: ["fakevim_test.cpp"]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: [ "genericprojectplugin_test.cpp" ]
|
||||
|
||||
cpp.defines: outer.concat(['SRCDIR="' + FileInfo.path(filePath) + '"'])
|
||||
|
||||
@@ -236,7 +236,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "WindowsToolChains"
|
||||
condition: qbs.targetOS.contains("windows") || project.testsEnabled
|
||||
condition: qbs.targetOS.contains("windows") || qtc.testsEnabled
|
||||
files: [
|
||||
"abstractmsvctoolchain.cpp",
|
||||
"abstractmsvctoolchain.h",
|
||||
@@ -253,7 +253,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: ["outputparser_test.h", "outputparser_test.cpp"]
|
||||
}
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ QtcPlugin {
|
||||
property var externalQbsIncludes: project.useExternalQbs
|
||||
? [project.qbs_install_dir + "/include/qbs"] : []
|
||||
property var externalQbsLibraryPaths: project.useExternalQbs
|
||||
? [project.qbs_install_dir + '/' + project.libDirName] : []
|
||||
? [project.qbs_install_dir + '/' + qtc.libDirName] : []
|
||||
property var externalQbsDynamicLibraries: {
|
||||
var libs = []
|
||||
if (!project.useExternalQbs)
|
||||
|
||||
@@ -3,7 +3,7 @@ import qbs
|
||||
QtcProduct {
|
||||
name: "componentsplugin"
|
||||
type: ["dynamiclibrary"]
|
||||
installDir: project.ide_plugin_path + '/' + installDirName
|
||||
installDir: qtc.ide_plugin_path + '/' + installDirName
|
||||
property string installDirName: qbs.targetOS.contains("osx") ? "QmlDesigner" : "qmldesigner"
|
||||
|
||||
Depends { name: "Core" }
|
||||
|
||||
@@ -3,7 +3,7 @@ import qbs
|
||||
QtcProduct {
|
||||
name: "qtquickplugin"
|
||||
type: ["dynamiclibrary"]
|
||||
installDir: project.ide_plugin_path + '/' + installDirName
|
||||
installDir: qtc.ide_plugin_path + '/' + installDirName
|
||||
property string installDirName: qbs.targetOS.contains("osx") ? "QmlDesigner" : "qmldesigner"
|
||||
|
||||
cpp.defines: base.concat("QTQUICK_LIBRARY")
|
||||
|
||||
@@ -49,7 +49,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: ["qmljstools_test.cpp"]
|
||||
}
|
||||
|
||||
|
||||
@@ -74,7 +74,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Unit tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
prefix: "tests/"
|
||||
files: [
|
||||
"debugmessagesmodel_test.cpp", "debugmessagesmodel_test.h",
|
||||
|
||||
@@ -267,7 +267,7 @@ QtcPlugin {
|
||||
|
||||
Group {
|
||||
name: "Tests"
|
||||
condition: project.testsEnabled
|
||||
condition: qtc.testsEnabled
|
||||
files: [
|
||||
"texteditor_test.cpp",
|
||||
]
|
||||
|
||||
@@ -82,5 +82,5 @@ QtcPlugin {
|
||||
"wizard/vcsjsextension.h",
|
||||
]
|
||||
|
||||
cpp.defines: base.concat( testsEnabled ? ['SRC_DIR="' + project.ide_source_tree + '"'] : [] )
|
||||
cpp.defines: base.concat(qtc.testsEnabled ? ['SRC_DIR="' + qtc.ide_source_tree + '"'] : [])
|
||||
}
|
||||
|
||||
Submodule src/shared/qbs updated: 9d28325c40...daf715d9ca
20
src/src.qbs
20
src/src.qbs
@@ -23,25 +23,9 @@ Project {
|
||||
id: qbsProject
|
||||
property string qbsBaseDir: project.sharedSourcesDir + "/qbs"
|
||||
condition: qbsSubModuleExists && !useExternalQbs
|
||||
qbsSearchPaths: [qbsBaseDir + "/qbs-resources"]
|
||||
|
||||
property bool enableUnitTests: false
|
||||
property bool enableProjectFileUpdates: true
|
||||
property bool installApiHeaders: false
|
||||
property string libInstallDir: project.ide_library_path
|
||||
property stringList libRPaths: qbs.targetOS.contains("osx")
|
||||
? ["@loader_path/" + FileInfo.relativePath('/' + appInstallDir, '/' + libInstallDir)]
|
||||
: ["$ORIGIN/..", "$ORIGIN/../" + project.ide_library_path]
|
||||
property string resourcesInstallDir: project.ide_data_path + "/qbs"
|
||||
property string pluginsInstallDir: project.ide_plugin_path
|
||||
property string appInstallDir: project.ide_bin_path
|
||||
property string libexecInstallDir: project.ide_libexec_path
|
||||
property string relativeLibexecPath: FileInfo.relativePath('/' + appInstallDir,
|
||||
'/' + libexecInstallDir)
|
||||
property string relativePluginsPath: FileInfo.relativePath('/' + appInstallDir,
|
||||
'/' + pluginsInstallDir)
|
||||
property string relativeSearchPath: FileInfo.relativePath('/' + appInstallDir,
|
||||
'/' + resourcesInstallDir)
|
||||
// The first entry is for overriding qbs' own qbsbuildconfig module.
|
||||
qbsSearchPaths: [project.ide_source_tree + "/qbs", qbsBaseDir + "/qbs-resources"]
|
||||
|
||||
references: [
|
||||
qbsBaseDir + "/src/lib/libs.qbs",
|
||||
|
||||
2
src/tools/3rdparty/iossim/iossim.qbs
vendored
2
src/tools/3rdparty/iossim/iossim.qbs
vendored
@@ -26,5 +26,5 @@ QtcTool {
|
||||
cpp.frameworkPaths: base.concat("/System/Library/PrivateFrameworks")
|
||||
bundle.infoPlistFile: "Info.plist"
|
||||
|
||||
installDir: project.ide_libexec_path + "/ios"
|
||||
installDir: qtc.ide_libexec_path + "/ios"
|
||||
}
|
||||
|
||||
@@ -13,8 +13,8 @@ QtcTool {
|
||||
]
|
||||
Properties {
|
||||
condition: qbs.targetOS.contains("unix") && !qbs.targetOS.contains("darwin")
|
||||
cpp.rpaths: base.concat(["$ORIGIN/../" + project.ide_plugin_path])
|
||||
cpp.rpaths: base.concat(["$ORIGIN/../" + qtc.ide_plugin_path])
|
||||
}
|
||||
cpp.defines: base.concat(qbs.targetOS.contains("windows") || project.testsEnabled
|
||||
cpp.defines: base.concat(qbs.targetOS.contains("windows") || qtc.testsEnabled
|
||||
? ["HAS_MSVC_PARSER"] : [])
|
||||
}
|
||||
|
||||
@@ -20,5 +20,5 @@ QtcTool {
|
||||
cpp.dynamicLibraries: base.concat(["ssl", "bz2"])
|
||||
bundle.infoPlistFile: "Info.plist"
|
||||
|
||||
installDir: project.ide_libexec_path + "/ios"
|
||||
installDir: qtc.ide_libexec_path + "/ios"
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import QtcFunctions
|
||||
QtcTool {
|
||||
name: "qml2puppet"
|
||||
installDir: qbs.targetOS.contains("osx")
|
||||
? project.ide_libexec_path + "/qmldesigner" : project.ide_libexec_path
|
||||
? qtc.ide_libexec_path + "/qmldesigner" : qtc.ide_libexec_path
|
||||
|
||||
Depends { name: "bundle" }
|
||||
Depends {
|
||||
|
||||
@@ -3,7 +3,7 @@ import qbs 1.0
|
||||
QtcTool {
|
||||
name: "qtcreator_crash_handler"
|
||||
condition: qbs.targetOS.contains("linux") && qbs.buildVariant == "debug"
|
||||
installDir: project.ide_bin_path
|
||||
installDir: qtc.ide_bin_path
|
||||
|
||||
Depends { name: "Utils" }
|
||||
Depends { name: "Qt.widgets" }
|
||||
|
||||
@@ -3,8 +3,9 @@ import qbs
|
||||
CppApplication {
|
||||
name: "valgrind-fake"
|
||||
consoleApplication: true
|
||||
destinationDirectory: project.ide_bin_path
|
||||
destinationDirectory: qtc.ide_bin_path
|
||||
Depends { name: "Qt"; submodules: ["network", "xml"]; }
|
||||
Depends { name: "qtc" }
|
||||
cpp.cxxLanguageVersion: "c++11"
|
||||
files: [
|
||||
"main.cpp",
|
||||
|
||||
@@ -8,12 +8,13 @@ DynamicLibrary {
|
||||
Depends { name: "cpp" }
|
||||
Depends { name: "Qt.core" }
|
||||
Depends { name: "copyable_resource" }
|
||||
Depends { name: "qtc" }
|
||||
targetName: QtcFunctions.qtLibraryName(qbs, name.split('_')[1])
|
||||
destinationDirectory: project.buildDirectory + '/'
|
||||
+ FileInfo.relativePath(project.ide_source_tree, sourceDirectory)
|
||||
cpp.rpaths: [
|
||||
project.buildDirectory + "/" + project.libDirName + "/qtcreator",
|
||||
project.buildDirectory + "/" + project.libDirName + "/qtcreator/plugins"
|
||||
project.buildDirectory + "/" + qtc.libDirName + "/qtcreator",
|
||||
project.buildDirectory + "/" + qtc.libDirName + "/qtcreator/plugins"
|
||||
].concat(additionalRPaths)
|
||||
cpp.cxxLanguageVersion: "c++11"
|
||||
property pathList additionalRPaths: []
|
||||
|
||||
@@ -8,5 +8,5 @@ QtcAutotest {
|
||||
files: "tst_sdktool.cpp"
|
||||
}
|
||||
|
||||
cpp.defines: base.concat(['SDKTOOL_DIR="' + qbs.installRoot + '/' + project.ide_libexec_path + '"'])
|
||||
cpp.defines: base.concat(['SDKTOOL_DIR="' + qbs.installRoot + '/' + qtc.ide_libexec_path + '"'])
|
||||
}
|
||||
|
||||
@@ -8,6 +8,6 @@ ValgrindAutotest {
|
||||
files: ["modeldemo.h", "modeldemo.cpp"]
|
||||
cpp.defines: base.concat([
|
||||
'PARSERTESTS_DATA_DIR="' + path + '/data"',
|
||||
'VALGRIND_FAKE_PATH="' + project.buildDirectory + '/' + project.ide_bin_path + '/valgrind-fake"'
|
||||
'VALGRIND_FAKE_PATH="' + project.buildDirectory + '/' + qtc.ide_bin_path + '/valgrind-fake"'
|
||||
])
|
||||
}
|
||||
|
||||
@@ -8,6 +8,6 @@ ValgrindAutotest {
|
||||
files: ["parsertests.h", "parsertests.cpp"]
|
||||
cpp.defines: base.concat([
|
||||
'PARSERTESTS_DATA_DIR="' + path + '/data"',
|
||||
'VALGRIND_FAKE_PATH="' + project.buildDirectory + '/' + project.ide_bin_path + '/valgrind-fake"'
|
||||
'VALGRIND_FAKE_PATH="' + project.buildDirectory + '/' + qtc.ide_bin_path + '/valgrind-fake"'
|
||||
])
|
||||
}
|
||||
|
||||
@@ -7,6 +7,6 @@ QtcAutotest {
|
||||
property string testName
|
||||
targetName: testName // Test runner hardcodes the names of the executables
|
||||
destinationDirectory: project.buildDirectory + '/'
|
||||
+ project.ide_bin_path + '/testapps/' + testName
|
||||
+ qtc.ide_bin_path + '/testapps/' + testName
|
||||
files: "main.cpp"
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ ValgrindAutotest {
|
||||
Depends { name: "Memcheck uninit2 autotest" }
|
||||
Depends { name: "Memcheck uninit3 autotest" }
|
||||
files: ["testrunner.h", "testrunner.cpp"]
|
||||
destinationDirectory: project.ide_bin_path
|
||||
destinationDirectory: qtc.ide_bin_path
|
||||
cpp.defines: base.concat([
|
||||
'TESTRUNNER_SRC_DIR="' + path + '/testapps"',
|
||||
'TESTRUNNER_APP_DIR="' + project.buildDirectory + '/' + destinationDirectory + '/testapps"'
|
||||
|
||||
Reference in New Issue
Block a user