Merge pull request #1614 from fooishbar/cc-filter-args
Add Compiler.filter_arguments()pull/2275/head
commit
437fc04da1
5 changed files with 59 additions and 5 deletions
@ -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) |
Loading…
Reference in new issue