[vlc-devel] commit: Provide luac compilation script. See vlc -I lua --lua-intf luac to get usage. (Antoine Cellerier )
git version control
git at videolan.org
Sat Feb 27 22:32:46 CET 2010
vlc | branch: master | Antoine Cellerier <dionoea at videolan.org> | Sat Feb 27 22:34:22 2010 +0100| [1f01a7c64eb1ecd975595736b261fec074fb7116] | committer: Antoine Cellerier
Provide luac compilation script. See vlc -I lua --lua-intf luac to get usage.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1f01a7c64eb1ecd975595736b261fec074fb7116
---
share/Makefile.am | 2 +
share/lua/intf/luac.lua | 48 +++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 50 insertions(+), 0 deletions(-)
diff --git a/share/Makefile.am b/share/Makefile.am
index 8d989d6..b89c58c 100644
--- a/share/Makefile.am
+++ b/share/Makefile.am
@@ -202,6 +202,7 @@ luac_verbose_0 = @echo " LUAC $@";
if BUILD_LUA
nobase_vlclib_DATA = \
+ lua/intf/luac.luac \
lua/intf/rc.luac \
lua/intf/hotkeys.luac \
lua/intf/modules/common.luac \
@@ -279,6 +280,7 @@ EXTRA_DIST += \
lua/intf/README.txt \
lua/intf/http.lua \
lua/intf/rc.lua \
+ lua/intf/luac.lua \
lua/intf/hotkeys.lua \
lua/intf/modules/common.lua \
lua/intf/modules/host.lua \
diff --git a/share/lua/intf/luac.lua b/share/lua/intf/luac.lua
new file mode 100644
index 0000000..9cb39ca
--- /dev/null
+++ b/share/lua/intf/luac.lua
@@ -0,0 +1,48 @@
+--[==========================================================================[
+ luac.lua: lua compilation module for VLC (duplicates luac)
+--[==========================================================================[
+ Copyright (C) 2010 the VideoLAN team
+ $Id$
+
+ Authors: Antoine Cellerier <dionoea at videolan dot org>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+--]==========================================================================]
+
+usage =
+[[ To compile a lua script to luac run:
+ vlc -I lua --lua-intf --lua-config 'luac={input="file.lua",output="file.luac"}'
+]]
+
+require "string"
+require "io"
+
+vlc.msg.info("About to compile lua file")
+vlc.msg.info(" Input is '"..tostring(config.input).."'")
+vlc.msg.info(" Output is '"..tostring(config.output).."'")
+
+if not config.input or not config.output then
+ vlc.msg.err("Input and output config options must be set")
+ for line in string.gmatch(usage,"([^\n]+)\n*") do
+ vlc.msg.err(line)
+ end
+else
+ local bytecode = loadfile(config.input)
+ local output = io.open(config.output, "wb")
+ output:write(string.dump(bytecode))
+end
+
+vlc.misc.quit()
+
More information about the vlc-devel
mailing list