filenamesof() an installable now returns all installed files, not just the ones
at the top level (necessary to make a lot of the dependency stuff work when using tools which depend on installables).
This commit is contained in:
parent
84ee7c9cc4
commit
08823a172c
|
@ -723,6 +723,7 @@ definerule("installable",
|
||||||
local deps = {}
|
local deps = {}
|
||||||
local commands = {}
|
local commands = {}
|
||||||
local srcs = {}
|
local srcs = {}
|
||||||
|
local outs = {}
|
||||||
local dests = {}
|
local dests = {}
|
||||||
for dest, src in pairs(e.map) do
|
for dest, src in pairs(e.map) do
|
||||||
if src.is.installable then
|
if src.is.installable then
|
||||||
|
@ -730,6 +731,7 @@ definerule("installable",
|
||||||
error("can't specify a destination filename when installing an installable")
|
error("can't specify a destination filename when installing an installable")
|
||||||
end
|
end
|
||||||
deps[#deps+1] = src.fullname
|
deps[#deps+1] = src.fullname
|
||||||
|
outs = concat(outs, filenamesof(src))
|
||||||
elseif (type(dest) == "number") then
|
elseif (type(dest) == "number") then
|
||||||
error("only references to other installables can be missing a destination")
|
error("only references to other installables can be missing a destination")
|
||||||
else
|
else
|
||||||
|
@ -740,6 +742,7 @@ definerule("installable",
|
||||||
|
|
||||||
deps[#deps+1] = f
|
deps[#deps+1] = f
|
||||||
dests[#dests+1] = dest
|
dests[#dests+1] = dest
|
||||||
|
outs[#outs+1] = dest
|
||||||
commands[#commands+1] = "cp "..f[1].." "..dest
|
commands[#commands+1] = "cp "..f[1].." "..dest
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -752,7 +755,7 @@ definerule("installable",
|
||||||
emitter:endrule()
|
emitter:endrule()
|
||||||
|
|
||||||
return {
|
return {
|
||||||
outs = dests
|
outs = outs
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue