summaryrefslogtreecommitdiff
path: root/ninja.lua
diff options
context:
space:
mode:
Diffstat (limited to 'ninja.lua')
-rw-r--r--ninja.lua6
1 files changed, 5 insertions, 1 deletions
diff --git a/ninja.lua b/ninja.lua
index 79ff3f1b..f22c1d62 100644
--- a/ninja.lua
+++ b/ninja.lua
@@ -76,6 +76,8 @@ local function pathsgen(s, i)
local first = not i
while true do
i = s:find('%g', i)
+ local _, j, arch = s:find('^@([^%s()]*)%s*%g?', i)
+ if arch then i = j end
if not i or s:sub(i, i) == ')' then
break
end
@@ -110,7 +112,9 @@ local function pathsgen(s, i)
break
end
end
- expandgen(parts)
+ if not arch or arch == config.target.platform:match('[^-]*') then
+ expandgen(parts)
+ end
if not c or c == ')' then
break
end