add globals scripts
Some checks failed
Clang-format Check / clang-format-check (push) Failing after 7s
Some checks failed
Clang-format Check / clang-format-check (push) Failing after 7s
This commit is contained in:
parent
a675b64b5f
commit
b58697e058
2 changed files with 69 additions and 0 deletions
29
assets/lua/global/cmake.lua
Normal file
29
assets/lua/global/cmake.lua
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
local cmd = require("cmd")
|
||||||
|
|
||||||
|
local cd = cmd.cd
|
||||||
|
local cmd = cmd.cmd
|
||||||
|
|
||||||
|
local cmake = {
|
||||||
|
prepare = function()
|
||||||
|
cmd[[
|
||||||
|
if [ -d "build" ]; then
|
||||||
|
rm -r "build"
|
||||||
|
fi
|
||||||
|
]]
|
||||||
|
cmd'mkdir build'
|
||||||
|
cd'build'
|
||||||
|
cmd'cmake ..'
|
||||||
|
end,
|
||||||
|
|
||||||
|
build = function()
|
||||||
|
cd'build'
|
||||||
|
cmd'make -j'
|
||||||
|
end
|
||||||
|
}
|
||||||
|
|
||||||
|
function cmake:all()
|
||||||
|
cmake.prepare()
|
||||||
|
cmake.build()
|
||||||
|
end
|
||||||
|
|
||||||
|
return cmake
|
40
assets/lua/global/cmd.lua
Normal file
40
assets/lua/global/cmd.lua
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
local function join(delimiter, list)
|
||||||
|
local result = ""
|
||||||
|
local len = #list
|
||||||
|
for i, v in ipairs(list) do
|
||||||
|
result = result .. tostring(v)
|
||||||
|
if i < len then
|
||||||
|
result = result .. tostring(delimiter)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return result
|
||||||
|
end
|
||||||
|
|
||||||
|
local function quoted(str)
|
||||||
|
local escaped_str = string.gsub(str, '[\\"]', '\\%1')
|
||||||
|
return '"' .. escaped_str .. '"'
|
||||||
|
end
|
||||||
|
|
||||||
|
local lfs = require("lfs")
|
||||||
|
|
||||||
|
return {
|
||||||
|
cmd = function(cmd)
|
||||||
|
if type(cmd) == "string" then
|
||||||
|
cmd = {cmd}
|
||||||
|
end
|
||||||
|
|
||||||
|
local cmd_line = table.concat(cmd, "\n")
|
||||||
|
for i, v in ipairs(cmd) do
|
||||||
|
cmd[i] = "\27[32m-> \27[0m" .. string.gsub(cmd[i], "\n", "\n\27[32m-> \27[0m")
|
||||||
|
end
|
||||||
|
local print_line = table.concat(cmd, "\n")
|
||||||
|
print(print_line)
|
||||||
|
return assert(os.execute("bash -e -c " .. quoted(cmd_line)))
|
||||||
|
end,
|
||||||
|
|
||||||
|
|
||||||
|
cd = function(path)
|
||||||
|
print("\27[32m-> \27[0mcd " .. path)
|
||||||
|
assert(lfs.chdir(path))
|
||||||
|
end
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue