aboutsummaryrefslogtreecommitdiffstats
path: root/share/qbs/modules/cpp/CppModule.qbs
diff options
context:
space:
mode:
authorJake Petroules <jake.petroules@qt.io>2016-04-22 11:20:45 -0700
committerJake Petroules <jake.petroules@qt.io>2016-05-11 05:37:11 +0000
commit87a1478921d634dcd99a4bac2ea851ad1cc93c48 (patch)
tree3916c7926954bc6285ee3398f697bcb6cda7ace7 /share/qbs/modules/cpp/CppModule.qbs
parentfa9f4293a0d25e0890d234b1a6d8fc863aa56cac (diff)
Automatically determine the compiler's architecture.
Also, do extensive validation on the result by ensuring that the arch specified by the user is what which the compiler will actually generate when invoked, by constructing an appropriate argument list and doing a dump of the compiler's macros. This ensures a user cannot specify a bogus architecture which is not actually the one the compiler will generate. Furthermore, compiler probes will no longer generate the wrong value for qbs.architecture for ARM-family architectures, since the triple returned by $(CC) -dumpmachine does not include the subarch which needs to be passed to the compiler. Users will also be prevented from subverting proper operation by attempting to pass raw ABI-related flags in the flags properties. Change-Id: I2aed8e0afefdf7e5a4112183f2f9ea96b1e22b51 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Diffstat (limited to 'share/qbs/modules/cpp/CppModule.qbs')
-rw-r--r--share/qbs/modules/cpp/CppModule.qbs1
1 files changed, 1 insertions, 0 deletions
diff --git a/share/qbs/modules/cpp/CppModule.qbs b/share/qbs/modules/cpp/CppModule.qbs
index c0d7f3a8b..92ea3e595 100644
--- a/share/qbs/modules/cpp/CppModule.qbs
+++ b/share/qbs/modules/cpp/CppModule.qbs
@@ -40,6 +40,7 @@ Module {
property string warningLevel : 'all' // 'none', 'all'
property bool treatWarningsAsErrors : false
property string architecture: qbs.architecture
+ property string machineType // undocumented
property string optimization: qbs.optimization
property bool debugInformation: qbs.debugInformation
property bool enableReproducibleBuilds: false