summaryrefslogtreecommitdiff
path: root/xmake/core/tool/builder.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2018-02-04 23:27:28 +0800
committerruki <[email protected]>2018-02-04 23:27:28 +0800
commit3067eb2a3f6b8ebd34d719558a7f0dedc527d3fe (patch)
tree8267ce8e2d32f9ebb6beed4bef3837a6d6f8a43c /xmake/core/tool/builder.lua
parent4cf802876d1a04b23874f0664570b6fe55dcfba8 (diff)
fix force add flags
Diffstat (limited to 'xmake/core/tool/builder.lua')
-rw-r--r--xmake/core/tool/builder.lua20
1 files changed, 10 insertions, 10 deletions
diff --git a/xmake/core/tool/builder.lua b/xmake/core/tool/builder.lua
index d0744a11e..11a6bf582 100644
--- a/xmake/core/tool/builder.lua
+++ b/xmake/core/tool/builder.lua
@@ -231,19 +231,19 @@ function builder:_addflags_from_target(flags, target)
-- add the target flags
for _, flagkind in ipairs(self:_flagkinds()) do
- -- get flag and extra info
- local flag = target:get(flagkind)
+ -- get flags and extra info
+ local flags = target:get(flagkind)
local flagextra = target:get("__extra_" .. flagkind)
- local force = false
if flagextra then
- force = (flagextra[flag] or {}).force
- end
-
- -- add original or auto mapping flag?
- if force then
- table.join2(targetflags, flag)
+ for _, flag in ipairs(table.wrap(flags)) do
+ if (flagextra[flag] or {}).force then
+ table.join2(targetflags, flag)
+ else
+ table.join2(targetflags, self:_mapflags(flag))
+ end
+ end
else
- table.join2(targetflags, self:_mapflags(flag))
+ table.join2(targetflags, self:_mapflags(flags))
end
end