diff options
-rw-r--r-- | Makefile | 90 | ||||
-rw-r--r-- | install.bat | 26 | ||||
-rw-r--r-- | src/luarocks/cfg.lua | 41 | ||||
-rw-r--r-- | src/luarocks/fetch.lua | 24 | ||||
-rw-r--r-- | src/luarocks/make.lua | 4 |
5 files changed, 101 insertions, 84 deletions
@@ -4,6 +4,7 @@ include config.unix | |||
4 | 4 | ||
5 | DESTDIR = | 5 | DESTDIR = |
6 | PREFIX ?= /usr/local | 6 | PREFIX ?= /usr/local |
7 | SYSCONFDIR ?= $(PREFIX)/etc/luarocks | ||
7 | BINDIR ?= $(PREFIX)/bin | 8 | BINDIR ?= $(PREFIX)/bin |
8 | LUADIR ?= $(PREFIX)/share/lua/5.1/ | 9 | LUADIR ?= $(PREFIX)/share/lua/5.1/ |
9 | LUA_DIR ?= /usr/local | 10 | LUA_DIR ?= /usr/local |
@@ -19,62 +20,61 @@ remove.lua fs.lua manif.lua add.lua deps.lua build.lua search.lua \ | |||
19 | manif_core.lua fetch.lua unpack.lua validate.lua cfg.lua download.lua \ | 20 | manif_core.lua fetch.lua unpack.lua validate.lua cfg.lua download.lua \ |
20 | help.lua util.lua index.lua cache.lua add.lua refresh_cache.lua loader.lua | 21 | help.lua util.lua index.lua cache.lua add.lua refresh_cache.lua loader.lua |
21 | 22 | ||
22 | |||
23 | CONFIG_FILE = $(SYSCONFDIR)/config.lua | 23 | CONFIG_FILE = $(SYSCONFDIR)/config.lua |
24 | 24 | ||
25 | all: built | 25 | all: built |
26 | 26 | ||
27 | built: | 27 | src/luarocks/config.lua: config.unix |
28 | for f in $(BIN_FILES) ;\ | 28 | rm -f src/luarocks/config.lua |
29 | do \ | 29 | echo 'module("luarocks.config")' >> src/luarocks/config.lua |
30 | sed "1d" src/bin/$$f >> src/bin/$$f.bak ;\ | ||
31 | echo "#!$(LUA_BINDIR)/lua$(LUA_SUFFIX)" > src/bin/$$f ;\ | ||
32 | echo "package.path = [[$(LUADIR)/?.lua;$(LUADIR)/?/init.lua;]]..package.path" >> src/bin/$$f ;\ | ||
33 | cat src/bin/$$f.bak >> src/bin/$$f ;\ | ||
34 | rm src/bin/$$f.bak ;\ | ||
35 | done | ||
36 | sed -i.bak "/^local LUA/d" src/luarocks/cfg.lua | ||
37 | rm src/luarocks/cfg.lua.bak | ||
38 | cp src/luarocks/cfg.lua src/luarocks/cfg.lua.bak | ||
39 | rm src/luarocks/cfg.lua | ||
40 | if [ -n "$(PREFIX)" ] ;\ | 30 | if [ -n "$(PREFIX)" ] ;\ |
41 | then \ | 31 | then \ |
42 | echo "local LUAROCKS_PREFIX=[[$(PREFIX)]]" >> src/luarocks/cfg.lua ;\ | 32 | echo "LUAROCKS_PREFIX=[[$(PREFIX)]]" >> src/luarocks/config.lua ;\ |
43 | fi | 33 | fi |
44 | if [ -n "$(LUA_INCDIR)" ] ;\ | 34 | if [ -n "$(LUA_INCDIR)" ] ;\ |
45 | then \ | 35 | then \ |
46 | echo "local LUA_INCDIR=[[$(LUA_INCDIR)]]" >> src/luarocks/cfg.lua ;\ | 36 | echo "LUA_INCDIR=[[$(LUA_INCDIR)]]" >> src/luarocks/config.lua ;\ |
47 | fi | 37 | fi |
48 | if [ -n "$(LUA_LIBDIR)" ] ;\ | 38 | if [ -n "$(LUA_LIBDIR)" ] ;\ |
49 | then \ | 39 | then \ |
50 | echo "local LUA_LIBDIR=[[$(LUA_LIBDIR)]]" >> src/luarocks/cfg.lua ;\ | 40 | echo "LUA_LIBDIR=[[$(LUA_LIBDIR)]]" >> src/luarocks/config.lua ;\ |
51 | fi | 41 | fi |
52 | if [ -n "$(LUA_BINDIR)" ] ;\ | 42 | if [ -n "$(LUA_BINDIR)" ] ;\ |
53 | then \ | 43 | then \ |
54 | echo "local LUA_BINDIR=[[$(LUA_BINDIR)]]" >> src/luarocks/cfg.lua ;\ | 44 | echo "LUA_BINDIR=[[$(LUA_BINDIR)]]" >> src/luarocks/config.lua ;\ |
55 | fi | 45 | fi |
56 | if [ -n "$(LUA_SUFFIX)" ] ;\ | 46 | if [ -n "$(LUA_SUFFIX)" ] ;\ |
57 | then \ | 47 | then \ |
58 | echo "local LUA_INTERPRETER=[[lua$(LUA_SUFFIX)]]" >> src/luarocks/cfg.lua ;\ | 48 | echo "LUA_INTERPRETER=[[lua$(LUA_SUFFIX)]]" >> src/luarocks/config.lua ;\ |
59 | fi | 49 | fi |
60 | if [ -n "$(SYSCONFDIR)" ] ;\ | 50 | if [ -n "$(SYSCONFDIR)" ] ;\ |
61 | then \ | 51 | then \ |
62 | echo "local LUAROCKS_SYSCONFIG=[[$(SYSCONFDIR)/config.lua]]" >> src/luarocks/cfg.lua ;\ | 52 | echo "LUAROCKS_SYSCONFIG=[[$(SYSCONFDIR)/config.lua]]" >> src/luarocks/config.lua ;\ |
63 | fi | 53 | fi |
64 | if [ -n "$(ROCKS_TREE)" ] ;\ | 54 | if [ -n "$(ROCKS_TREE)" ] ;\ |
65 | then \ | 55 | then \ |
66 | echo "local LUAROCKS_ROCKS_TREE=[[$(ROCKS_TREE)]]" >> src/luarocks/cfg.lua ;\ | 56 | echo "LUAROCKS_ROCKS_TREE=[[$(ROCKS_TREE)]]" >> src/luarocks/config.lua ;\ |
67 | fi | 57 | fi |
68 | if [ -n "$(FORCE_CONFIG)" ] ;\ | 58 | if [ -n "$(FORCE_CONFIG)" ] ;\ |
69 | then \ | 59 | then \ |
70 | echo "local LUAROCKS_FORCE_CONFIG=true" >> src/luarocks/cfg.lua ;\ | 60 | echo "LUAROCKS_FORCE_CONFIG=true" >> src/luarocks/config.lua ;\ |
71 | fi | 61 | fi |
72 | echo "local LUAROCKS_UNAME_S=[[$(LUAROCKS_UNAME_S)]]" >> src/luarocks/cfg.lua | 62 | echo "LUAROCKS_UNAME_S=[[$(LUAROCKS_UNAME_S)]]" >> src/luarocks/config.lua |
73 | echo "local LUAROCKS_UNAME_M=[[$(LUAROCKS_UNAME_M)]]" >> src/luarocks/cfg.lua | 63 | echo "LUAROCKS_UNAME_M=[[$(LUAROCKS_UNAME_M)]]" >> src/luarocks/config.lua |
74 | echo "local LUAROCKS_DOWNLOADER=[[$(LUAROCKS_DOWNLOADER)]]" >> src/luarocks/cfg.lua | 64 | echo "LUAROCKS_DOWNLOADER=[[$(LUAROCKS_DOWNLOADER)]]" >> src/luarocks/config.lua |
75 | echo "local LUAROCKS_MD5CHECKER=[[$(LUAROCKS_MD5CHECKER)]]" >> src/luarocks/cfg.lua | 65 | echo "LUAROCKS_MD5CHECKER=[[$(LUAROCKS_MD5CHECKER)]]" >> src/luarocks/config.lua |
76 | cat src/luarocks/cfg.lua.bak >> src/luarocks/cfg.lua | 66 | |
77 | rm src/luarocks/cfg.lua.bak | 67 | build_bins: |
68 | for f in $(BIN_FILES) ;\ | ||
69 | do \ | ||
70 | sed "1d" src/bin/$$f >> src/bin/$$f.bak ;\ | ||
71 | echo "#!$(LUA_BINDIR)/lua$(LUA_SUFFIX)" > src/bin/$$f ;\ | ||
72 | echo "package.path = [[$(LUADIR)/?.lua;$(LUADIR)/?/init.lua;]]..package.path" >> src/bin/$$f ;\ | ||
73 | cat src/bin/$$f.bak >> src/bin/$$f ;\ | ||
74 | rm src/bin/$$f.bak ;\ | ||
75 | done | ||
76 | |||
77 | built: src/luarocks/config.lua build_bins | ||
78 | touch built | 78 | touch built |
79 | @echo | 79 | @echo |
80 | @echo "Done. Type 'make install' to install into $(PREFIX)." | 80 | @echo "Done. Type 'make install' to install into $(PREFIX)." |
@@ -102,14 +102,22 @@ clean: | |||
102 | sed -i.bak "s,^#!.*lua.*,#!/usr/bin/env lua,;/^package.path/d" src/bin/$$f ;\ | 102 | sed -i.bak "s,^#!.*lua.*,#!/usr/bin/env lua,;/^package.path/d" src/bin/$$f ;\ |
103 | rm src/bin/$$f.bak ;\ | 103 | rm src/bin/$$f.bak ;\ |
104 | done | 104 | done |
105 | sed -i.bak "/^local LUA/d" src/luarocks/cfg.lua | 105 | rm -f src/luarocks/config.lua |
106 | rm src/luarocks/cfg.lua.bak | 106 | rm -f built |
107 | 107 | ||
108 | install: built | 108 | install_bins: |
109 | mkdir -p "$(DESTDIR)$(BINDIR)" | 109 | mkdir -p "$(DESTDIR)$(BINDIR)" |
110 | cd src/bin && cp $(BIN_FILES) "$(DESTDIR)$(BINDIR)" | 110 | cd src/bin && cp $(BIN_FILES) "$(DESTDIR)$(BINDIR)" |
111 | |||
112 | install_luas: | ||
111 | mkdir -p "$(DESTDIR)$(LUADIR)/luarocks" | 113 | mkdir -p "$(DESTDIR)$(LUADIR)/luarocks" |
112 | cd src/luarocks && for f in $(LUAROCKS_FILES); do d="$(DESTDIR)$(LUADIR)/luarocks"/`dirname "$$f"`; mkdir -p "$$d"; cp "$$f" "$$d"; done | 114 | cd src/luarocks && for f in $(LUAROCKS_FILES); do d="$(DESTDIR)$(LUADIR)/luarocks"/`dirname "$$f"`; mkdir -p "$$d"; cp "$$f" "$$d"; done |
115 | |||
116 | install_config: | ||
117 | mkdir -p "$(DESTDIR)$(LUADIR)/luarocks" | ||
118 | cd src/luarocks && cp config.lua "$(DESTDIR)$(LUADIR)/luarocks" | ||
119 | |||
120 | write_sysconfig: | ||
113 | mkdir -p "$(DESTDIR)$(ROCKS_TREE)" | 121 | mkdir -p "$(DESTDIR)$(ROCKS_TREE)" |
114 | if [ ! -f "$(DESTDIR)$(CONFIG_FILE)" ] ;\ | 122 | if [ ! -f "$(DESTDIR)$(CONFIG_FILE)" ] ;\ |
115 | then \ | 123 | then \ |
@@ -124,17 +132,13 @@ install: built | |||
124 | fi ;\ | 132 | fi ;\ |
125 | echo ' [[$(ROCKS_TREE)]]' >> "$(DESTDIR)$(CONFIG_FILE)" ;\ | 133 | echo ' [[$(ROCKS_TREE)]]' >> "$(DESTDIR)$(CONFIG_FILE)" ;\ |
126 | echo '}' >> "$(DESTDIR)$(CONFIG_FILE)" ;\ | 134 | echo '}' >> "$(DESTDIR)$(CONFIG_FILE)" ;\ |
127 | if [ -n "$(SCRIPTS_DIR)" ] ;\ | ||
128 | then \ | ||
129 | echo "scripts_dir = [[$(SCRIPTS_DIR)]]" >> "$(DESTDIR)$(CONFIG_FILE)" ;\ | ||
130 | fi ;\ | ||
131 | if [ -n "$(LUA_MODULES_DIR)" ] ;\ | ||
132 | then \ | ||
133 | echo "lua_modules_dir = [[$(LUA_MODULES_DIR)]]" >> "$(DESTDIR)$(CONFIG_FILE)" ;\ | ||
134 | fi ;\ | ||
135 | if [ -n "$(BIN_MODULES_DIR)" ] ;\ | ||
136 | then \ | ||
137 | echo "bin_modules_dir = [[$(BIN_MODULES_DIR)]]" >> "$(DESTDIR)$(CONFIG_FILE)" ;\ | ||
138 | fi ;\ | ||
139 | fi | 135 | fi |
140 | 136 | ||
137 | install: built install_bins install_luas install_config write_sysconfig | ||
138 | |||
139 | bootstrap: src/luarocks/config.lua install_config write_sysconfig | ||
140 | LUA_PATH="$$PWD/src/?.lua;$$LUA_PATH" src/bin/luarocks make rockspec | ||
141 | |||
142 | #build_rock: build_bins | ||
143 | |||
144 | install_rock: install_bins install_luas | ||
diff --git a/install.bat b/install.bat index 6ebd6680..94febc28 100644 --- a/install.bat +++ b/install.bat | |||
@@ -256,20 +256,20 @@ IF ERRORLEVEL 1 GOTO ERROR | |||
256 | XCOPY /S src\luarocks\*.* "%LUADIR%\luarocks" >NUL | 256 | XCOPY /S src\luarocks\*.* "%LUADIR%\luarocks" >NUL |
257 | IF ERRORLEVEL 1 GOTO ERROR | 257 | IF ERRORLEVEL 1 GOTO ERROR |
258 | 258 | ||
259 | RENAME "%LUADIR%\luarocks\cfg.lua" "cfg.lua.bak" | 259 | RENAME "%LUADIR%\luarocks\config.lua" "config.lua.bak" |
260 | ECHO local LUA_INCDIR=[[%LUA_INCDIR%]]>> "%LUADIR%\luarocks\cfg.lua" | 260 | ECHO local LUA_INCDIR=[[%LUA_INCDIR%]]>> "%LUADIR%\luarocks\config.lua" |
261 | ECHO local LUA_LIBDIR=[[%LUA_LIBDIR%]]>> "%LUADIR%\luarocks\cfg.lua" | 261 | ECHO local LUA_LIBDIR=[[%LUA_LIBDIR%]]>> "%LUADIR%\luarocks\config.lua" |
262 | ECHO local LUA_BINDIR=[[%LUA_BINDIR%]]>> "%LUADIR%\luarocks\cfg.lua" | 262 | ECHO local LUA_BINDIR=[[%LUA_BINDIR%]]>> "%LUADIR%\luarocks\config.lua" |
263 | ECHO local LUA_INTERPRETER=[[%LUA_INTERPRETER%]]>> "%LUADIR%\luarocks\cfg.lua" | 263 | ECHO local LUA_INTERPRETER=[[%LUA_INTERPRETER%]]>> "%LUADIR%\luarocks\config.lua" |
264 | ECHO local LUAROCKS_UNAME_S=[[WindowsNT]]>> "%LUADIR%\luarocks\cfg.lua" | 264 | ECHO local LUAROCKS_UNAME_S=[[WindowsNT]]>> "%LUADIR%\luarocks\config.lua" |
265 | ECHO local LUAROCKS_UNAME_M=[[x86]]>> "%LUADIR%\luarocks\cfg.lua" | 265 | ECHO local LUAROCKS_UNAME_M=[[x86]]>> "%LUADIR%\luarocks\config.lua" |
266 | ECHO local LUAROCKS_SYSCONFIG=[[%SYSCONFDIR%/config.lua]]>> "%LUADIR%\luarocks\cfg.lua" | 266 | ECHO local LUAROCKS_SYSCONFIG=[[%SYSCONFDIR%/config.lua]]>> "%LUADIR%\luarocks\config.lua" |
267 | ECHO local LUAROCKS_ROCKS_TREE=[[%ROCKS_TREE%]]>> "%LUADIR%\luarocks\cfg.lua" | 267 | ECHO local LUAROCKS_ROCKS_TREE=[[%ROCKS_TREE%]]>> "%LUADIR%\luarocks\config.lua" |
268 | ECHO local LUAROCKS_PREFIX=[[%PREFIX%]]>> "%LUADIR%\luarocks\cfg.lua" | 268 | ECHO local LUAROCKS_PREFIX=[[%PREFIX%]]>> "%LUADIR%\luarocks\config.lua" |
269 | IF NOT [%FORCE_CONFIG%]==[] ECHO local LUAROCKS_FORCE_CONFIG=true>> "%LUADIR%\luarocks\cfg.lua" | 269 | IF NOT [%FORCE_CONFIG%]==[] ECHO local LUAROCKS_FORCE_CONFIG=true>> "%LUADIR%\luarocks\config.lua" |
270 | TYPE "%LUADIR%\luarocks\cfg.lua.bak">> "%LUADIR%\luarocks\cfg.lua" | 270 | TYPE "%LUADIR%\luarocks\config.lua.bak">> "%LUADIR%\luarocks\config.lua" |
271 | 271 | ||
272 | DEL /F /Q "%LUADIR%\luarocks\cfg.lua.bak" | 272 | DEL /F /Q "%LUADIR%\luarocks\config.lua.bak" |
273 | 273 | ||
274 | SET CONFIG_FILE=%SYSCONFDIR%\config.lua | 274 | SET CONFIG_FILE=%SYSCONFDIR%\config.lua |
275 | 275 | ||
diff --git a/src/luarocks/cfg.lua b/src/luarocks/cfg.lua index 2758ce0f..881db683 100644 --- a/src/luarocks/cfg.lua +++ b/src/luarocks/cfg.lua | |||
@@ -9,7 +9,10 @@ local rawset, next, table, pairs, print, require, io, os, setmetatable, pcall, i | |||
9 | -- file format documentation</a> for details. | 9 | -- file format documentation</a> for details. |
10 | module("luarocks.cfg") | 10 | module("luarocks.cfg") |
11 | 11 | ||
12 | program_version = "2.0" | 12 | -- Load site-local global configurations |
13 | local config = require("luarocks.config") | ||
14 | |||
15 | program_version = "2.0.1" | ||
13 | user_agent = "LuaRocks/"..program_version | 16 | user_agent = "LuaRocks/"..program_version |
14 | 17 | ||
15 | local persist = require("luarocks.persist") | 18 | local persist = require("luarocks.persist") |
@@ -31,12 +34,12 @@ local detected = {} | |||
31 | local system,proc | 34 | local system,proc |
32 | 35 | ||
33 | -- A proper installation of LuaRocks will hardcode the system | 36 | -- A proper installation of LuaRocks will hardcode the system |
34 | -- and proc values with LUAROCKS_UNAME_S and LUAROCKS_UNAME_M, | 37 | -- and proc values with config.LUAROCKS_UNAME_S and config.LUAROCKS_UNAME_M, |
35 | -- so that this detection does not run every time. When it is | 38 | -- so that this detection does not run every time. When it is |
36 | -- performed, we use the Unix way to identify the system, | 39 | -- performed, we use the Unix way to identify the system, |
37 | -- even on Windows (assuming UnxUtils or Cygwin). | 40 | -- even on Windows (assuming UnxUtils or Cygwin). |
38 | system = LUAROCKS_UNAME_S or io.popen("uname -s"):read("*l") | 41 | system = config.LUAROCKS_UNAME_S or io.popen("uname -s"):read("*l") |
39 | proc = LUAROCKS_UNAME_M or io.popen("uname -m"):read("*l") | 42 | proc = config.LUAROCKS_UNAME_M or io.popen("uname -m"):read("*l") |
40 | if proc:match("i[%d]86") then | 43 | if proc:match("i[%d]86") then |
41 | proc = "x86" | 44 | proc = "x86" |
42 | elseif proc:match("amd64") or proc:match("x86_64") then | 45 | elseif proc:match("amd64") or proc:match("x86_64") then |
@@ -82,9 +85,9 @@ end | |||
82 | variables = {} | 85 | variables = {} |
83 | rocks_trees = {} | 86 | rocks_trees = {} |
84 | 87 | ||
85 | persist.load_into_table(LUAROCKS_SYSCONFIG or sys_config_file, _M) | 88 | persist.load_into_table(config.LUAROCKS_SYSCONFIG or sys_config_file, _M) |
86 | 89 | ||
87 | if not LUAROCKS_FORCE_CONFIG then | 90 | if not config.LUAROCKS_FORCE_CONFIG then |
88 | home_config_file = os.getenv("LUAROCKS_CONFIG") or home_config_file | 91 | home_config_file = os.getenv("LUAROCKS_CONFIG") or home_config_file |
89 | local home_overrides = persist.load_into_table(home_config_file, { home = home }) | 92 | local home_overrides = persist.load_into_table(home_config_file, { home = home }) |
90 | if home_overrides then | 93 | if home_overrides then |
@@ -97,14 +100,14 @@ if not next(rocks_trees) then | |||
97 | if home_tree then | 100 | if home_tree then |
98 | table.insert(rocks_trees, home_tree) | 101 | table.insert(rocks_trees, home_tree) |
99 | end | 102 | end |
100 | if LUAROCKS_ROCKS_TREE then | 103 | if config.LUAROCKS_ROCKS_TREE then |
101 | table.insert(rocks_trees, LUAROCKS_ROCKS_TREE) | 104 | table.insert(rocks_trees, config.LUAROCKS_ROCKS_TREE) |
102 | end | 105 | end |
103 | end | 106 | end |
104 | 107 | ||
105 | -- Configure defaults: | 108 | -- Configure defaults: |
106 | 109 | ||
107 | local root = LUAROCKS_ROCKS_TREE or home_tree | 110 | local root = config.LUAROCKS_ROCKS_TREE or home_tree |
108 | local defaults = { | 111 | local defaults = { |
109 | root_dir = root, | 112 | root_dir = root, |
110 | rocks_dir = root.."/lib/luarocks/rocks", | 113 | rocks_dir = root.."/lib/luarocks/rocks", |
@@ -123,9 +126,9 @@ local defaults = { | |||
123 | }, | 126 | }, |
124 | 127 | ||
125 | lua_extension = "lua", | 128 | lua_extension = "lua", |
126 | lua_interpreter = LUA_INTERPRETER or "lua", | 129 | lua_interpreter = config.LUA_INTERPRETER or "lua", |
127 | downloader = LUAROCKS_DOWNLOADER or "wget", | 130 | downloader = config.LUAROCKS_DOWNLOADER or "wget", |
128 | md5checker = LUAROCKS_MD5CHECKER or "md5sum", | 131 | md5checker = config.LUAROCKS_MD5CHECKER or "md5sum", |
129 | 132 | ||
130 | variables = {}, | 133 | variables = {}, |
131 | 134 | ||
@@ -149,9 +152,9 @@ if detected.windows then | |||
149 | defaults.external_lib_extension = "dll" | 152 | defaults.external_lib_extension = "dll" |
150 | defaults.obj_extension = "obj" | 153 | defaults.obj_extension = "obj" |
151 | defaults.external_deps_dirs = { "c:/external/" } | 154 | defaults.external_deps_dirs = { "c:/external/" } |
152 | defaults.variables.LUA_BINDIR = LUA_BINDIR and LUA_BINDIR:gsub("\\", "/") or "c:/lua5.1/bin" | 155 | defaults.variables.LUA_BINDIR = config.LUA_BINDIR and config.LUA_BINDIR:gsub("\\", "/") or "c:/lua5.1/bin" |
153 | defaults.variables.LUA_INCDIR = LUA_INCDIR and LUA_INCDIR:gsub("\\", "/") or "c:/lua5.1/include" | 156 | defaults.variables.LUA_INCDIR = config.LUA_INCDIR and config.LUA_INCDIR:gsub("\\", "/") or "c:/lua5.1/include" |
154 | defaults.variables.LUA_LIBDIR = LUA_LIBDIR and LUA_LIBDIR:gsub("\\", "/") or "c:/lua5.1/lib" | 157 | defaults.variables.LUA_LIBDIR = config.LUA_LIBDIR and config.LUA_LIBDIR:gsub("\\", "/") or "c:/lua5.1/lib" |
155 | defaults.cmake_generator = "MinGW Makefiles" | 158 | defaults.cmake_generator = "MinGW Makefiles" |
156 | defaults.make = "nmake" -- TODO: Split Windows flavors between mingw and msvc | 159 | defaults.make = "nmake" -- TODO: Split Windows flavors between mingw and msvc |
157 | defaults.makefile = "Makefile.win" | 160 | defaults.makefile = "Makefile.win" |
@@ -178,9 +181,9 @@ if detected.unix then | |||
178 | defaults.external_lib_extension = "so" | 181 | defaults.external_lib_extension = "so" |
179 | defaults.obj_extension = "o" | 182 | defaults.obj_extension = "o" |
180 | defaults.external_deps_dirs = { "/usr/local", "/usr" } | 183 | defaults.external_deps_dirs = { "/usr/local", "/usr" } |
181 | defaults.variables.LUA_BINDIR = LUA_BINDIR or "/usr/local/bin" | 184 | defaults.variables.LUA_BINDIR = config.LUA_BINDIR or "/usr/local/bin" |
182 | defaults.variables.LUA_INCDIR = LUA_INCDIR or "/usr/local/include" | 185 | defaults.variables.LUA_INCDIR = config.LUA_INCDIR or "/usr/local/include" |
183 | defaults.variables.LUA_LIBDIR = LUA_LIBDIR or "/usr/local/lib" | 186 | defaults.variables.LUA_LIBDIR = config.LUA_LIBDIR or "/usr/local/lib" |
184 | defaults.variables.CFLAGS = "-O2" | 187 | defaults.variables.CFLAGS = "-O2" |
185 | defaults.cmake_generator = "Unix Makefiles" | 188 | defaults.cmake_generator = "Unix Makefiles" |
186 | defaults.make = "make" | 189 | defaults.make = "make" |
@@ -245,7 +248,7 @@ end | |||
245 | defaults.variables.LUA = defaults.lua_interpreter | 248 | defaults.variables.LUA = defaults.lua_interpreter |
246 | defaults.variables.LIB_EXTENSION = defaults.lib_extension | 249 | defaults.variables.LIB_EXTENSION = defaults.lib_extension |
247 | defaults.variables.OBJ_EXTENSION = defaults.obj_extension | 250 | defaults.variables.OBJ_EXTENSION = defaults.obj_extension |
248 | defaults.variables.LUAROCKS_PREFIX = LUAROCKS_PREFIX | 251 | defaults.variables.LUAROCKS_PREFIX = config.LUAROCKS_PREFIX |
249 | 252 | ||
250 | -- Use defaults: | 253 | -- Use defaults: |
251 | 254 | ||
diff --git a/src/luarocks/fetch.lua b/src/luarocks/fetch.lua index 5e1f870d..073b14d1 100644 --- a/src/luarocks/fetch.lua +++ b/src/luarocks/fetch.lua | |||
@@ -146,9 +146,13 @@ function load_local_rockspec(filename) | |||
146 | util.platform_overrides(rockspec.hooks) | 146 | util.platform_overrides(rockspec.hooks) |
147 | 147 | ||
148 | local basename = dir.base_name(filename) | 148 | local basename = dir.base_name(filename) |
149 | rockspec.name = basename:match("(.*)-[^-]*-[0-9]*") | 149 | if basename == "rockspec" then |
150 | if not rockspec.name then | 150 | rockspec.name = rockspec.package:lower() |
151 | return nil, "Expected filename in format 'name-version-revision.rockspec'." | 151 | else |
152 | rockspec.name = basename:match("(.*)-[^-]*-[0-9]*") | ||
153 | if not rockspec.name then | ||
154 | return nil, "Expected filename in format 'name-version-revision.rockspec'." | ||
155 | end | ||
152 | end | 156 | end |
153 | 157 | ||
154 | local protocol, pathname = dir.split_url(rockspec.source.url) | 158 | local protocol, pathname = dir.split_url(rockspec.source.url) |
@@ -164,7 +168,7 @@ function load_local_rockspec(filename) | |||
164 | end | 168 | end |
165 | 169 | ||
166 | local name_version = rockspec.package:lower() .. "-" .. rockspec.version | 170 | local name_version = rockspec.package:lower() .. "-" .. rockspec.version |
167 | if basename ~= name_version .. ".rockspec" then | 171 | if basename ~= "rockspec" and basename ~= name_version .. ".rockspec" then |
168 | return nil, "Inconsistency between rockspec filename ("..basename..") and its contents ("..name_version..".rockspec)." | 172 | return nil, "Inconsistency between rockspec filename ("..basename..") and its contents ("..name_version..".rockspec)." |
169 | end | 173 | end |
170 | 174 | ||
@@ -207,9 +211,15 @@ end | |||
207 | function load_rockspec(filename, location) | 211 | function load_rockspec(filename, location) |
208 | assert(type(filename) == "string") | 212 | assert(type(filename) == "string") |
209 | 213 | ||
210 | local name = dir.base_name(filename):match("(.*)%.rockspec") | 214 | local name |
211 | if not name then | 215 | local basename = dir.base_name(filename) |
212 | return nil, "Filename '"..filename.."' does not look like a rockspec." | 216 | if basename == "rockspec" then |
217 | name = "rockspec" | ||
218 | else | ||
219 | name = basename:match("(.*)%.rockspec") | ||
220 | if not name and not basename == "rockspec" then | ||
221 | return nil, "Filename '"..filename.."' does not look like a rockspec." | ||
222 | end | ||
213 | end | 223 | end |
214 | 224 | ||
215 | local err, errcode | 225 | local err, errcode |
diff --git a/src/luarocks/make.lua b/src/luarocks/make.lua index 1365cf13..cb2ba374 100644 --- a/src/luarocks/make.lua +++ b/src/luarocks/make.lua | |||
@@ -34,7 +34,7 @@ function run(...) | |||
34 | if not rockspec then | 34 | if not rockspec then |
35 | local files = fs.list_dir(fs.current_dir()) | 35 | local files = fs.list_dir(fs.current_dir()) |
36 | for _, file in pairs(files) do | 36 | for _, file in pairs(files) do |
37 | if file:match(".rockspec$") then | 37 | if file:match("rockspec$") then |
38 | if rockspec then | 38 | if rockspec then |
39 | return nil, "Please specify which rockspec file to use." | 39 | return nil, "Please specify which rockspec file to use." |
40 | else | 40 | else |
@@ -46,7 +46,7 @@ function run(...) | |||
46 | return nil, "Argument missing: please specify a rockspec to use on current directory." | 46 | return nil, "Argument missing: please specify a rockspec to use on current directory." |
47 | end | 47 | end |
48 | end | 48 | end |
49 | if not rockspec:match("%.rockspec$") then | 49 | if not rockspec:match("rockspec$") then |
50 | return nil, "Invalid argument: 'make' takes a rockspec as a parameter. See help." | 50 | return nil, "Invalid argument: 'make' takes a rockspec as a parameter. See help." |
51 | end | 51 | end |
52 | 52 | ||