diff options
| author | ruki <[email protected]> | 2015-06-03 13:47:32 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2015-06-03 13:47:32 +0800 |
| commit | 6ba8d0eb8d09d5170242837ef091c04ab4da6047 (patch) | |
| tree | 33ad58bbaccaec6d0b3a0035fd92602070454ba2 /xmake/scripts/platform/platform.lua | |
| parent | 8f5a561006bb5b0952278075deb908633317c987 (diff) | |
add string split
Diffstat (limited to 'xmake/scripts/platform/platform.lua')
| -rw-r--r-- | xmake/scripts/platform/platform.lua | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/xmake/scripts/platform/platform.lua b/xmake/scripts/platform/platform.lua index 4361ea42a..e968137fd 100644 --- a/xmake/scripts/platform/platform.lua +++ b/xmake/scripts/platform/platform.lua @@ -289,5 +289,32 @@ function platform.probe(configs, is_global) end end +-- build target from the given makefile +function platform.build(mkfile, target) + + -- attempt to done the platform special make first + local p = platform._load(config.get("plat")) + if p and p._MAKER and p._MAKER.done then + return p._MAKER.done(mkfile, target) + end + + -- make command + local cmd = nil + if mkfile and os.isfile(mkfile) then + cmd = string.format("make -f %s %s", mkfile, target or "") + else + cmd = string.format("make %s", target or "") + end + + -- done + local ok = os.execute(cmd) + if ok ~= 0 then + return false + end + + -- ok + return true +end + -- return module: platform return platform |
