summaryrefslogtreecommitdiff
path: root/xmake/scripts/base/makefile.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2015-07-20 21:29:45 +0800
committerruki <[email protected]>2015-07-20 21:29:45 +0800
commit183c642743e9f2c38d756fbccb3e9979caa90763 (patch)
tree9b834a4e634ffbcd8e139aff8de1233316de8c0e /xmake/scripts/base/makefile.lua
parente68690c5701217c8dbec0f410757deac6b14e3cb (diff)
print progress for makefile
Diffstat (limited to 'xmake/scripts/base/makefile.lua')
-rw-r--r--xmake/scripts/base/makefile.lua7
1 files changed, 4 insertions, 3 deletions
diff --git a/xmake/scripts/base/makefile.lua b/xmake/scripts/base/makefile.lua
index a42a71788..77efd43c3 100644
--- a/xmake/scripts/base/makefile.lua
+++ b/xmake/scripts/base/makefile.lua
@@ -37,7 +37,7 @@ local tools = require("tools/tools")
local platform = require("platform/platform")
-- make the object to the makefile
-function makefile._make_object(file, target, srcfile, objfile)
+function makefile._make_object(file, target, srcfile, objfile, percent)
-- check
assert(file and target and srcfile and objfile)
@@ -73,7 +73,7 @@ function makefile._make_object(file, target, srcfile, objfile)
file:write(string.format(" %s\n", srcfile))
-- make body
- file:write(string.format("\t@echo %scompiling%s %s\n", utils.ifelse(ccache, "ccache ", ""), mode, srcfile))
+ file:write(string.format("\t@echo [%2d%%] %scompiling%s %s\n", percent, utils.ifelse(ccache, "ccache ", ""), mode, srcfile))
file:write(string.format("\t@xmake l $(VERBOSE) verbose \"%s\"\n", cmd:gsub("[%s=\"]", function (w) return string.format("%%%x", w:byte()) end)))
file:write(string.format("\t@xmake l mkdir %s\n", path.directory(objfile)))
file:write(string.format("\t@%s\n", cmd))
@@ -93,10 +93,11 @@ function makefile._make_objects(file, target, srcfiles, objfiles)
-- make all objects
local i = 1
+ local n = #objfiles
for _, objfile in ipairs(objfiles) do
-- make object
- if not makefile._make_object(file, target, srcfiles[i], objfile) then
+ if not makefile._make_object(file, target, srcfiles[i], objfile, (i - 1) * 100 / n) then
return false
end