aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--install.bat35
-rw-r--r--src/luarocks/cfg.lua10
2 files changed, 28 insertions, 17 deletions
diff --git a/install.bat b/install.bat
index d83dfbf1..57e3611c 100644
--- a/install.bat
+++ b/install.bat
@@ -8,6 +8,8 @@ local vars = {}
8vars.PREFIX = nil 8vars.PREFIX = nil
9vars.VERSION = "2.2" 9vars.VERSION = "2.2"
10vars.SYSCONFDIR = nil 10vars.SYSCONFDIR = nil
11vars.SYSCONFFILENAME = nil
12vars.CONFIG_FILE = nil
11vars.TREE_ROOT = nil 13vars.TREE_ROOT = nil
12vars.TREE_BIN = nil 14vars.TREE_BIN = nil
13vars.TREE_LMODULE = nil 15vars.TREE_LMODULE = nil
@@ -360,7 +362,14 @@ local function look_for_headers (directory)
360 die(S"lua.h not found in $LUA_INCDIR") 362 die(S"lua.h not found in $LUA_INCDIR")
361 end 363 end
362 364
363 for _, e in ipairs{ [[\]], [[\include\]]} do 365 for _, e in ipairs{
366 S([[\include\lua\$LUA_VERSION]]),
367 S([[\include\lua$LUA_SHORTV]]),
368 S([[\include\lua$LUA_VERSION]]),
369 S([[\include\$LUA_VERSION]]),
370 [[\include\]],
371 [[\]],
372 } do
364 print(" checking for "..directory..e.."\\lua.h") 373 print(" checking for "..directory..e.."\\lua.h")
365 if exists(directory..e.."\\lua.h") then 374 if exists(directory..e.."\\lua.h") then
366 vars.LUA_INCDIR = directory..e 375 vars.LUA_INCDIR = directory..e
@@ -610,6 +619,8 @@ else
610 datapath = os.getenv("ProgramW6432") .. [[\LuaRocks]] 619 datapath = os.getenv("ProgramW6432") .. [[\LuaRocks]]
611end 620end
612vars.SYSCONFDIR = vars.SYSCONFDIR or vars.PREFIX 621vars.SYSCONFDIR = vars.SYSCONFDIR or vars.PREFIX
622vars.SYSCONFFILENAME = S"config-$LUA_VERSION.lua"
623vars.CONFIG_FILE = vars.SYSCONFDIR.."\\"..vars.SYSCONFFILENAME
613vars.TREE_ROOT = vars.TREE_ROOT or datapath..[[\systree]] 624vars.TREE_ROOT = vars.TREE_ROOT or datapath..[[\systree]]
614if SELFCONTAINED then 625if SELFCONTAINED then
615 vars.SYSCONFDIR = vars.PREFIX 626 vars.SYSCONFDIR = vars.PREFIX
@@ -625,7 +636,7 @@ print(S[[
625 636
626Will configure LuaRocks with the following paths: 637Will configure LuaRocks with the following paths:
627LuaRocks : $FULL_PREFIX 638LuaRocks : $FULL_PREFIX
628Config file : $SYSCONFDIR\config.lua 639Config file : $CONFIG_FILE
629Rocktree : $TREE_ROOT 640Rocktree : $TREE_ROOT
630 641
631Lua interpreter : $LUA_BINDIR\$LUA_INTERPRETER 642Lua interpreter : $LUA_BINDIR\$LUA_INTERPRETER
@@ -793,10 +804,11 @@ print()
793print("Configuring LuaRocks...") 804print("Configuring LuaRocks...")
794 805
795-- Create a site-config file 806-- Create a site-config file
796if exists(S[[$LUADIR\luarocks\site_config.lua]]) then 807local site_config = S("site_config_$LUA_VERSION"):gsub("%.","_")
797 exec(S[[RENAME "$LUADIR\luarocks\site_config.lua" site_config.lua.bak]]) 808if exists(S([[$LUADIR\luarocks\]]..site_config..[[.lua]])) then
809 exec(S([[RENAME "$LUADIR\luarocks\]]..site_config..[[.lua" site_config.lua.bak]]))
798end 810end
799local f = io.open(vars.LUADIR.."\\luarocks\\site_config.lua", "w") 811local f = io.open(vars.LUADIR.."\\luarocks\\"..site_config..".lua", "w")
800f:write(S[=[ 812f:write(S[=[
801local site_config = {} 813local site_config = {}
802site_config.LUA_INCDIR=[[$LUA_INCDIR]] 814site_config.LUA_INCDIR=[[$LUA_INCDIR]]
@@ -811,7 +823,7 @@ else
811end 823end
812f:write(S[=[ 824f:write(S[=[
813site_config.LUAROCKS_UNAME_M=[[$UNAME_M]] 825site_config.LUAROCKS_UNAME_M=[[$UNAME_M]]
814site_config.LUAROCKS_SYSCONFIG=[[$SYSCONFDIR\config.lua]] 826site_config.LUAROCKS_SYSCONFIG=[[$CONFIG_FILE]]
815site_config.LUAROCKS_ROCKS_TREE=[[$TREE_ROOT]] 827site_config.LUAROCKS_ROCKS_TREE=[[$TREE_ROOT]]
816site_config.LUAROCKS_PREFIX=[[$PREFIX]] 828site_config.LUAROCKS_PREFIX=[[$PREFIX]]
817site_config.LUAROCKS_DOWNLOADER=[[wget]] 829site_config.LUAROCKS_DOWNLOADER=[[wget]]
@@ -820,24 +832,23 @@ site_config.LUAROCKS_MD5CHECKER=[[md5sum]]
820if FORCE_CONFIG then 832if FORCE_CONFIG then
821 f:write("site_config.LUAROCKS_FORCE_CONFIG=true\n") 833 f:write("site_config.LUAROCKS_FORCE_CONFIG=true\n")
822end 834end
823if exists(vars.LUADIR.."\\luarocks\\site_config.lua.bak") then 835if exists(vars.LUADIR.."\\luarocks\\"..site_config..".lua.bak") then
824 for line in io.lines(vars.LUADIR.."\\luarocks\\site_config.lua.bak", "r") do 836 for line in io.lines(vars.LUADIR.."\\luarocks\\"..site_config..".lua.bak", "r") do
825 f:write(line) 837 f:write(line)
826 f:write("\n") 838 f:write("\n")
827 end 839 end
828 exec(S[[DEL /F /Q "$LUADIR\luarocks\site_config.lua.bak"]]) 840 exec(S([[DEL /F /Q "$LUADIR\luarocks\]]..site_config..[[.lua.bak"]]))
829end 841end
830f:write("return site_config\n") 842f:write("return site_config\n")
831f:close() 843f:close()
832print(S[[Created LuaRocks site-config file: $LUADIR\luarocks\site_config.lua]]) 844print(S([[Created LuaRocks site-config file: $LUADIR\luarocks\]]..site_config..[[.lua]]))
833 845
834-- create config file 846-- create config file
835vars.CONFIG_FILE = vars.SYSCONFDIR.."\\config.lua"
836if not exists(vars.SYSCONFDIR) then 847if not exists(vars.SYSCONFDIR) then
837 mkdir(vars.SYSCONFDIR) 848 mkdir(vars.SYSCONFDIR)
838end 849end
839if exists(vars.CONFIG_FILE) then 850if exists(vars.CONFIG_FILE) then
840 local nname = backup(vars.CONFIG_FILE, "config.bak") 851 local nname = backup(vars.CONFIG_FILE, vars.SYSCONFFILENAME..".bak")
841 print("***************") 852 print("***************")
842 print(S"*** WARNING *** LuaRocks config file already exists: '$CONFIG_FILE'. The old file has been renamed to '"..nname.."'") 853 print(S"*** WARNING *** LuaRocks config file already exists: '$CONFIG_FILE'. The old file has been renamed to '"..nname.."'")
843 print("***************") 854 print("***************")
diff --git a/src/luarocks/cfg.lua b/src/luarocks/cfg.lua
index f5d7fb5e..31b3211a 100644
--- a/src/luarocks/cfg.lua
+++ b/src/luarocks/cfg.lua
@@ -216,10 +216,10 @@ end
216 216
217-- Load system configuration file 217-- Load system configuration file
218do 218do
219 sys_config_file_default = sys_config_dir.."/config.lua" 219 sys_config_file_default = sys_config_dir.."/config-"..cfg.lua_version..".lua"
220 sys_config_file = load_config_file({ 220 sys_config_file = load_config_file({
221 site_config.LUAROCKS_SYSCONFIG or sys_config_dir.."/config-"..cfg.lua_version..".lua", 221 site_config.LUAROCKS_SYSCONFIG or sys_config_file_default,
222 sys_config_file_default, 222 sys_config_dir.."/config.lua",
223 }) 223 })
224 sys_config_ok = (sys_config_file ~= nil) 224 sys_config_ok = (sys_config_file ~= nil)
225end 225end
@@ -227,11 +227,11 @@ end
227-- Load user configuration file (if allowed) 227-- Load user configuration file (if allowed)
228if not site_config.LUAROCKS_FORCE_CONFIG then 228if not site_config.LUAROCKS_FORCE_CONFIG then
229 229
230 home_config_file_default = home_config_dir.."/config.lua" 230 home_config_file_default = home_config_dir.."/config-"..cfg.lua_version..".lua"
231 local list = { 231 local list = {
232 os.getenv("LUAROCKS_CONFIG_" .. version_suffix) or os.getenv("LUAROCKS_CONFIG"), 232 os.getenv("LUAROCKS_CONFIG_" .. version_suffix) or os.getenv("LUAROCKS_CONFIG"),
233 home_config_dir.."/config-"..cfg.lua_version..".lua",
234 home_config_file_default, 233 home_config_file_default,
234 home_config_dir.."/config.lua",
235 } 235 }
236 -- first entry might be a silent nil, check and remove if so 236 -- first entry might be a silent nil, check and remove if so
237 if not list[1] then table.remove(list, 1) end 237 if not list[1] then table.remove(list, 1) end