aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconfigure27
-rw-r--r--install.bat9
-rw-r--r--src/luarocks/cfg.lua5
-rw-r--r--src/luarocks/util.lua2
-rw-r--r--src/luarocks/write_rockspec.lua10
5 files changed, 37 insertions, 16 deletions
diff --git a/configure b/configure
index e9f5e018..bbdbb5c9 100755
--- a/configure
+++ b/configure
@@ -39,7 +39,7 @@ system's package manager.
39--rocks-tree=DIR Root of the local tree of installed rocks. 39--rocks-tree=DIR Root of the local tree of installed rocks.
40 Default is \$PREFIX 40 Default is \$PREFIX
41 41
42--lua-version=VERSION Use specific Lua version: 5.1 or 5.2 42--lua-version=VERSION Use specific Lua version: 5.1, 5.2, or 5.3
43 Default is "$LUA_VERSION" 43 Default is "$LUA_VERSION"
44--lua-suffix=SUFFIX Versioning suffix to use in Lua filenames. 44--lua-suffix=SUFFIX Versioning suffix to use in Lua filenames.
45 Default is "$LUA_SUFFIX" (lua$LUA_SUFFIX...) 45 Default is "$LUA_SUFFIX" (lua$LUA_SUFFIX...)
@@ -177,7 +177,7 @@ do
177 --lua-version) 177 --lua-version)
178 [ -n "$value" ] || die "Missing value in flag $key." 178 [ -n "$value" ] || die "Missing value in flag $key."
179 LUA_VERSION="$value" 179 LUA_VERSION="$value"
180 [ "$LUA_VERSION" = "5.1" -o "$LUA_VERSION" = "5.2" ] || die "Invalid Lua version in flag $key." 180 [ "$LUA_VERSION" = "5.1" -o "$LUA_VERSION" = "5.2" -o "$LUA_VERSION" = "5.3" ] || die "Invalid Lua version in flag $key."
181 LUA_VERSION_SET=yes 181 LUA_VERSION_SET=yes
182 ;; 182 ;;
183 --with-lua) 183 --with-lua)
@@ -234,7 +234,7 @@ fi
234 234
235detect_lua_version() { 235detect_lua_version() {
236 detected_lua=`$1 -e 'print(_VERSION:sub(5))' 2> /dev/null` 236 detected_lua=`$1 -e 'print(_VERSION:sub(5))' 2> /dev/null`
237 if [ "$detected_lua" = "5.1" -o "$detected_lua" = "5.2" ] 237 if [ "$detected_lua" = "5.1" -o "$detected_lua" = "5.2" -o "$detected_lua" = "5.3" ]
238 then 238 then
239 echo "Lua version detected: $detected_lua" 239 echo "Lua version detected: $detected_lua"
240 if [ "$LUA_VERSION_SET" != "yes" ] 240 if [ "$LUA_VERSION_SET" != "yes" ]
@@ -275,8 +275,11 @@ then
275 elif [ "$LUA_VERSION_SET" = "yes" -a "$LUA_VERSION" = "5.2" ] 275 elif [ "$LUA_VERSION_SET" = "yes" -a "$LUA_VERSION" = "5.2" ]
276 then 276 then
277 suffixes="5.2 52 -5.2 -52" 277 suffixes="5.2 52 -5.2 -52"
278 elif [ "$LUA_VERSION_SET" = "yes" -a "$LUA_VERSION" = "5.3" ]
279 then
280 suffixes="5.3 53 -5.3 -53"
278 else 281 else
279 suffixes="5.2 52 -5.2 -52 5.1 51 -5.1 -51" 282 suffixes="5.3 53 -5.3 -53 5.2 52 -5.2 -52 5.1 51 -5.1 -51"
280 fi 283 fi
281 for suffix in `echo $suffixes` "" 284 for suffix in `echo $suffixes` ""
282 do 285 do
@@ -371,12 +374,14 @@ else
371 die "Could not determine processor architecture. 'uname -m' failed." 374 die "Could not determine processor architecture. 'uname -m' failed."
372fi 375fi
373 376
374if [ "$LUA_VERSION" = "5.2" ] 377for v in 5.1 5.2 5.3; do
375then 378 if [ "$v" != "$LUA_VERSION" ]; then
376 LUA_OTHER_VERSION=5.1 379 if [ -e "$PREFIX/share/lua/$v/luarocks/site_config.lua" ]; then
377else 380 LUA_OTHER_VERSION="$v"
378 LUA_OTHER_VERSION=5.2 381 break
379fi 382 fi
383 fi
384done
380 385
381LUAROCKS_ROCKS_SUBDIR=/lib/luarocks/rocks 386LUAROCKS_ROCKS_SUBDIR=/lib/luarocks/rocks
382if [ "$VERSIONED_ROCKS_DIR" = "yes" ] 387if [ "$VERSIONED_ROCKS_DIR" = "yes" ]
@@ -388,7 +393,7 @@ then
388 echo "Existing installation detected." 393 echo "Existing installation detected."
389 LUAROCKS_ROCKS_SUBDIR=`grep "LUAROCKS_ROCKS_SUBDIR" "$PREFIX/share/lua/$LUA_VERSION/luarocks/site_config.lua" | sed 's,.*=\[\[\(.*\)\]\],\1,'` 394 LUAROCKS_ROCKS_SUBDIR=`grep "LUAROCKS_ROCKS_SUBDIR" "$PREFIX/share/lua/$LUA_VERSION/luarocks/site_config.lua" | sed 's,.*=\[\[\(.*\)\]\],\1,'`
390 echo "Using previously configured rocks dir: $PREFIX$LUAROCKS_ROCKS_SUBDIR" 395 echo "Using previously configured rocks dir: $PREFIX$LUAROCKS_ROCKS_SUBDIR"
391elif [ -e "$PREFIX/share/lua/$LUA_OTHER_VERSION/luarocks/site_config.lua" ] 396elif [ -n "$LUA_OTHER_VERSION" ]
392then 397then
393 echo "Existing installation detected for other Lua version ($LUA_OTHER_VERSION)." 398 echo "Existing installation detected for other Lua version ($LUA_OTHER_VERSION)."
394 LUAROCKS_ROCKS_SUBDIR=$LUAROCKS_ROCKS_SUBDIR-$LUA_VERSION 399 LUAROCKS_ROCKS_SUBDIR=$LUAROCKS_ROCKS_SUBDIR-$LUA_VERSION
diff --git a/install.bat b/install.bat
index 287bad5b..93b159a5 100644
--- a/install.bat
+++ b/install.bat
@@ -138,7 +138,7 @@ Configuring the destinations:
138 if you create a self contained installation. 138 if you create a self contained installation.
139 139
140Configuring the Lua interpreter: 140Configuring the Lua interpreter:
141/LV [version] Lua version to use; either 5.1 or 5.2. 141/LV [version] Lua version to use; either 5.1, 5.2, or 5.3.
142 Default is 5.1 142 Default is 5.1
143/LUA [dir] Location where Lua is installed - e.g. c:\lua\5.1\ 143/LUA [dir] Location where Lua is installed - e.g. c:\lua\5.1\
144 If not provided, the installer will search the system 144 If not provided, the installer will search the system
@@ -249,8 +249,10 @@ local function check_flags()
249 if vars.LUA_VERSION ~= "5.1" then 249 if vars.LUA_VERSION ~= "5.1" then
250 if vars.LUA_VERSION == "5.2" then 250 if vars.LUA_VERSION == "5.2" then
251 vars.LUA_LIB_NAMES = vars.LUA_LIB_NAMES:gsub("5([%.]?)1", "5%12") 251 vars.LUA_LIB_NAMES = vars.LUA_LIB_NAMES:gsub("5([%.]?)1", "5%12")
252 elseif vars.LUA_VERSION == "5.3" then
253 vars.LUA_LIB_NAMES = vars.LUA_LIB_NAMES:gsub("5([%.]?)1", "5%13")
252 else 254 else
253 die("Bad argument: /LV must either be 5.1 or 5.2") 255 die("Bad argument: /LV must either be 5.1, 5.2, or 5.3")
254 end 256 end
255 end 257 end
256end 258end
@@ -701,6 +703,9 @@ SET "LUA_PATH=$LUADIR\?.lua;$LUADIR\?\init.lua;%LUA_PATH%"
701IF NOT "%LUA_PATH_5_2%"=="" ( 703IF NOT "%LUA_PATH_5_2%"=="" (
702 SET "LUA_PATH_5_2=$LUADIR\?.lua;$LUADIR\?\init.lua;%LUA_PATH_5_2%" 704 SET "LUA_PATH_5_2=$LUADIR\?.lua;$LUADIR\?\init.lua;%LUA_PATH_5_2%"
703) 705)
706IF NOT "%LUA_PATH_5_3%"=="" (
707 SET "LUA_PATH_5_3=$LUADIR\?.lua;$LUADIR\?\init.lua;%LUA_PATH_5_3%"
708)
704SET "PATH=$BINDIR;%PATH%" 709SET "PATH=$BINDIR;%PATH%"
705"$LUA_INTERPRETER" "$BINDIR\]]..c..[[.lua" %* 710"$LUA_INTERPRETER" "$BINDIR\]]..c..[[.lua" %*
706IF NOT "%ERRORLEVEL%"=="2" GOTO EXITLR 711IF NOT "%ERRORLEVEL%"=="2" GOTO EXITLR
diff --git a/src/luarocks/cfg.lua b/src/luarocks/cfg.lua
index 21cfbf6d..1207d600 100644
--- a/src/luarocks/cfg.lua
+++ b/src/luarocks/cfg.lua
@@ -483,6 +483,11 @@ if cfg.lua_version >= "5.2" then
483 defaults.rocks_provided["bit32"] = cfg.lua_version.."-1" 483 defaults.rocks_provided["bit32"] = cfg.lua_version.."-1"
484end 484end
485 485
486if cfg.lua_version >= "5.3" then
487 -- Lua 5.3+
488 defaults.rocks_provided["utf8"] = cfg.lua_version.."-1"
489end
490
486if package.loaded.jit then 491if package.loaded.jit then
487 -- LuaJIT 492 -- LuaJIT
488 local lj_version = package.loaded.jit.version:match("LuaJIT (.*)"):gsub("%-","") 493 local lj_version = package.loaded.jit.version:match("LuaJIT (.*)"):gsub("%-","")
diff --git a/src/luarocks/util.lua b/src/luarocks/util.lua
index 7e34fe0e..a70e726d 100644
--- a/src/luarocks/util.lua
+++ b/src/luarocks/util.lua
@@ -321,7 +321,7 @@ function util.sortedpairs(tbl, sort_function)
321end 321end
322 322
323function util.lua_versions() 323function util.lua_versions()
324 local versions = { "5.1", "5.2" } 324 local versions = { "5.1", "5.2", "5.3" }
325 local i = 0 325 local i = 0
326 return function() 326 return function()
327 i = i + 1 327 i = i + 1
diff --git a/src/luarocks/write_rockspec.lua b/src/luarocks/write_rockspec.lua
index a194201d..20d35701 100644
--- a/src/luarocks/write_rockspec.lua
+++ b/src/luarocks/write_rockspec.lua
@@ -31,8 +31,8 @@ rockspec, and is not guaranteed to be complete or correct.
31--summary="<txt>" A short one-line description summary. 31--summary="<txt>" A short one-line description summary.
32--description="<txt>" A longer description string. 32--description="<txt>" A longer description string.
33--homepage=<url> Project homepage. 33--homepage=<url> Project homepage.
34--lua-version=<ver> Supported Lua versions. Accepted values are "5.1", "5.2" 34--lua-version=<ver> Supported Lua versions. Accepted values are "5.1", "5.2",
35 or "5.1,5.2". 35 "5.3", "5.1,5.2", "5.2,5.3", or "5.1,5.2,5.3".
36--tag=<tag> Tag to use. Will attempt to extract version number from it. 36--tag=<tag> Tag to use. Will attempt to extract version number from it.
37--lib=<lib>[,<lib>] A comma-separated list of libraries that C files need to 37--lib=<lib>[,<lib>] A comma-separated list of libraries that C files need to
38 link to. 38 link to.
@@ -63,8 +63,14 @@ local function configure_lua_version(rockspec, luaver)
63 table.insert(rockspec.dependencies, "lua ~> 5.1") 63 table.insert(rockspec.dependencies, "lua ~> 5.1")
64 elseif luaver == "5.2" then 64 elseif luaver == "5.2" then
65 table.insert(rockspec.dependencies, "lua ~> 5.2") 65 table.insert(rockspec.dependencies, "lua ~> 5.2")
66 elseif luaver == "5.3" then
67 table.insert(rockspec.dependencies, "lua ~> 5.3")
66 elseif luaver == "5.1,5.2" then 68 elseif luaver == "5.1,5.2" then
67 table.insert(rockspec.dependencies, "lua >= 5.1, < 5.3") 69 table.insert(rockspec.dependencies, "lua >= 5.1, < 5.3")
70 elseif luaver == "5.2,5.3" then
71 table.insert(rockspec.dependencies, "lua >= 5.2, < 5.4")
72 elseif luaver == "5.1,5.2,5.3" then
73 table.insert(rockspec.dependencies, "lua >= 5.1, < 5.4")
68 else 74 else
69 util.warning("Please specify supported Lua version with --lua-version=<ver>. "..util.see_help("write_rockspec")) 75 util.warning("Please specify supported Lua version with --lua-version=<ver>. "..util.see_help("write_rockspec"))
70 end 76 end