aboutsummaryrefslogtreecommitdiffstats
path: root/qbs-resources
diff options
context:
space:
mode:
authorJake Petroules <jake.petroules@qt.io>2017-12-27 00:16:48 -0800
committerIvan Komissarov <ABBAPOH@gmail.com>2020-04-17 14:48:32 +0000
commit38ba93338244bde2d77f039953b64f767723e361 (patch)
tree11a1eb16a5bbb5ce897bc0d19a22900312cde9ed /qbs-resources
parent072291a5282c5dd2c1eebe2e8932d831bbbb3b43 (diff)
Move some Visual Studio generator parts into libqbsmsbuild
This static library contains the MSBuild and Visual Studio solution object model classes and serialization code, without any qbs project model specifics. The latter goes into the generator plugin itself. The Xcode generator will follow the same separation of concerns design when it is introduced. Change-Id: I0a7aca2457c7b7474e0a0a127a3ce5fbec7682f6 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'qbs-resources')
-rw-r--r--qbs-resources/imports/QbsLibrary.qbs23
-rw-r--r--qbs-resources/imports/QbsLibraryBase.qbs24
-rw-r--r--qbs-resources/imports/QbsStaticLibrary.qbs9
3 files changed, 34 insertions, 22 deletions
diff --git a/qbs-resources/imports/QbsLibrary.qbs b/qbs-resources/imports/QbsLibrary.qbs
index bf39cb8d6..88244a903 100644
--- a/qbs-resources/imports/QbsLibrary.qbs
+++ b/qbs-resources/imports/QbsLibrary.qbs
@@ -1,27 +1,6 @@
-import qbs
import qbs.FileInfo
-import qbs.Utilities
-
-QbsProduct {
- Depends { name: "cpp" }
- version: qbsversion.version
- type: libType
- targetName: (qbs.enableDebugCode && qbs.targetOS.contains("windows")) ? (name + 'd') : name
- cpp.defines: base.concat(visibilityType === "static" ? ["QBS_STATIC_LIB"] : ["QBS_LIBRARY"])
- cpp.sonamePrefix: qbs.targetOS.contains("darwin") ? "@rpath" : undefined
- Properties {
- condition: qbs.toolchain.contains("gcc")
- cpp.soVersion: version.replace(/\.\d+$/, '')
- }
- cpp.visibility: "minimal"
- property string visibilityType: staticBuild ? "static" : "dynamic"
- property string headerInstallPrefix: "/include/qbs"
- property bool hasExporter: Utilities.versionCompare(qbs.version, "1.12") >= 0
- property bool generatePkgConfigFile: qbsbuildconfig.generatePkgConfigFiles && hasExporter
- property bool generateQbsModule: install && qbsbuildconfig.generateQbsModules && hasExporter
- property bool staticBuild: Qt.core.staticBuild || qbsbuildconfig.staticBuild
- property stringList libType: [staticBuild ? "staticlibrary" : "dynamiclibrary"]
+QbsLibraryBase {
Depends { name: "Exporter.pkgconfig"; condition: generatePkgConfigFile }
Depends { name: "Exporter.qbs"; condition: generateQbsModule }
diff --git a/qbs-resources/imports/QbsLibraryBase.qbs b/qbs-resources/imports/QbsLibraryBase.qbs
new file mode 100644
index 000000000..7dc6b5f61
--- /dev/null
+++ b/qbs-resources/imports/QbsLibraryBase.qbs
@@ -0,0 +1,24 @@
+import qbs
+import qbs.FileInfo
+import qbs.Utilities
+
+QbsProduct {
+ Depends { name: "cpp" }
+ version: qbsversion.version
+ type: libType
+ targetName: (qbs.enableDebugCode && qbs.targetOS.contains("windows")) ? (name + 'd') : name
+ cpp.defines: base.concat(visibilityType === "static" ? ["QBS_STATIC_LIB"] : ["QBS_LIBRARY"])
+ cpp.sonamePrefix: qbs.targetOS.contains("darwin") ? "@rpath" : undefined
+ Properties {
+ condition: qbs.toolchain.contains("gcc")
+ cpp.soVersion: version.replace(/\.\d+$/, '')
+ }
+ cpp.visibility: "minimal"
+ property string visibilityType: staticBuild ? "static" : "dynamic"
+ property string headerInstallPrefix: "/include/qbs"
+ property bool hasExporter: Utilities.versionCompare(qbs.version, "1.12") >= 0
+ property bool generatePkgConfigFile: qbsbuildconfig.generatePkgConfigFiles && hasExporter
+ property bool generateQbsModule: install && qbsbuildconfig.generateQbsModules && hasExporter
+ property bool staticBuild: Qt.core.staticBuild || qbsbuildconfig.staticBuild
+ property stringList libType: [staticBuild ? "staticlibrary" : "dynamiclibrary"]
+}
diff --git a/qbs-resources/imports/QbsStaticLibrary.qbs b/qbs-resources/imports/QbsStaticLibrary.qbs
new file mode 100644
index 000000000..3342c94d5
--- /dev/null
+++ b/qbs-resources/imports/QbsStaticLibrary.qbs
@@ -0,0 +1,9 @@
+QbsLibraryBase {
+ staticBuild: true
+ Export {
+ Depends { name: "cpp" }
+ Depends { name: "Qt"; submodules: ["core"] }
+
+ cpp.includePaths: [product.sourceDirectory]
+ }
+}