diff options
| author | Fabio Mascarenhas <mascarenhas@acm.org> | 2013-04-12 17:05:40 -0300 |
|---|---|---|
| committer | Fabio Mascarenhas <mascarenhas@acm.org> | 2013-04-12 17:05:40 -0300 |
| commit | 736fa98402202f74160e0bd7cfe7745e34b307ab (patch) | |
| tree | b7887f5b88a20c53dd084da88fe23d44215952dc /src | |
| parent | e2dea932698d1ded8767476214d41cb2a19641c0 (diff) | |
| download | luarocks-736fa98402202f74160e0bd7cfe7745e34b307ab.tar.gz luarocks-736fa98402202f74160e0bd7cfe7745e34b307ab.tar.bz2 luarocks-736fa98402202f74160e0bd7cfe7745e34b307ab.zip | |
compile rclauncher binary wrapper on windows on every build
Diffstat (limited to 'src')
| -rw-r--r-- | src/luarocks/build/builtin.lua | 12 | ||||
| -rw-r--r-- | src/luarocks/cfg.lua | 18 |
2 files changed, 18 insertions, 12 deletions
diff --git a/src/luarocks/build/builtin.lua b/src/luarocks/build/builtin.lua index 96ce35a6..f9cc0302 100644 --- a/src/luarocks/build/builtin.lua +++ b/src/luarocks/build/builtin.lua | |||
| @@ -88,8 +88,10 @@ function run(rockspec) | |||
| 88 | make_rc(fullname, fullbasename..".rc") | 88 | make_rc(fullname, fullbasename..".rc") |
| 89 | local ok = execute(variables.RC, "-o", resname, rcname) | 89 | local ok = execute(variables.RC, "-o", resname, rcname) |
| 90 | if not ok then return ok end | 90 | if not ok then return ok end |
| 91 | ok = execute(variables.LD, "-o", wrapname, resname, variables.WRAPPER, | 91 | ok = execute(variables.CC.." "..variables.CFLAGS, "-I"..variables.LUA_INCDIR, |
| 92 | dir.path(variables.LUA_LIBDIR, variables.LUALIB), "-l" .. (variables.MSVCRT or "m"), "-luser32") | 92 | "-o", wrapname, resname, variables.WRAPPER, |
| 93 | dir.path(variables.LUA_LIBDIR, variables.LUALIB), | ||
| 94 | "-l" .. (variables.MSVCRT or "m"), "-luser32") | ||
| 93 | return ok, wrapname | 95 | return ok, wrapname |
| 94 | end | 96 | end |
| 95 | elseif cfg.is_platform("win32") then | 97 | elseif cfg.is_platform("win32") then |
| @@ -119,13 +121,17 @@ function run(rockspec) | |||
| 119 | compile_wrapper_binary = function(fullname, name) | 121 | compile_wrapper_binary = function(fullname, name) |
| 120 | local fullbasename = fullname:gsub("%.lua$", ""):gsub("/", "\\") | 122 | local fullbasename = fullname:gsub("%.lua$", ""):gsub("/", "\\") |
| 121 | local basename = name:gsub("%.lua$", ""):gsub("/", "\\") | 123 | local basename = name:gsub("%.lua$", ""):gsub("/", "\\") |
| 124 | local object = basename..".obj" | ||
| 122 | local rcname = basename..".rc" | 125 | local rcname = basename..".rc" |
| 123 | local resname = basename..".res" | 126 | local resname = basename..".res" |
| 124 | local wrapname = basename..".exe" | 127 | local wrapname = basename..".exe" |
| 125 | make_rc(fullname, fullbasename..".rc") | 128 | make_rc(fullname, fullbasename..".rc") |
| 126 | local ok = execute(variables.RC, "-r", "-fo"..resname, rcname) | 129 | local ok = execute(variables.RC, "-r", "-fo"..resname, rcname) |
| 127 | if not ok then return ok end | 130 | if not ok then return ok end |
| 128 | ok = execute(variables.LD, "-out:"..wrapname, resname, variables.WRAPPER, | 131 | ok = execute(variables.CC.." "..variables.CFLAGS, "-c", "-Fo"..object, |
| 132 | "-I"..variables.LUA_INCDIR, variables.WRAPPER) | ||
| 133 | if not ok then return ok end | ||
| 134 | ok = execute(variables.LD, "-out:"..wrapname, resname, object, | ||
| 129 | dir.path(variables.LUA_LIBDIR, variables.LUALIB), "user32.lib") | 135 | dir.path(variables.LUA_LIBDIR, variables.LUALIB), "user32.lib") |
| 130 | local manifestfile = wrapname..".manifest" | 136 | local manifestfile = wrapname..".manifest" |
| 131 | if ok and fs.exists(manifestfile) then | 137 | if ok and fs.exists(manifestfile) then |
diff --git a/src/luarocks/cfg.lua b/src/luarocks/cfg.lua index e16079f4..12a477a0 100644 --- a/src/luarocks/cfg.lua +++ b/src/luarocks/cfg.lua | |||
| @@ -193,18 +193,18 @@ local defaults = { | |||
| 193 | MAKE = "make", | 193 | MAKE = "make", |
| 194 | CC = "cc", | 194 | CC = "cc", |
| 195 | LD = "ld", | 195 | LD = "ld", |
| 196 | 196 | ||
| 197 | CVS = "cvs", | 197 | CVS = "cvs", |
| 198 | GIT = "git", | 198 | GIT = "git", |
| 199 | SSCM = "sscm", | 199 | SSCM = "sscm", |
| 200 | SVN = "svn", | 200 | SVN = "svn", |
| 201 | HG = "hg", | 201 | HG = "hg", |
| 202 | 202 | ||
| 203 | RSYNC = "rsync", | 203 | RSYNC = "rsync", |
| 204 | WGET = "wget", | 204 | WGET = "wget", |
| 205 | SCP = "scp", | 205 | SCP = "scp", |
| 206 | CURL = "curl", | 206 | CURL = "curl", |
| 207 | 207 | ||
| 208 | PWD = "pwd", | 208 | PWD = "pwd", |
| 209 | MKDIR = "mkdir", | 209 | MKDIR = "mkdir", |
| 210 | RMDIR = "rmdir", | 210 | RMDIR = "rmdir", |
| @@ -221,18 +221,18 @@ local defaults = { | |||
| 221 | GUNZIP = "gunzip", | 221 | GUNZIP = "gunzip", |
| 222 | BUNZIP2 = "bunzip2", | 222 | BUNZIP2 = "bunzip2", |
| 223 | TAR = "tar", | 223 | TAR = "tar", |
| 224 | 224 | ||
| 225 | MD5SUM = "md5sum", | 225 | MD5SUM = "md5sum", |
| 226 | OPENSSL = "openssl", | 226 | OPENSSL = "openssl", |
| 227 | MD5 = "md5", | 227 | MD5 = "md5", |
| 228 | STAT = "stat", | 228 | STAT = "stat", |
| 229 | 229 | ||
| 230 | CMAKE = "cmake", | 230 | CMAKE = "cmake", |
| 231 | SEVENZ = "7z", | 231 | SEVENZ = "7z", |
| 232 | 232 | ||
| 233 | STATFLAG = "-c '%a'", | 233 | STATFLAG = "-c '%a'", |
| 234 | }, | 234 | }, |
| 235 | 235 | ||
| 236 | external_deps_subdirs = { | 236 | external_deps_subdirs = { |
| 237 | bin = "bin", | 237 | bin = "bin", |
| 238 | lib = "lib", | 238 | lib = "lib", |
| @@ -262,7 +262,7 @@ if detected.windows then | |||
| 262 | defaults.variables.MAKE = "nmake" | 262 | defaults.variables.MAKE = "nmake" |
| 263 | defaults.variables.CC = "cl" | 263 | defaults.variables.CC = "cl" |
| 264 | defaults.variables.RC = "rc" | 264 | defaults.variables.RC = "rc" |
| 265 | defaults.variables.WRAPPER = site_config.LUAROCKS_PREFIX .. "\\2.0\\rclauncher.obj" | 265 | defaults.variables.WRAPPER = site_config.LUAROCKS_PREFIX .. "\\2.0\\rclauncher.c" |
| 266 | defaults.variables.LD = "link" | 266 | defaults.variables.LD = "link" |
| 267 | defaults.variables.MT = "mt" | 267 | defaults.variables.MT = "mt" |
| 268 | defaults.variables.LUALIB = "lua"..lua_version..".lib" | 268 | defaults.variables.LUALIB = "lua"..lua_version..".lib" |
| @@ -293,7 +293,7 @@ if detected.mingw32 then | |||
| 293 | defaults.variables.MAKE = "mingw32-make" | 293 | defaults.variables.MAKE = "mingw32-make" |
| 294 | defaults.variables.CC = "mingw32-gcc" | 294 | defaults.variables.CC = "mingw32-gcc" |
| 295 | defaults.variables.RC = "windres" | 295 | defaults.variables.RC = "windres" |
| 296 | defaults.variables.WRAPPER = site_config.LUAROCKS_PREFIX .. "\\2.0\\rclauncher.o" | 296 | defaults.variables.WRAPPER = site_config.LUAROCKS_PREFIX .. "\\2.0\\rclauncher.c" |
| 297 | defaults.variables.LD = "mingw32-gcc" | 297 | defaults.variables.LD = "mingw32-gcc" |
| 298 | defaults.variables.CFLAGS = "-O2" | 298 | defaults.variables.CFLAGS = "-O2" |
| 299 | defaults.variables.LIBFLAG = "-shared" | 299 | defaults.variables.LIBFLAG = "-shared" |
