diff options
author | Christian Kandeler <christian.kandeler@digia.com> | 2014-07-17 16:05:47 +0200 |
---|---|---|
committer | Joerg Bornemann <joerg.bornemann@digia.com> | 2014-07-18 10:58:29 +0200 |
commit | 22c5846e6cf12787439ea70ec7ee25b71fd82573 (patch) | |
tree | 4afd2acde4c692be0f1b212d511d53deab00261f /share/qbs/modules/cpp | |
parent | dce309bf4e18cc20f3f9b03fbd33f63f5c60d025 (diff) |
Cpp module: Fix "visibility" property.
The GCC visibility options can be combined.
Change-Id: I9fe5c9bb80f2fcc97cd5a5bc0651314ecd180e51
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'share/qbs/modules/cpp')
-rw-r--r-- | share/qbs/modules/cpp/CppModule.qbs | 4 | ||||
-rw-r--r-- | share/qbs/modules/cpp/gcc.js | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/share/qbs/modules/cpp/CppModule.qbs b/share/qbs/modules/cpp/CppModule.qbs index 5271c6fa9..298c1b803 100644 --- a/share/qbs/modules/cpp/CppModule.qbs +++ b/share/qbs/modules/cpp/CppModule.qbs @@ -157,11 +157,11 @@ Module { description: "entry point symbol for an executable or dynamic library" } - property string visibility: 'default' // 'default', 'hidden', 'hiddenInlines' + property string visibility: 'default' PropertyOptions { name: "visibility" description: "export symbols visibility level" - allowedValues: ['default', 'hidden', 'hiddenInlines'] + allowedValues: ['default', 'hidden', 'hiddenInlines', 'minimal'] } // Platform properties. Those are intended to be set by the toolchain setup diff --git a/share/qbs/modules/cpp/gcc.js b/share/qbs/modules/cpp/gcc.js index f10ae9bd0..3d415c0e6 100644 --- a/share/qbs/modules/cpp/gcc.js +++ b/share/qbs/modules/cpp/gcc.js @@ -281,9 +281,9 @@ function prepareCompiler(project, product, inputs, outputs, input, output) { var visibility = ModUtils.moduleProperty(product, 'visibility'); if (!product.type.contains('staticlibrary') && !product.moduleProperty("qbs", "toolchain").contains("mingw")) { - if (visibility === 'hidden') + if (visibility === 'hidden' || visibility === 'minimal') args.push('-fvisibility=hidden'); - if (visibility === 'hiddenInlines') + if (visibility === 'hiddenInlines' || visibility === 'minimal') args.push('-fvisibility-inlines-hidden'); if (visibility === 'default') args.push('-fvisibility=default') |