diff options
-rw-r--r-- | install.bat | 35 | ||||
-rw-r--r-- | src/luarocks/cfg.lua | 10 |
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 = {} | |||
8 | vars.PREFIX = nil | 8 | vars.PREFIX = nil |
9 | vars.VERSION = "2.2" | 9 | vars.VERSION = "2.2" |
10 | vars.SYSCONFDIR = nil | 10 | vars.SYSCONFDIR = nil |
11 | vars.SYSCONFFILENAME = nil | ||
12 | vars.CONFIG_FILE = nil | ||
11 | vars.TREE_ROOT = nil | 13 | vars.TREE_ROOT = nil |
12 | vars.TREE_BIN = nil | 14 | vars.TREE_BIN = nil |
13 | vars.TREE_LMODULE = nil | 15 | vars.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]] |
611 | end | 620 | end |
612 | vars.SYSCONFDIR = vars.SYSCONFDIR or vars.PREFIX | 621 | vars.SYSCONFDIR = vars.SYSCONFDIR or vars.PREFIX |
622 | vars.SYSCONFFILENAME = S"config-$LUA_VERSION.lua" | ||
623 | vars.CONFIG_FILE = vars.SYSCONFDIR.."\\"..vars.SYSCONFFILENAME | ||
613 | vars.TREE_ROOT = vars.TREE_ROOT or datapath..[[\systree]] | 624 | vars.TREE_ROOT = vars.TREE_ROOT or datapath..[[\systree]] |
614 | if SELFCONTAINED then | 625 | if SELFCONTAINED then |
615 | vars.SYSCONFDIR = vars.PREFIX | 626 | vars.SYSCONFDIR = vars.PREFIX |
@@ -625,7 +636,7 @@ print(S[[ | |||
625 | 636 | ||
626 | Will configure LuaRocks with the following paths: | 637 | Will configure LuaRocks with the following paths: |
627 | LuaRocks : $FULL_PREFIX | 638 | LuaRocks : $FULL_PREFIX |
628 | Config file : $SYSCONFDIR\config.lua | 639 | Config file : $CONFIG_FILE |
629 | Rocktree : $TREE_ROOT | 640 | Rocktree : $TREE_ROOT |
630 | 641 | ||
631 | Lua interpreter : $LUA_BINDIR\$LUA_INTERPRETER | 642 | Lua interpreter : $LUA_BINDIR\$LUA_INTERPRETER |
@@ -793,10 +804,11 @@ print() | |||
793 | print("Configuring LuaRocks...") | 804 | print("Configuring LuaRocks...") |
794 | 805 | ||
795 | -- Create a site-config file | 806 | -- Create a site-config file |
796 | if exists(S[[$LUADIR\luarocks\site_config.lua]]) then | 807 | local site_config = S("site_config_$LUA_VERSION"):gsub("%.","_") |
797 | exec(S[[RENAME "$LUADIR\luarocks\site_config.lua" site_config.lua.bak]]) | 808 | if exists(S([[$LUADIR\luarocks\]]..site_config..[[.lua]])) then |
809 | exec(S([[RENAME "$LUADIR\luarocks\]]..site_config..[[.lua" site_config.lua.bak]])) | ||
798 | end | 810 | end |
799 | local f = io.open(vars.LUADIR.."\\luarocks\\site_config.lua", "w") | 811 | local f = io.open(vars.LUADIR.."\\luarocks\\"..site_config..".lua", "w") |
800 | f:write(S[=[ | 812 | f:write(S[=[ |
801 | local site_config = {} | 813 | local site_config = {} |
802 | site_config.LUA_INCDIR=[[$LUA_INCDIR]] | 814 | site_config.LUA_INCDIR=[[$LUA_INCDIR]] |
@@ -811,7 +823,7 @@ else | |||
811 | end | 823 | end |
812 | f:write(S[=[ | 824 | f:write(S[=[ |
813 | site_config.LUAROCKS_UNAME_M=[[$UNAME_M]] | 825 | site_config.LUAROCKS_UNAME_M=[[$UNAME_M]] |
814 | site_config.LUAROCKS_SYSCONFIG=[[$SYSCONFDIR\config.lua]] | 826 | site_config.LUAROCKS_SYSCONFIG=[[$CONFIG_FILE]] |
815 | site_config.LUAROCKS_ROCKS_TREE=[[$TREE_ROOT]] | 827 | site_config.LUAROCKS_ROCKS_TREE=[[$TREE_ROOT]] |
816 | site_config.LUAROCKS_PREFIX=[[$PREFIX]] | 828 | site_config.LUAROCKS_PREFIX=[[$PREFIX]] |
817 | site_config.LUAROCKS_DOWNLOADER=[[wget]] | 829 | site_config.LUAROCKS_DOWNLOADER=[[wget]] |
@@ -820,24 +832,23 @@ site_config.LUAROCKS_MD5CHECKER=[[md5sum]] | |||
820 | if FORCE_CONFIG then | 832 | if FORCE_CONFIG then |
821 | f:write("site_config.LUAROCKS_FORCE_CONFIG=true\n") | 833 | f:write("site_config.LUAROCKS_FORCE_CONFIG=true\n") |
822 | end | 834 | end |
823 | if exists(vars.LUADIR.."\\luarocks\\site_config.lua.bak") then | 835 | if 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"]])) |
829 | end | 841 | end |
830 | f:write("return site_config\n") | 842 | f:write("return site_config\n") |
831 | f:close() | 843 | f:close() |
832 | print(S[[Created LuaRocks site-config file: $LUADIR\luarocks\site_config.lua]]) | 844 | print(S([[Created LuaRocks site-config file: $LUADIR\luarocks\]]..site_config..[[.lua]])) |
833 | 845 | ||
834 | -- create config file | 846 | -- create config file |
835 | vars.CONFIG_FILE = vars.SYSCONFDIR.."\\config.lua" | ||
836 | if not exists(vars.SYSCONFDIR) then | 847 | if not exists(vars.SYSCONFDIR) then |
837 | mkdir(vars.SYSCONFDIR) | 848 | mkdir(vars.SYSCONFDIR) |
838 | end | 849 | end |
839 | if exists(vars.CONFIG_FILE) then | 850 | if 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 |
218 | do | 218 | do |
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) |
225 | end | 225 | end |
@@ -227,11 +227,11 @@ end | |||
227 | -- Load user configuration file (if allowed) | 227 | -- Load user configuration file (if allowed) |
228 | if not site_config.LUAROCKS_FORCE_CONFIG then | 228 | if 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 |