summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorDaniel Silverstone <daniel.silverstone@codethink.co.uk>2014-03-10 12:41:44 +0000
committerDaniel Silverstone <daniel.silverstone@codethink.co.uk>2014-03-11 14:02:42 +0000
commitab1c0b22b57fc96782d9dd3498b36be04ac6f328 (patch)
tree8031a63eef6111ff90e120afcb5b3ffa82b4fc27 /utils
parent1b141c8359c690756b0f9612fd6ccfc7ca5e9f99 (diff)
downloadgitano-ab1c0b22b57fc96782d9dd3498b36be04ac6f328.tar.gz
Add support for a GITANO_PLUGIN_PATH in install-lua-bin
The binary installer `install-lua-bin` needs to update all of the files ending in `.in` to be ready for installation. This patch ensures that we support a tag for loading plugins which the various `.in` files can then use to ensure they load plugins at an appropriate point. Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
Diffstat (limited to 'utils')
-rw-r--r--utils/install-lua-bin14
1 files changed, 13 insertions, 1 deletions
diff --git a/utils/install-lua-bin b/utils/install-lua-bin
index 4d7322c..3353a34 100644
--- a/utils/install-lua-bin
+++ b/utils/install-lua-bin
@@ -1,6 +1,6 @@
-- Run this explicitly through -*- Lua -*-
-local lua_bin, inst_share_path, inst_bin_path, inst_mod_path, input_name, output_name = ...
+local lua_bin, inst_share_path, inst_bin_path, inst_mod_path, inst_plugin_path, input_name, output_name = ...
local input_fh = assert(io.open(input_name, "r"))
local output_fh = assert(io.open(output_name, "w"))
@@ -20,6 +20,16 @@ for path_elem in package.path:gmatch("([^;]+)") do
end
end
+do
+ -- transform the plugin path from colon separated to a table
+ -- for interpolation
+ local path = {}
+ for entry in string.gfind(inst_plugin_path, "([^:]+)") do
+ path[#path+1] = ("%q"):format(entry)
+ end
+ inst_plugin_path = ("{%s}"):format(table.concat(path, ", "))
+end
+
while line do
local token = line:match("^%-%- @@(.+)$")
if token then
@@ -38,6 +48,8 @@ while line do
output_fh:write(("gitano.config.lib_bin_path(%q)\n"):format(inst_bin_path))
elseif token == "GITANO_SHARE_PATH" then
output_fh:write(("gitano.config.share_path(%q)\n"):format(inst_share_path))
+ elseif token == "GITANO_PLUGIN_PATH" then
+ output_fh:write(("gitano.plugins.load_plugins %s\n"):format(inst_plugin_path))
else
output_fh:write("-- Unknown token: " .. token .. "\n")
end