diff options
Diffstat (limited to '3rdparty/genie/src/base/premake.lua')
-rw-r--r-- | 3rdparty/genie/src/base/premake.lua | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/3rdparty/genie/src/base/premake.lua b/3rdparty/genie/src/base/premake.lua index 8d64d9663c1..c96ef0f2a2a 100644 --- a/3rdparty/genie/src/base/premake.lua +++ b/3rdparty/genie/src/base/premake.lua @@ -22,13 +22,18 @@ -- function premake.generate(obj, filename, callback) + local prev = io.capture() + local abort = (callback(obj) == false) + local new = io.endcapture(prev) + + if abort then + premake.stats.num_skipped = premake.stats.num_skipped + 1 + return + end + filename = premake.project.getfilename(obj, filename) if (premake._checkgenerate) then - io.capture() - callback(obj) - local new = io.endcapture() - local delta = false local f, err = io.open(filename, "rb") @@ -69,8 +74,7 @@ error(err, 0) end - io.output(f) - callback(obj) + f:write(new) f:close() premake.stats.num_generated = premake.stats.num_generated + 1 end |