kumquat-buildroot/package/lua/Config.in
Francois Perrad c77c66b7df package/lua: add options for coercion between number and string
The default behavior of Lua 5.3/5.4 interperter (and the only way with
Lua 5.1) is the automatic coercion. This default behavior could change
in future version (ie. Lua 5.5).

Disabling automatic coercion increases the performance of the interpreter.

Currently, using automatic coercion is not a good/recommended practice,
but there are no way (expect testing) to say if a Lua module relies on it.

We add two options to drive coercion in either way, and we make those
options default to y, as this was the de-facto situation until now; lua
5.1 forces those options: this will help when/if we have packages that
actually requires them, but has otherwise no requirement on the lua
version.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
[yann.morin.1998@free.fr:
  - don't limit options to lua 5.3||5.4
  - force those options for lua 5.1
  - extend commit log accordingly
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2023-01-18 22:18:16 +01:00

87 lines
1.9 KiB
Plaintext

config BR2_PACKAGE_LUA
bool "lua"
select BR2_PACKAGE_HAS_LUAINTERPRETER
help
Lua is a powerful, fast, light-weight, embeddable scripting
language.
http://www.lua.org/
if BR2_PACKAGE_LUA
config BR2_PACKAGE_PROVIDES_LUAINTERPRETER
default "lua"
choice
prompt "Lua Version"
default BR2_PACKAGE_LUA_5_4
help
Select the version of Lua API/ABI you wish to use.
config BR2_PACKAGE_LUA_5_1
bool "Lua 5.1.x"
select BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION_5_1
select BR2_PACKAGE_LUA_CVT_N2S
select BR2_PACKAGE_LUA_CVT_S2N
config BR2_PACKAGE_LUA_5_3
bool "Lua 5.3.x"
select BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION_5_3
config BR2_PACKAGE_LUA_5_4
bool "Lua 5.4.x"
select BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION_5_4
endchoice
if BR2_PACKAGE_LUA_5_3 || BR2_PACKAGE_LUA_5_4
config BR2_PACKAGE_LUA_32BITS
bool "Use 32 bit numbers"
default y if !BR2_ARCH_IS_64
help
Use a 32 bit data type for numbers / integers instead of the
default 64 bit type. This option is particularly attractive
for small machines and embedded systems.
endif
config BR2_PACKAGE_LUA_CVT_N2S
bool "automatic coercion from number to string"
default y # legacy
help
If unsure, say y, this is the default behavior of the Lua
interpreter. See LUA_NOCVTN2S in luaconf.h
config BR2_PACKAGE_LUA_CVT_S2N
bool "automatic coercion from string to number"
default y # legacy
help
If unsure, say y, this is the default behavior of the Lua
interpreter. See LUA_NOCVTN2S in luaconf.h
choice
prompt "Lua command-line editing"
default BR2_PACKAGE_LUA_EDITING_NONE
config BR2_PACKAGE_LUA_EDITING_NONE
bool "none"
help
None.
config BR2_PACKAGE_LUA_READLINE
bool "readline support"
select BR2_PACKAGE_READLINE
select BR2_PACKAGE_NCURSES
help
Enables command-line editing in the Lua interpreter.
config BR2_PACKAGE_LUA_LINENOISE
bool "linenoise support"
select BR2_PACKAGE_LINENOISE
help
Enables command-line editing in the Lua interpreter.
endchoice
endif