grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] LUA script engine for grub2


From: Bean
Subject: Re: [PATCH] LUA script engine for grub2
Date: Sun, 3 May 2009 16:46:54 +0800

Hi,

This is an update for lua script engine. Now there are three commands
in the grub library:

grub.run
Execute a grub command, the command is now passed as a single string,
this allows users to construct it dynamically. Return grub_errno, the
error message is returned as second value if grub_errno is not 0.

Example:
err_no,err_msg=grub.run("ls /")
print(err_no,err_msg)


grub.getenv
Get grub environment variable. Allow multiple input.

Example:
prefix,root=grub.getenv("prefix", "root")

grub.setenv
Set grub environment variable.

Example:
grub.setenv ("aa", "Hello")
grub.run("set")

The grub code is now completely separated from lua code, it always
starts with grub_ prefix: grub_main.c, grub_lua.h, grub_lib.c and
grub_lib.h.

If there is no objection, I'd commit this in a few days.

2009-05-03  Bean  <address@hidden>

        * conf/common.rmk (pkglib_MODULES): Add lua.mod.
        (lua_mod_SOURCES): New variable.
        (lua_mod_CFLAGS): Likewise.
        (lua_mod_LDFLAGS): Likewise.

        * conf/i386.rmk (pkglib_MODULES): Add setjmp.mod.
        (setjmp_mod_SOURCES): New variable.
        (setjmp_mod_CFLAGS): Likewise.
        (setjmp_LDFLAGS): Likewise.

        * include/grub/i386/setjmp.h (grub_setjmp): Don't use attribute
        returns_twice in mingw.

        * script/lua/grub_lib.c: New file.
        * script/lua/grub_lib.h: Likewise.
        * script/lua/grub_lua.h: Likewise.
        * script/lua/grub_main.c: Likewise.
        * script/lua/lapi.c: Likewise.
        * script/lua/lapi.h: Likewise.
        * script/lua/lauxlib.c: Likewise.
        * script/lua/lauxlib.h: Likewise.
        * script/lua/lbaselib.c: Likewise.
        * script/lua/lcode.c: Likewise.
        * script/lua/lcode.h: Likewise.
        * script/lua/ldblib.c: Likewise.
        * script/lua/ldebug.c: Likewise.
        * script/lua/ldebug.h: Likewise.
        * script/lua/ldo.c: Likewise.
        * script/lua/ldo.h: Likewise.
        * script/lua/ldump.c: Likewise.
        * script/lua/lfunc.c: Likewise.
        * script/lua/lfunc.h: Likewise.
        * script/lua/lgc.c: Likewise.
        * script/lua/lgc.h: Likewise.
        * script/lua/linit.c: Likewise.
        * script/lua/liolib.c: Likewise.
        * script/lua/llex.c: Likewise.
        * script/lua/llex.h: Likewise.
        * script/lua/llimits.h: Likewise.
        * script/lua/lmathlib.c: Likewise.
        * script/lua/lmem.c: Likewise.
        * script/lua/lmem.h: Likewise.
        * script/lua/loadlib.c: Likewise.
        * script/lua/lobject.c: Likewise.
        * script/lua/lobject.h: Likewise.
        * script/lua/lopcodes.c: Likewise.
        * script/lua/lopcodes.h: Likewise.
        * script/lua/loslib.c: Likewise.
        * script/lua/lparser.c: Likewise.
        * script/lua/lparser.h: Likewise.
        * script/lua/lstate.c: Likewise.
        * script/lua/lstate.h: Likewise.
        * script/lua/lstring.c: Likewise.
        * script/lua/lstring.h: Likewise.
        * script/lua/lstrlib.c: Likewise.
        * script/lua/ltable.c: Likewise.
        * script/lua/ltable.h: Likewise.
        * script/lua/ltablib.c: Likewise.
        * script/lua/ltm.c: Likewise.
        * script/lua/ltm.h: Likewise.
        * script/lua/lua.h: Likewise.
        * script/lua/luaconf.h: Likewise.
        * script/lua/lualib.h: Likewise.
        * script/lua/lundump.c: Likewise.
        * script/lua/lundump.h: Likewise.
        * script/lua/lvm.c: Likewise.
        * script/lua/lvm.h: Likewise.
        * script/lua/lzio.c: Likewise.
        * script/lua/lzio.h: Likewise.


-- 
Bean

Attachment: lua_2.zip
Description: Zip archive


reply via email to

[Prev in Thread] Current Thread [Next in Thread]