XMake: Fix double-compilation of shaders and recompile shaders on nzsl update
Shaders were compiled twice because rule was added separately
This commit is contained in:
parent
689ea06fe1
commit
2f593dcde7
12
xmake.lua
12
xmake.lua
|
|
@ -453,25 +453,13 @@ function ModuleTargetConfig(name, module)
|
|||
|
||||
add_files("src/Nazara/" .. name .. "/**.cpp")
|
||||
if has_config("embed_resources") then
|
||||
local embedResourceRule = false
|
||||
for _, filepath in pairs(os.files("src/Nazara/" .. name .. "/Resources/**|**.h|**.nzsl|**.nzslb")) do
|
||||
if not embedResourceRule then
|
||||
add_rules("embed.resources")
|
||||
embedResourceRule = true
|
||||
end
|
||||
|
||||
add_files(filepath, {rule = "embed.resources"})
|
||||
end
|
||||
end
|
||||
|
||||
if has_config("compile_shaders") then
|
||||
local compileShaderRule = false
|
||||
for _, filepath in pairs(os.files("src/Nazara/" .. name .. "/Resources/**.nzsl")) do
|
||||
if not compileShaderRule then
|
||||
add_rules("nzsl.compile.shaders")
|
||||
compileShaderRule = true
|
||||
end
|
||||
|
||||
add_files(filepath, {rule = "nzsl.compile.shaders"})
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ rule("nzsl.compile.shaders")
|
|||
|
||||
-- add deps
|
||||
batchcmds:add_depfiles(shaderfile)
|
||||
batchcmds:add_depvalues(nzsl:version())
|
||||
batchcmds:set_depmtime(os.mtime(outputFile))
|
||||
batchcmds:set_depcache(target:dependfile(outputFile))
|
||||
end)
|
||||
|
|
|
|||
Loading…
Reference in New Issue