From b8d84a0b130622e16ab0e37c3c43d9844434a5c5 Mon Sep 17 00:00:00 2001 From: Hisham Muhammad Date: Wed, 4 Jul 2018 11:59:01 -0300 Subject: config file: do not assume 'variable' table exists (for compat with LR2) This change results in a default config that works in both LuaRocks 2 and 3. We do not promise a compatible configuration format, but it's nice to avoid unnecessary breakage if we can. --- configure | 10 ++++++---- src/luarocks/core/cfg.lua | 7 ++++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/configure b/configure index ecdb649a..0fbee6f6 100755 --- a/configure +++ b/configure @@ -485,10 +485,12 @@ EOF echo ' { name = "system", root = "'"$ROCKS_TREE"'" },' echo '}' if [ -n "$LUA_INTERPRETER" ]; then echo 'lua_interpreter = "'"$LUA_INTERPRETER"'"' ; fi - if [ -n "$LUA_DIR" ]; then echo 'variables.LUA_DIR = "'"$LUA_DIR"'"' ; fi - if [ -n "$LUA_INCDIR" ]; then echo 'variables.LUA_INCDIR = "'"$LUA_INCDIR"'"' ; fi - if [ -n "$LUA_BINDIR" ]; then echo 'variables.LUA_BINDIR = "'"$LUA_BINDIR"'"' ; fi - if [ -n "$LUA_LIBDIR" ]; then echo 'variables.LUA_LIBDIR = "'"$LUA_LIBDIR"'"' ; fi + echo 'variables = {' + if [ -n "$LUA_DIR" ]; then echo ' LUA_DIR = "'"$LUA_DIR"'",' ; fi + if [ -n "$LUA_INCDIR" ]; then echo ' LUA_INCDIR = "'"$LUA_INCDIR"'",' ; fi + if [ -n "$LUA_BINDIR" ]; then echo ' LUA_BINDIR = "'"$LUA_BINDIR"'",' ; fi + if [ -n "$LUA_LIBDIR" ]; then echo ' LUA_LIBDIR = "'"$LUA_LIBDIR"'",' ; fi + echo '}' } > "config-$LUA_VERSION.lua.in" echo diff --git a/src/luarocks/core/cfg.lua b/src/luarocks/core/cfg.lua index af57e7ca..b8fedd28 100644 --- a/src/luarocks/core/cfg.lua +++ b/src/luarocks/core/cfg.lua @@ -657,9 +657,10 @@ function cfg.init(lua_data, project_dir, warning) cfg.lua_version = lua_data.lua_version or cfg.lua_version cfg.luajit_version = lua_data.luajit_version or cfg.luajit_version cfg.lua_interpreter = lua_data.lua_interpreter or cfg.lua_interpreter - cfg.variables.LUA_BINDIR = lua_data.lua_bindir or cfg.variables.LUA_BINDIR - cfg.variables.LUA_INCDIR = lua_data.lua_incdir or cfg.variables.LUA_INCDIR - cfg.variables.LUA_LIBDIR = lua_data.lua_libdir or cfg.variables.LUA_LIBDIR + cfg.variables.LUA_BINDIR = lua_data.lua_bindir or cfg.variables.LUA_BINDIR or lua_bindir + cfg.variables.LUA_INCDIR = lua_data.lua_incdir or cfg.variables.LUA_INCDIR or lua_incdir + cfg.variables.LUA_LIBDIR = lua_data.lua_libdir or cfg.variables.LUA_LIBDIR or lua_libdir + cfg.variables.LUA_DIR = lua_data.lua_dir or cfg.variables.LUA_DIR or lua_dir -- Build a default list of rocks trees if not given if not next(cfg.rocks_trees) then -- cgit v1.2.3-55-g6feb