OC-PsychOS/modules/applications/genkernel.lua

33 lines
669 B
Lua
Raw Normal View History

function genkernel(modlistf,kname)
local nk,f = "",io.open(modlistf,"rb")
nk=nk.."_OSVERSION=\"PsychOS "..(kname or "unknown").."\"\n"
nk=nk.."_BD=\""..os.date("%Y/%m/%d %H:%M %z").."\"\n"
local c=f:read("*a")
f:close()
local n=1
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
local tw = {}
for w in line:gmatch("%S+") do
tw[#tw+1] = w
end
n=n+1
if tw[1] == "fwrap" then
nk=nk.."function "..tw[2].."(...)\n"
apfile(tw[3])
nk=nk.."\nend\n"
elseif tw[1] == "include" then
apfile(tw[2])
else
apfile(line)
end
end
return nk
end