diff options
Diffstat (limited to 'docs/markdown/snippets')
-rw-r--r-- | docs/markdown/snippets/get-supported-arguments.md | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/docs/markdown/snippets/get-supported-arguments.md b/docs/markdown/snippets/get-supported-arguments.md new file mode 100644 index 0000000..c0cc9bf --- /dev/null +++ b/docs/markdown/snippets/get-supported-arguments.md @@ -0,0 +1,23 @@ +# Easier handling of supported compiler arguments + +A common pattern for handling multiple desired compiler arguments, was to +test their presence and add them to an array one-by-one, e.g.: + + warning_flags_maybe = [ + '-Wsomething', + '-Wanother-thing', + '-Wno-the-other-thing', + ] + warning_flags = [] + foreach flag : warning_flags_maybe + if cc.has_argument(flag) + warning_flags += flag + endif + endforeach + cc.add_project_argument(warning_flags) + +A helper has been added for the foreach/has_argument pattern, so you can +now simply do: + + warning_flags = [ ... ] + flags = cc.get_supported_flags(warning_flags) |