wrote lmk, an more general lua build system
This commit is contained in:
parent
83e26739a5
commit
275c50c10d
@ -1,3 +1,6 @@
|
|||||||
|
lexec genheader.lua
|
||||||
|
ofile out/everything.lua
|
||||||
|
header.lua
|
||||||
modules/base/loadlin.lua
|
modules/base/loadlin.lua
|
||||||
modules/debug/log.lua
|
modules/debug/log.lua
|
||||||
modules/base/header.lua
|
modules/base/header.lua
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
lexec genheader.lua
|
||||||
|
ofile out/headless.lua
|
||||||
|
header.lua
|
||||||
modules/base/loadlin.lua
|
modules/base/loadlin.lua
|
||||||
modules/debug/log.lua
|
modules/debug/log.lua
|
||||||
modules/base/header.lua
|
modules/base/header.lua
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
lexec genheader.lua
|
||||||
|
ofile out/minimal.lua
|
||||||
|
header.lua
|
||||||
modules/base/loadlin.lua
|
modules/base/loadlin.lua
|
||||||
modules/debug/log.lua
|
modules/debug/log.lua
|
||||||
modules/base/header.lua
|
modules/base/header.lua
|
||||||
|
73
exec/lmk.lua
Normal file
73
exec/lmk.lua
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
local tA = {...}
|
||||||
|
local modlistf = tA[1]
|
||||||
|
local nk = ""
|
||||||
|
local oprint = print
|
||||||
|
print(modlistf)
|
||||||
|
function print(...)
|
||||||
|
if tA[2] then
|
||||||
|
oprint(...)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
f = io.open(modlistf,"rb")
|
||||||
|
if not f then error("no input file") end
|
||||||
|
local ofile = nil
|
||||||
|
local c=f:read("*a")
|
||||||
|
f:close()
|
||||||
|
local n=1
|
||||||
|
local function wcfile()
|
||||||
|
if ofile then
|
||||||
|
f=io.open(ofile,"wb")
|
||||||
|
if f then
|
||||||
|
oprint("writing file "..ofile)
|
||||||
|
f:write(nk)
|
||||||
|
f:close()
|
||||||
|
else
|
||||||
|
oprint("warning: unable to open file "..ofile.." to write")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
local function apfile(fp)
|
||||||
|
local f=io.open(fp,"rb")
|
||||||
|
if f then
|
||||||
|
nk=nk..f:read("*a")
|
||||||
|
f:close()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
for line in c:gmatch("[^\r\n]+") do
|
||||||
|
print(line)
|
||||||
|
local tw = {}
|
||||||
|
for w in line:gmatch("%S+") do
|
||||||
|
tw[#tw+1] = w
|
||||||
|
end
|
||||||
|
n=n+1
|
||||||
|
if tw[1] == "ofile" then
|
||||||
|
wcfile()
|
||||||
|
ofile = tw[2]
|
||||||
|
nk=""
|
||||||
|
elseif tw[1] == "exec" then
|
||||||
|
os.execute(tw[2])
|
||||||
|
elseif tw[1] == "lexec" then
|
||||||
|
local f=io.open(tw[2],"rb")
|
||||||
|
if f then
|
||||||
|
local fc = f:read("*a")
|
||||||
|
print(fc)
|
||||||
|
print(pcall(load(fc)))
|
||||||
|
end
|
||||||
|
f:close()
|
||||||
|
elseif tw[1] == "fwrap" then
|
||||||
|
nk=nk.."function "..tw[2].."(...)\n"
|
||||||
|
apfile(tw[3])
|
||||||
|
nk=nk.."\nend\n"
|
||||||
|
elseif tw[1] == "libwrap" then
|
||||||
|
nk=nk.."function "..tw[2].."(...)\n"
|
||||||
|
apfile(tw[3])
|
||||||
|
nk=nk.."\nend\n_G."..tw[2].." = "..tw[2].."()\n"
|
||||||
|
elseif tw[1] == "alias" then
|
||||||
|
nk=nk..tw[2].."="..tw[3].."\n"
|
||||||
|
elseif tw[1] == "include" then
|
||||||
|
apfile(tw[2])
|
||||||
|
elseif #tw == 1 then
|
||||||
|
apfile(line)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
wcfile()
|
12
genheader.lua
Executable file
12
genheader.lua
Executable file
@ -0,0 +1,12 @@
|
|||||||
|
local f = io.open("header.lua","wb")
|
||||||
|
local kname = nil
|
||||||
|
if not _OSNAME then
|
||||||
|
local w,gn = pcall(io.popen,"git rev-parse HEAD")
|
||||||
|
if w then
|
||||||
|
kname = gn:read():sub(1,7)
|
||||||
|
gn:close()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
f:write("_OSVERSION=\"PsychOS "..(kname or os.date("%Y/%m/%d %H:%M %z")).."\"\n")
|
||||||
|
f:write("_BD=\""..os.date("%Y/%m/%d %H:%M %z").."\"\n")
|
||||||
|
f:close()
|
@ -1,3 +0,0 @@
|
|||||||
#!/usr/bin/env lua
|
|
||||||
require "modules/applications/genkernel"
|
|
||||||
print(genkernel(...))
|
|
@ -2,6 +2,6 @@
|
|||||||
mkdir -p out/
|
mkdir -p out/
|
||||||
for f in `dir -d configs/*`; do
|
for f in `dir -d configs/*`; do
|
||||||
kn=$(echo $f | cut -f 1 -d '.' | cut -f 2 -d "/")
|
kn=$(echo $f | cut -f 1 -d '.' | cut -f 2 -d "/")
|
||||||
./genkernel.lua $f "$(git rev-parse --short HEAD)" > out/$kn.lua
|
lua exec/lmk.lua $f
|
||||||
lua strip.lua out/$kn.lua out/s$kn.lua
|
lua strip.lua out/$kn.lua out/s$kn.lua
|
||||||
done
|
done
|
||||||
|
2
header.lua
Normal file
2
header.lua
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
_OSVERSION="PsychOS 83e2673"
|
||||||
|
_BD="2017/10/08 08:18 +1100"
|
Loading…
Reference in New Issue
Block a user