diff options
| -rw-r--r-- | xmake/core/tool/builder.lua | 20 |
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 |
