63 lines
1.3 KiB
Lua
63 lines
1.3 KiB
Lua
bldit_version = "1.1.3"
|
|
package_version = "1.1.3"
|
|
|
|
dependencies = {}
|
|
|
|
exec_name = "fvmfpc"
|
|
libs = "-Wall -Wextra"
|
|
includes = "-I../Lazyc"
|
|
|
|
execute = function(str)
|
|
print(str)
|
|
return os.execute(str)
|
|
end
|
|
|
|
targets = {
|
|
default = {
|
|
build = function()
|
|
e,h,c = execute("rm -fr build")
|
|
if c ~= 0 and c ~= nil then
|
|
print("Build Error")
|
|
print("GIVEN UP")
|
|
return c
|
|
end
|
|
e,h,c = execute("mkdir build")
|
|
if c ~= 0 and c ~= nil then
|
|
print("Build Error")
|
|
print("GIVEN UP")
|
|
return c
|
|
end
|
|
cmd = [[find src -type f -name "*.c" -print]]
|
|
p = io.popen(cmd)
|
|
assert(p, "File detection error, GIVEN UP")
|
|
|
|
for f in p:lines() do
|
|
base = f:match("([^/]+)%.c$")
|
|
obj = "build/"..base..".o"
|
|
cc = "cc -c '"..f.."' -o '"..obj.."' "..includes
|
|
e,h,c = execute(cc)
|
|
if c ~= 0 and c ~= nil then
|
|
print("Compilation Error")
|
|
print("GIVEN UP")
|
|
return c
|
|
end
|
|
end
|
|
p:close()
|
|
e,h,c = execute("cc build/*.o "..libs.." -o "..exec_name)
|
|
if c ~= 0 and c ~= nil then
|
|
print("Compilation Error")
|
|
print("GIVEN UP")
|
|
return c
|
|
end
|
|
return 0
|
|
end,
|
|
install = function()
|
|
e,h,c = execute("cp "..exec_name.." /bin")
|
|
return c or 0
|
|
end,
|
|
uninstall = function()
|
|
e,h,c = execute("rm /bin"..exec_name)
|
|
return c or 0
|
|
end,
|
|
}
|
|
}
|