aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--install.bat7
-rw-r--r--src/luarocks/cfg.lua2
-rw-r--r--src/luarocks/command_line.lua5
3 files changed, 12 insertions, 2 deletions
diff --git a/install.bat b/install.bat
index f5692c6e..8e3df4d9 100644
--- a/install.bat
+++ b/install.bat
@@ -8,6 +8,7 @@ local vars = {}
8vars.PREFIX = nil 8vars.PREFIX = nil
9vars.VERSION = "2.2" 9vars.VERSION = "2.2"
10vars.SYSCONFDIR = nil 10vars.SYSCONFDIR = nil
11vars.SYSCONFFORCE = nil
11vars.CONFBACKUPDIR = nil 12vars.CONFBACKUPDIR = nil
12vars.SYSCONFFILENAME = nil 13vars.SYSCONFFILENAME = nil
13vars.CONFIG_FILE = nil 14vars.CONFIG_FILE = nil
@@ -208,6 +209,7 @@ local function parse_options(args)
208 vars.PREFIX = option.value 209 vars.PREFIX = option.value
209 elseif name == "/CONFIG" then 210 elseif name == "/CONFIG" then
210 vars.SYSCONFDIR = option.value 211 vars.SYSCONFDIR = option.value
212 vars.SYSCONFFORCE = true
211 elseif name == "/TREE" then 213 elseif name == "/TREE" then
212 vars.TREE_ROOT = option.value 214 vars.TREE_ROOT = option.value
213 elseif name == "/SCRIPTS" then 215 elseif name == "/SCRIPTS" then
@@ -775,6 +777,7 @@ vars.SYSCONFFILENAME = S"config-$LUA_VERSION.lua"
775vars.CONFIG_FILE = vars.SYSCONFDIR.."\\"..vars.SYSCONFFILENAME 777vars.CONFIG_FILE = vars.SYSCONFDIR.."\\"..vars.SYSCONFFILENAME
776if SELFCONTAINED then 778if SELFCONTAINED then
777 vars.SYSCONFDIR = vars.PREFIX 779 vars.SYSCONFDIR = vars.PREFIX
780 vars.SYSCONFFORCE = true
778 vars.TREE_ROOT = vars.PREFIX..[[\systree]] 781 vars.TREE_ROOT = vars.PREFIX..[[\systree]]
779 REGISTRY = false 782 REGISTRY = false
780end 783end
@@ -971,7 +974,6 @@ else
971end 974end
972f:write(S[=[ 975f:write(S[=[
973site_config.LUAROCKS_UNAME_M=[[$UNAME_M]] 976site_config.LUAROCKS_UNAME_M=[[$UNAME_M]]
974site_config.LUAROCKS_SYSCONFIG=[[$CONFIG_FILE]]
975site_config.LUAROCKS_ROCKS_TREE=[[$TREE_ROOT]] 977site_config.LUAROCKS_ROCKS_TREE=[[$TREE_ROOT]]
976site_config.LUAROCKS_PREFIX=[[$PREFIX]] 978site_config.LUAROCKS_PREFIX=[[$PREFIX]]
977site_config.LUAROCKS_DOWNLOADER=[[wget]] 979site_config.LUAROCKS_DOWNLOADER=[[wget]]
@@ -980,6 +982,9 @@ site_config.LUAROCKS_MD5CHECKER=[[md5sum]]
980if FORCE_CONFIG then 982if FORCE_CONFIG then
981 f:write("site_config.LUAROCKS_FORCE_CONFIG=true\n") 983 f:write("site_config.LUAROCKS_FORCE_CONFIG=true\n")
982end 984end
985if vars.SYSCONFFORCE then -- only write this value when explcitly given, otherwise rely on defaults
986 f:write("site_config.LUAROCKS_SYSCONFIG=[[$CONFIG_FILE]]\n")
987end
983f:write("return site_config\n") 988f:write("return site_config\n")
984f:close() 989f:close()
985print(S([[Created LuaRocks site-config file: $LUADIR\luarocks\]]..site_config..[[.lua]])) 990print(S([[Created LuaRocks site-config file: $LUADIR\luarocks\]]..site_config..[[.lua]]))
diff --git a/src/luarocks/cfg.lua b/src/luarocks/cfg.lua
index a22cf121..e41b632c 100644
--- a/src/luarocks/cfg.lua
+++ b/src/luarocks/cfg.lua
@@ -149,7 +149,7 @@ local sys_config_file_default, home_config_file_default
149local sys_config_dir, home_config_dir 149local sys_config_dir, home_config_dir
150local sys_config_ok, home_config_ok = false, false 150local sys_config_ok, home_config_ok = false, false
151local extra_luarocks_module_dir 151local extra_luarocks_module_dir
152sys_config_dir = site_config.LUAROCKS_SYSCONFDIR 152sys_config_dir = site_config.LUAROCKS_SYSCONFDIR or site_config.LUAROCKS_PREFIX
153if cfg.platforms.windows then 153if cfg.platforms.windows then
154 cfg.home = os.getenv("APPDATA") or "c:" 154 cfg.home = os.getenv("APPDATA") or "c:"
155 sys_config_dir = sys_config_dir or "c:/luarocks" 155 sys_config_dir = sys_config_dir or "c:/luarocks"
diff --git a/src/luarocks/command_line.lua b/src/luarocks/command_line.lua
index dbf64b9c..e1c9f492 100644
--- a/src/luarocks/command_line.lua
+++ b/src/luarocks/command_line.lua
@@ -31,12 +31,17 @@ end
31local function replace_tree(flags, args, tree) 31local function replace_tree(flags, args, tree)
32 tree = dir.normalize(tree) 32 tree = dir.normalize(tree)
33 flags["tree"] = tree 33 flags["tree"] = tree
34 local added = false
34 for i = 1, #args do 35 for i = 1, #args do
35 if args[i]:match("%-%-tree=") then 36 if args[i]:match("%-%-tree=") then
36 args[i] = "--tree="..tree 37 args[i] = "--tree="..tree
38 added = true
37 break 39 break
38 end 40 end
39 end 41 end
42 if not added then
43 args[#args + 1] = "--tree="..tree
44 end
40 path.use_tree(tree) 45 path.use_tree(tree)
41end 46end
42 47