mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-31 15:07:43 +00:00
lua: support linenoise
Signed-off-by: Francois Perrad <francois.perrad@gadz.org> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
parent
d87847203f
commit
635bebf559
@ -7,6 +7,15 @@ config BR2_PACKAGE_LUA
|
|||||||
|
|
||||||
if BR2_PACKAGE_LUA
|
if BR2_PACKAGE_LUA
|
||||||
|
|
||||||
|
choice
|
||||||
|
prompt "Lua Interpreter command-line editing"
|
||||||
|
default BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE
|
||||||
|
|
||||||
|
config BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE
|
||||||
|
bool "none"
|
||||||
|
help
|
||||||
|
None.
|
||||||
|
|
||||||
config BR2_PACKAGE_LUA_INTERPRETER_READLINE
|
config BR2_PACKAGE_LUA_INTERPRETER_READLINE
|
||||||
bool "readline support"
|
bool "readline support"
|
||||||
select BR2_PACKAGE_READLINE
|
select BR2_PACKAGE_READLINE
|
||||||
@ -14,4 +23,12 @@ config BR2_PACKAGE_LUA_INTERPRETER_READLINE
|
|||||||
help
|
help
|
||||||
Enables command-line editing in the lua interpreter.
|
Enables command-line editing in the lua interpreter.
|
||||||
|
|
||||||
|
config BR2_PACKAGE_LUA_INTERPRETER_LINENOISE
|
||||||
|
bool "linenoise support"
|
||||||
|
select BR2_PACKAGE_LINENOISE
|
||||||
|
help
|
||||||
|
Enables command-line editing in the lua interpreter.
|
||||||
|
|
||||||
|
endchoice
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
24
package/lua/lua-11-linenoise.patch
Normal file
24
package/lua/lua-11-linenoise.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
Add support of linenoise (replace readline)
|
||||||
|
|
||||||
|
see discussion, http://lua-users.org/lists/lua-l/2010-03/msg00879.html
|
||||||
|
|
||||||
|
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
|
||||||
|
|
||||||
|
Index: b/src/luaconf.h
|
||||||
|
===================================================================
|
||||||
|
--- a/src/luaconf.h
|
||||||
|
+++ b/src/luaconf.h
|
||||||
|
@@ -279,6 +279,13 @@
|
||||||
|
if (lua_strlen(L,idx) > 0) /* non-empty line? */ \
|
||||||
|
add_history(lua_tostring(L, idx)); /* add it to history */
|
||||||
|
#define lua_freeline(L,b) ((void)L, free(b))
|
||||||
|
+#elif defined(LUA_USE_LINENOISE)
|
||||||
|
+#include <linenoise.h>
|
||||||
|
+#define lua_readline(L,b,p) ((void)L, ((b)=linenoise(p)) != NULL)
|
||||||
|
+#define lua_saveline(L,idx) \
|
||||||
|
+ if (lua_strlen(L,idx) > 0) /* non-empty line? */ \
|
||||||
|
+ linenoiseHistoryAdd(lua_tostring(L, idx)); /* add it to history */
|
||||||
|
+#define lua_freeline(L,b) ((void)L, free(b))
|
||||||
|
#else
|
||||||
|
#define lua_readline(L,b,p) \
|
||||||
|
((void)L, fputs(p, stdout), fflush(stdout), /* show prompt */ \
|
@ -16,10 +16,16 @@ LUA_MYLIBS += -ldl
|
|||||||
ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y)
|
ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y)
|
||||||
LUA_DEPENDENCIES = readline ncurses
|
LUA_DEPENDENCIES = readline ncurses
|
||||||
LUA_MYLIBS += -lreadline -lhistory -lncurses
|
LUA_MYLIBS += -lreadline -lhistory -lncurses
|
||||||
LUA_CFLAGS += -DLUA_USE_LINUX
|
LUA_CFLAGS += -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DLUA_USE_READLINE
|
||||||
|
else
|
||||||
|
ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_LINENOISE),y)
|
||||||
|
LUA_DEPENDENCIES = linenoise
|
||||||
|
LUA_MYLIBS += -llinenoise
|
||||||
|
LUA_CFLAGS += -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DLUA_USE_LINENOISE
|
||||||
else
|
else
|
||||||
LUA_CFLAGS += -DLUA_USE_POSIX -DLUA_USE_DLOPEN
|
LUA_CFLAGS += -DLUA_USE_POSIX -DLUA_USE_DLOPEN
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
# We never want to have host-readline and host-ncurses as dependencies
|
# We never want to have host-readline and host-ncurses as dependencies
|
||||||
# of host-lua.
|
# of host-lua.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user