From 3364429deccef52024ed5b0384d70d78dedd2fe7 Mon Sep 17 00:00:00 2001 From: Fabio Mascarenhas Date: Fri, 15 Jan 2010 20:37:46 -0200 Subject: bugfixes, new rclauncher --- src/luarocks/build/builtin.lua | 14 ++++++++------ src/luarocks/fs/win32.lua | 1 + 2 files changed, 9 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/luarocks/build/builtin.lua b/src/luarocks/build/builtin.lua index d04b69d5..b874b82d 100644 --- a/src/luarocks/build/builtin.lua +++ b/src/luarocks/build/builtin.lua @@ -36,18 +36,20 @@ local function make_rc(luafilename, rcfilename) if not rcfile then error("Could not open "..rcfilename.." for writing.") end - rcfile:write("#define IDS_RCLAUNCHER 1\r\n") rcfile:write("STRINGTABLE\r\nBEGIN\r\n") - rcfile:write("IDS_RCLAUNCHER \"") + local i = 1 for line in io.lines(luafilename) do if not line:match("^#!") then + rcfile:write(i .. " \"") line = line:gsub("\\", "\\\\"):gsub('"', '""'):gsub("[\r\n]+", "") - rcfile:write(line .. "\\n\\\r\n") + rcfile:write(line .. "\\r\\n\"\r\n") + i = i + 1 end end - rcfile:write("\"\r\nEND\r\n") + rcfile:write("END\r\n") + rcfile:close() end @@ -108,7 +110,7 @@ function run(rockspec) local ok = execute(variables.RC, "-r", "-fo"..resname, rcname) if not ok then return ok end ok = execute(variables.LD, "-out:"..wrapname, resname, variables.WRAPPER, - fs.make_path(variables.LUA_LIBDIR, "lua5.1.lib"), "user32.lib") + dir.path(variables.LUA_LIBDIR, "lua5.1.lib"), "user32.lib") local manifestfile = wrapname..".manifest" if ok and fs.exists(manifestfile) then ok = execute(variables.MT, "-manifest", manifestfile, "-outputresource:"..wrapname..";1") @@ -144,7 +146,7 @@ function run(rockspec) -- otherwise just appends .exe to the name if build.install and build.install.bin then for i, name in ipairs(build.install.bin) do - local fullname = fs.make_path(fs.current_dir(), name) + local fullname = dir.path(fs.current_dir(), name) local match = name:match("%.lua$") local basename = name:gsub("%.lua$", "") local file diff --git a/src/luarocks/fs/win32.lua b/src/luarocks/fs/win32.lua index 87ad26b2..d87ad90d 100644 --- a/src/luarocks/fs/win32.lua +++ b/src/luarocks/fs/win32.lua @@ -81,6 +81,7 @@ function copy_binary(filename, dest) end local exe_pattern = "%.[Ee][Xx][Ee]$" local base = dir.base_name(filename) + local dest = dir.dir_name(dest) if base:match(exe_pattern) then base = base:gsub(exe_pattern, ".lua") local helpname = dest.."/"..base -- cgit v1.2.3-55-g6feb