Skip to Content.
Sympa Menu

sm-commit - [SM-Commit] GIT changes to master grimoire by Vlad Glagolev (051b98e5f740d2bde3f27a59fd8c7206311a803c)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: Vlad Glagolev <scm AT sourcemage.org>
  • To: sm-commit AT lists.ibiblio.org
  • Subject: [SM-Commit] GIT changes to master grimoire by Vlad Glagolev (051b98e5f740d2bde3f27a59fd8c7206311a803c)
  • Date: Thu, 24 May 2018 20:23:27 +0000

GIT changes to master grimoire by Vlad Glagolev <stealth AT sourcemage.org>:

dev/null |binary
lua-forge/lua-imlib2/BUILD | 2
lua-forge/lua-imlib2/DEPENDS | 2
lua-forge/lua-imlib2/HISTORY | 5
lua-forge/lua-imlib2/PRE_BUILD | 6
lua-forge/lua/INSTALL | 2
lua-forge/tolua++/BUILD | 2
lua-forge/tolua++/DEPENDS | 4
lua-forge/tolua++/DETAILS | 9
lua-forge/tolua++/HISTORY | 8
lua-forge/tolua++/INSTALL | 4
lua-forge/tolua++/PRE_BUILD | 2
lua-forge/tolua++/lua53.patch | 623
+++++++++++++++++++++++++++++++++++++++++
13 files changed, 658 insertions(+), 11 deletions(-)

New commits:
commit 051b98e5f740d2bde3f27a59fd8c7206311a803c
Author: Vlad Glagolev <stealth AT sourcemage.org>
Commit: Vlad Glagolev <stealth AT sourcemage.org>

lua: correct pkgconfig filename

commit c172937ae9e33efa13fddc475085bd8bd0b0003c
Author: Vlad Glagolev <stealth AT sourcemage.org>
Commit: Vlad Glagolev <stealth AT sourcemage.org>

lua-imlib2: Lua 5.2/5.3 compat

commit 17c372887919f3397c6dfbaa55c1ad38ecb73274
Author: Vlad Glagolev <stealth AT sourcemage.org>
Commit: Vlad Glagolev <stealth AT sourcemage.org>

tolua++: Lua 5.2/5.3 compat

diff --git a/lua-forge/lua-imlib2/BUILD b/lua-forge/lua-imlib2/BUILD
index 75a19fd..1a92fc6 100755
--- a/lua-forge/lua-imlib2/BUILD
+++ b/lua-forge/lua-imlib2/BUILD
@@ -1 +1 @@
-make && make doc
+make CFLAGS="${CFLAGS}" && make doc
diff --git a/lua-forge/lua-imlib2/DEPENDS b/lua-forge/lua-imlib2/DEPENDS
index 51ea55f..9807e61 100755
--- a/lua-forge/lua-imlib2/DEPENDS
+++ b/lua-forge/lua-imlib2/DEPENDS
@@ -1,2 +1,2 @@
-depends lua51 &&
+depends LUA &&
depends imlib2
diff --git a/lua-forge/lua-imlib2/HISTORY b/lua-forge/lua-imlib2/HISTORY
index aead684..e0bf55c 100644
--- a/lua-forge/lua-imlib2/HISTORY
+++ b/lua-forge/lua-imlib2/HISTORY
@@ -1,3 +1,8 @@
+2018-05-24 Vlad Glagolev <stealth AT sourcemage.org>
+ * DEPENDS: lua51 -> LUA
+ * BUILD: respect CFLAGS
+ * PRE_BUILD: added, to fix build with Lua 5.2/5.3
+
2011-12-17 Vlad Glagolev <stealth AT sourcemage.org>
* DEPENDS: lua -> lua51

diff --git a/lua-forge/lua-imlib2/PRE_BUILD b/lua-forge/lua-imlib2/PRE_BUILD
new file mode 100755
index 0000000..cbcae22
--- /dev/null
+++ b/lua-forge/lua-imlib2/PRE_BUILD
@@ -0,0 +1,6 @@
+default_pre_build &&
+cd "${SOURCE_DIRECTORY}" &&
+
+if [ "$(get_spell_provider ${SPELL} LUA)" == "lua" ]; then
+ sedit "s:loadstring:load:" doc/extract_doc.lua
+fi
diff --git a/lua-forge/lua/INSTALL b/lua-forge/lua/INSTALL
index bc7f523..e9b3fb3 100755
--- a/lua-forge/lua/INSTALL
+++ b/lua-forge/lua/INSTALL
@@ -11,7 +11,7 @@ ln -vsf "$TRACK_ROOT/usr/lib/${SO}"
"$INSTALL_ROOT/usr/lib/liblua.so.5" &&
# install pkgconfig description file
install -vm 755 -d "$INSTALL_ROOT/usr/lib/pkgconfig" &&

-local PC="/usr/lib/pkgconfig/lua$(echo ${VERSION%.?} | tr -d '.').pc" &&
+local PC="/usr/lib/pkgconfig/lua${VERSION%.?}.pc" &&

install -vm 644 "${SOURCE_DIRECTORY}/lua.pc" "${INSTALL_ROOT}${PC}" &&
ln -vsf "${TRACK_ROOT}${PC}" "${INSTALL_ROOT}/usr/lib/pkgconfig/lua.pc"
diff --git a/lua-forge/tolua++/BUILD b/lua-forge/tolua++/BUILD
index edc7b3a..e013b8d 100755
--- a/lua-forge/tolua++/BUILD
+++ b/lua-forge/tolua++/BUILD
@@ -1 +1 @@
-scons prefix="$INSTALL_ROOT/usr"
+cmake_build
diff --git a/lua-forge/tolua++/DEPENDS b/lua-forge/tolua++/DEPENDS
index af15fe6..99952df 100755
--- a/lua-forge/tolua++/DEPENDS
+++ b/lua-forge/tolua++/DEPENDS
@@ -1,2 +1,2 @@
-depends lua51 &&
-depends scons
+depends LUA &&
+depends cmake
diff --git a/lua-forge/tolua++/DETAILS b/lua-forge/tolua++/DETAILS
index b5841ea..86e64bc 100755
--- a/lua-forge/tolua++/DETAILS
+++ b/lua-forge/tolua++/DETAILS
@@ -1,9 +1,10 @@
SPELL=tolua++
+ SPELLX=toluapp
VERSION=1.0.93
- SOURCE=$SPELL-$VERSION.tar.bz2
- SOURCE_URL[0]=http://www.codenix.com/~tolua/$SOURCE
-SOURCE_DIRECTORY="$BUILD_DIRECTORY/$SPELL-$VERSION"
- SOURCE_GPG="gurus.gpg:${SOURCE}.sig"
+ SOURCE=${SPELL}-${VERSION}.tar.gz
+
SOURCE_URL[0]=https://github.com/LuaDist/${SPELLX}/archive/${VERSION}.tar.gz
+
SOURCE_HASH=sha512:68f169244f1b37fdeb1a72b0f8fc61a30329c0a828f46af718021c8cfa120fe15379b4b2bc10f0995de90e34735564afd6d302fa1865be60272e52e276e1114f
+SOURCE_DIRECTORY="${BUILD_DIRECTORY}/${SPELLX}-${VERSION}"
WEB_SITE=http://www.codenix.com/~tolua/
LICENSE[0]=MIT
ENTERED=20080816
diff --git a/lua-forge/tolua++/HISTORY b/lua-forge/tolua++/HISTORY
index b2cde80..d9b2a88 100644
--- a/lua-forge/tolua++/HISTORY
+++ b/lua-forge/tolua++/HISTORY
@@ -1,3 +1,11 @@
+2018-05-24 Vlad Glagolev <stealth AT sourcemage.org>
+ * DETAILS: updated source URL
+ * DEPENDS: Lua 5.2/5.3 compat, switched to cmake
+ * BUILD: switched to cmake
+ * INSTALL: add symlink
+ * PRE_BUILD: apply patch
+ * lua53.patch: added, backported from Arch
+
2011-12-17 Vlad Glagolev <stealth AT sourcemage.org>
* DEPENDS: lua -> lua51

diff --git a/lua-forge/tolua++/INSTALL b/lua-forge/tolua++/INSTALL
index 8c78671..619f6fb 100755
--- a/lua-forge/tolua++/INSTALL
+++ b/lua-forge/tolua++/INSTALL
@@ -1 +1,3 @@
-scons prefix="$INSTALL_ROOT/usr" install
+default_install &&
+
+ln -vsf "${TRACK_ROOT}/usr/bin/toluapp" "${INSTALL_ROOT}/usr/bin/tolua++"
diff --git a/lua-forge/tolua++/PRE_BUILD b/lua-forge/tolua++/PRE_BUILD
index 09b1abe..8541f2a 100755
--- a/lua-forge/tolua++/PRE_BUILD
+++ b/lua-forge/tolua++/PRE_BUILD
@@ -1,6 +1,8 @@
default_pre_build &&
cd "$SOURCE_DIRECTORY" &&

+patch -p0 < "${SPELL_DIRECTORY}/lua53.patch" &&
+
cp -v custom-5.1.py custom.py &&

sed -i "s:lua5.1:lua:g;s:build:#build:" custom.py
diff --git a/lua-forge/tolua++/lua53.patch b/lua-forge/tolua++/lua53.patch
new file mode 100644
index 0000000..f3a43bb
--- /dev/null
+++ b/lua-forge/tolua++/lua53.patch
@@ -0,0 +1,623 @@
+--- cmake/FindLua.cmake.orig
++++ cmake/FindLua.cmake
+@@ -1,7 +1,7 @@
+ # Locate Lua library
+ # This module defines
+ # LUA_EXECUTABLE, if found
+-# LUA_FOUND, if false, do not try to link to Lua
++# LUA_FOUND, if false, do not try to link to Lua
+ # LUA_LIBRARIES
+ # LUA_INCLUDE_DIR, where to find lua.h
+ # LUA_VERSION_STRING, the version of Lua found (since CMake 2.8.8)
+@@ -40,7 +40,7 @@
+ IF(Lua_FIND_VERSION_MAJOR AND Lua_FIND_VERSION_MINOR)
+ SET(_POSSIBLE_SUFFIXES
"${Lua_FIND_VERSION_MAJOR}${Lua_FIND_VERSION_MINOR}"
"${Lua_FIND_VERSION_MAJOR}.${Lua_FIND_VERSION_MINOR}"
"-${Lua_FIND_VERSION_MAJOR}.${Lua_FIND_VERSION_MINOR}")
+ ELSE(Lua_FIND_VERSION_MAJOR AND Lua_FIND_VERSION_MINOR)
+- SET(_POSSIBLE_SUFFIXES "52" "5.2" "-5.2" "51" "5.1" "-5.1")
++ SET(_POSSIBLE_SUFFIXES "53" "5.3" "-5.3" "52" "5.2" "-5.2" "51" "5.1"
"-5.1")
+ ENDIF(Lua_FIND_VERSION_MAJOR AND Lua_FIND_VERSION_MINOR)
+
+ # Set up possible search names and locations
+@@ -72,7 +72,7 @@
+ )
+
+ # Find the lua library
+-FIND_LIBRARY(LUA_LIBRARY
++FIND_LIBRARY(LUA_LIBRARY
+ NAMES ${_POSSIBLE_LUA_LIBRARY}
+ HINTS
+ $ENV{LUA_DIR}
+@@ -108,7 +108,7 @@
+ ENDIF()
+
+ INCLUDE(FindPackageHandleStandardArgs)
+-# handle the QUIETLY and REQUIRED arguments and set LUA_FOUND to TRUE if
++# handle the QUIETLY and REQUIRED arguments and set LUA_FOUND to TRUE if
+ # all listed variables are TRUE
+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lua
+ REQUIRED_VARS LUA_LIBRARIES
LUA_INCLUDE_DIR
+--- config_linux.py.orig
++++ config_linux.py
+@@ -4,7 +4,7 @@
+
+ # Compiler flags (based on Debian's installation of lua)
+ #LINKFLAGS = ['-g']
+-CCFLAGS = ['-I/usr/include/lua50', '-O2', '-ansi', '-Wall']
++CCFLAGS = ['-O2', '-ansi', '-Wall']
+ #CCFLAGS = ['-I/usr/include/lua50', '-g']
+
+ # this is the default directory for installation. Files will be installed on
+@@ -18,5 +18,5 @@
+ prefix = '/usr/local'
+
+ # libraries (based on Debian's installation of lua)
+-LIBS = ['lua50', 'lualib50', 'dl', 'm']
++LIBS = ['lua', 'dl', 'm']
+
+--- custom.py.orig
++++ custom.py
+@@ -0,0 +1,9 @@
++CCFLAGS = ['-O2', '-ansi']
++#LIBPATH = ['/usr/local/lib']
++LIBS = ['lua', 'dl', 'm']
++prefix = '/usr'
++build_dev=1
++tolua_bin = 'tolua++'
++tolua_lib = 'tolua++-5.2'
++TOLUAPP = 'tolua++'
++
+--- SConstruct.orig
++++ SConstruct
+@@ -82,6 +82,8 @@
+ header = target[:-2] + '.h'
+ pheader = Dir('.').path + '/' + header
+
++ print("Generating ", target, " from ", source)
++
+ tolua = ""
+ if bootstrap:
+ if os.name == 'nt':
+--- src/bin/lua/all.lua.orig
++++ src/bin/lua/all.lua
+@@ -1,8 +1,8 @@
+ dofile(path.."compat-5.1.lua")
+ dofile(path.."compat.lua")
+-dofile(path.."basic.lua")
+ dofile(path.."feature.lua")
+ dofile(path.."verbatim.lua")
++dofile(path.."basic.lua")
+ dofile(path.."code.lua")
+ dofile(path.."typedef.lua")
+ dofile(path.."container.lua")
+--- src/bin/lua/basic.lua.orig
++++ src/bin/lua/basic.lua
+@@ -75,8 +75,8 @@
+ end
+
+ function applyrenaming (s)
+- for i=1,getn(_renaming) do
+- local m,n = gsub(s,_renaming[i].old,_renaming[i].new)
++ for i,v in ipairs(_renaming) do
++ local m,n = gsub(s,v.old,v.new)
+ if n ~= 0 then
+ return m
+ end
+@@ -252,7 +252,8 @@
+ -- concatenate all parameters, following output rules
+ function concatparam (line, ...)
+ local i=1
+- while i<=arg.n do
++ local arg={...}
++ while i<=#arg do
+ if _cont and not strfind(_cont,'[%(,"]') and
+ strfind(arg[i],"^[%a_~]") then
+ line = line .. ' '
+@@ -263,7 +264,7 @@
+ end
+ i = i+1
+ end
+- if strfind(arg[arg.n],"[%/%)%;%{%}]$") then
++ if strfind(arg[#arg],"[%/%)%;%{%}]$") then
+ _cont=nil line = line .. '\n'
+ end
+ return line
+@@ -272,7 +273,8 @@
+ -- output line
+ function output (...)
+ local i=1
+- while i<=arg.n do
++ local arg = {...}
++ while i<=#arg do
+ if _cont and not strfind(_cont,'[%(,"]') and
+ strfind(arg[i],"^[%a_~]") then
+ write(' ')
+@@ -283,7 +285,7 @@
+ end
+ i = i+1
+ end
+- if strfind(arg[arg.n],"[%/%)%;%{%}]$") then
++ if strfind(arg[#arg],"[%/%)%;%{%}]$") then
+ _cont=nil write('\n')
+ end
+ end
+@@ -373,9 +375,10 @@
+
+ end
+
++
+ -- called to output an error message
+ function output_error_hook(...)
+- return string.format(...)
++ return string.format(table.unpack{...})
+ end
+
+ -- custom pushers
+--- src/bin/lua/class.lua.orig
++++ src/bin/lua/class.lua
+@@ -92,7 +92,7 @@
+ self.btype = typevar(self.base)
+ self.ctype = 'const '..self.type
+ if self.extra_bases then
+- for i=1,table.getn(self.extra_bases) do
++ for i=1,#self.extra_bases do
+ self.extra_bases[i] = typevar(self.extra_bases[i])
+ end
+ end
+@@ -138,9 +138,9 @@
+ -- Expects the name, the base (array) and the body of the class.
+ function Class (n,p,b)
+
+- if table.getn(p) > 1 then
++ if #p > 1 then
+ b = string.sub(b, 1, -2)
+- for i=2,table.getn(p),1 do
++ for i=2,#p,1 do
+ b = b.."\n tolua_inherits "..p[i].."
__"..p[i].."__;\n"
+ end
+ b = b.."\n}"
+--- src/bin/lua/clean.lua.orig
++++ src/bin/lua/clean.lua
+@@ -19,14 +19,14 @@
+ }
+
+ function mask (s)
+- for i = 1,getn(MASK) do
++ for i = 1,#MASK do
+ s = gsub(s,MASK[i][2],MASK[i][1])
+ end
+ return s
+ end
+
+ function unmask (s)
+- for i = 1,getn(MASK) do
++ for i = 1,#MASK do
+ s = gsub(s,MASK[i][1],MASK[i][2])
+ end
+ return s
+--- src/bin/lua/compat-5.1.lua.orig
++++ src/bin/lua/compat-5.1.lua
+@@ -25,10 +25,10 @@
+ end
+ end
+
+- local f = load(getfile, path)
++ local f, errmsg = load(getfile, path)
+ if not f then
+
+- error("error loading file "..path)
++ error("error loading file "..path ..": " .. errmsg)
+ end
+ return f()
+ end
+--- src/bin/lua/compat.lua.orig
++++ src/bin/lua/compat.lua
+@@ -40,15 +40,13 @@
+ end
+ end
+
+-function dostring(s) return do_(loadstring(s)) end
++function dostring(s) return do_(load(s)) end
+ -- function dofile(s) return do_(loadfile(s)) end
+
+ -------------------------------------------------------------------
+ -- Table library
+ local tab = table
+-foreach = tab.foreach
+-foreachi = tab.foreachi
+-getn = tab.getn
++getn = function (tab) return #tab end
+ tinsert = tab.insert
+ tremove = tab.remove
+ sort = tab.sort
+@@ -78,7 +76,7 @@
+ frexp = math.frexp
+ ldexp = math.ldexp
+ log = math.log
+-log10 = math.log10
++log10 = function(val) return math.log(10, val) end
+ max = math.max
+ min = math.min
+ mod = math.mod
+@@ -177,17 +175,19 @@
+
+ function read (...)
+ local f = _INPUT
++ local arg = {...}
+ if rawtype(arg[1]) == 'userdata' then
+ f = tab.remove(arg, 1)
+ end
+- return f:read(unpack(arg))
++ return f:read(table.unpack(arg))
+ end
+
+ function write (...)
+ local f = _OUTPUT
++ local arg = {...}
+ if rawtype(arg[1]) == 'userdata' then
+ f = tab.remove(arg, 1)
+ end
+- return f:write(unpack(arg))
++ return f:write(table.unpack(arg))
+ end
+
+--- src/bin/lua/declaration.lua.orig
++++ src/bin/lua/declaration.lua
+@@ -137,7 +137,7 @@
+ if b then
+
+ m = split_c_tokens(string.sub(m, 2, -2), ",")
+- for i=1, table.getn(m) do
++ for i=1, #m do
+ m[i] = string.gsub(m[i],"%s*([%*&])", "%1")
+ if not isbasic(m[i]) then
+ if not isenum(m[i]) then _, m[i] =
applytypedef("", m[i]) end
+@@ -522,7 +522,7 @@
+ end
+
+ -- check the form: mod type* name
+- local s1 = gsub(s,"(%b\[\])",function (n) return gsub(n,'%*','\1') end)
++ local s1 = gsub(s,"(%b%[%])",function (n) return gsub(n,'%*','\1') end)
+ t = split_c_tokens(s1,'%*')
+ if t.n == 2 then
+ t[2] = gsub(t[2],'\1','%*') -- restore * in dimension expression
+--- src/bin/lua/feature.lua.orig
++++ src/bin/lua/feature.lua
+@@ -132,7 +132,7 @@
+ if not fname or fname == '' then
+ fname = self.name
+ end
+- n = string.gsub(n..'_'.. (fname), "[<>:, \.%*&]", "_")
++ n = string.gsub(n..'_'.. (fname), "[<>:, \\.%*&]", "_")
+
+ return n
+ end
+--- src/bin/lua/function.lua.orig
++++ src/bin/lua/function.lua
+@@ -520,7 +520,7 @@
+ function join(t, sep, first, last)
+
+ first = first or 1
+- last = last or table.getn(t)
++ last = last or #t
+ local lsep = ""
+ local ret = ""
+ local loop = false
+--- src/bin/lua/package.lua.orig
++++ src/bin/lua/package.lua
+@@ -39,7 +39,7 @@
+ self.code = gsub(self.code,"\n%s*%$%]","\2")
+ self.code = gsub(self.code,"(%b\1\2)", function (c)
+ tinsert(L,c)
+- return "\n#["..getn(L).."]#"
++ return "\n#[".. #L .."]#"
+ end)
+ -- avoid preprocessing embedded C code
+ local C = {}
+@@ -47,14 +47,14 @@
+ self.code = gsub(self.code,"\n%s*%$%>","\4")
+ self.code = gsub(self.code,"(%b\3\4)", function (c)
+ tinsert(C,c)
+- return "\n#<"..getn(C)..">#"
++ return "\n#<".. #C ..">#"
+ end)
+ -- avoid preprocessing embedded C code
+ self.code = gsub(self.code,"\n%s*%$%{","\5") -- deal with embedded C code
+ self.code = gsub(self.code,"\n%s*%$%}","\6")
+ self.code = gsub(self.code,"(%b\5\6)", function (c)
+ tinsert(C,c)
+- return "\n#<"..getn(C)..">#"
++ return "\n#<".. #C..">#"
+ end)
+
+ --self.code = gsub(self.code,"\n%s*#[^d][^\n]*\n", "\n\n") -- eliminate
preprocessor directives that don't start with 'd'
+@@ -64,7 +64,7 @@
+ local V = {}
+ self.code = gsub(self.code,"\n(%s*%$[^%[%]][^\n]*)",function (v)
+ tinsert(V,v)
+- return "\n#"..getn(V).."#"
++ return "\n#".. #V .."#"
+ end)
+
+ -- perform global substitution
+@@ -152,14 +152,14 @@
+ if flags.t then
+ output("#ifndef Mtolua_typeid\n#define
Mtolua_typeid(L,TI,T)\n#endif\n")
+ end
+- foreach(_usertype,function(n,v)
++ for n,v in pairs(_usertype) do
+ if (not _global_classes[v]) or
_global_classes[v]:check_public_access() then
+ output(' tolua_usertype(tolua_S,"',v,'");')
+ if flags.t then
+ output(' Mtolua_typeid(tolua_S,typeid(',v,'),
"',v,'");')
+ end
+ end
+- end)
++ end
+ output('}')
+ output('\n')
+ end
+@@ -288,7 +288,7 @@
+ local t = {code=s}
+ extra = string.gsub(extra, "^%s*,%s*", "")
+ local pars = split_c_tokens(extra, ",")
+- include_file_hook(t, fn, unpack(pars))
++ include_file_hook(t, fn, table.unpack(pars))
+ return "\n\n" .. t.code
+ else
+ error('#Invalid include directive (use
$cfile, $pfile, $lfile or $ifile)')
+@@ -322,7 +322,7 @@
+ table.insert(chunk, string.sub(line, 3) .. "\n")
+ else
+ local last = 1
+- for text, expr, index in string.gfind(line, "(.-)$(%b())()") do
++ for text, expr, index in string.gmatch(line, "(.-)$(%b())()") do
+ last = index
+ if text ~= "" then
+ table.insert(chunk, string.format('table.insert(__ret, %q )',
text))
+@@ -334,10 +334,9 @@
+ end
+ end
+ table.insert(chunk, '\nreturn table.concat(__ret)\n')
+- local f,e = loadstring(table.concat(chunk))
++ local f,e = load(table.concat(chunk), nil, "t", _extra_parameters)
+ if e then
+ error("#"..e)
+ end
+- setfenv(f, _extra_parameters)
+ return f()
+ end
+--- src/bin/lua/template_class.lua.orig
++++ src/bin/lua/template_class.lua
+@@ -22,7 +22,7 @@
+ for i =1 , types.n do
+
+ local Il = split_c_tokens(types[i], " ")
+- if table.getn(Il) ~= table.getn(self.args) then
++ if #Il ~= #self.args then
+ error("#invalid parameter count for "..types[i])
+ end
+ local bI = self.body
+@@ -31,16 +31,16 @@
+ --Tl[j] = findtype(Tl[j]) or Tl[j]
+ bI = string.gsub(bI,
"([^_%w])"..self.args[j].."([^_%w])", "%1"..Il[j].."%2")
+ if self.parents then
+- for i=1,table.getn(self.parents) do
++ for i=1,#self.parents do
+ pI[i] = string.gsub(self.parents[i],
"([^_%w]?)"..self.args[j].."([^_%w]?)", "%1"..Il[j].."%2")
+ end
+ end
+ end
+ --local append = "<"..string.gsub(types[i], "%s+", ",")..">"
+- local append = "<"..concat(Il, 1, table.getn(Il), ",")..">"
++ local append = "<"..concat(Il, 1, #Il, ",")..">"
+ append = string.gsub(append, "%s*,%s*", ",")
+ append = string.gsub(append, ">>", "> >")
+- for i=1,table.getn(pI) do
++ for i=1,#pI do
+ --pI[i] = string.gsub(pI[i], ">>", "> >")
+ pI[i] = resolve_template_types(pI[i])
+ end
+--- src/bin/SCsub.orig
++++ src/bin/SCsub
+@@ -5,8 +5,8 @@
+ ]
+
+
+-toluabind = env.LuaBinding('toluabind.c', 'tolua_scons.pkg', 'tolua',
bootstrap = True)
++#toluabind = env.LuaBinding('toluabind.c', 'tolua_scons.pkg', 'tolua',
bootstrap = True)
+
+-env.bin_target = env.Program('#/bin/'+env['tolua_bin'], src + [toluabind],
LIBS = ['$tolua_lib'] + env['LIBS'])
++env.bin_target = env.Program('#/bin/'+env['tolua_bin'], src, LIBS =
['$tolua_lib'] + env['LIBS'])
+
+ env.bootstrap_target = env.Program('#/bin/'+env['TOLUAPP_BOOTSTRAP'], src +
['toluabind_default.c', env.lib_target_static], LIBS = env['LIBS'])
+--- src/bin/tolua.c.orig
++++ src/bin/tolua.c
+@@ -67,7 +67,11 @@
+ static void add_extra (lua_State* L, char* value) {
+ int len;
+ lua_getglobal(L, "_extra_parameters");
++#if LUA_VERSION_NUM > 501
++ len = lua_rawlen(L, -1);
++#else
+ len = luaL_getn(L, -1);
++#endif
+ lua_pushstring(L, value);
+ lua_rawseti(L, -2, len+1);
+ lua_pop(L, 1);
+@@ -145,7 +149,7 @@
+ }
+ lua_pop(L,1);
+ }
+-/* #define TOLUA_SCRIPT_RUN */
++#define TOLUA_SCRIPT_RUN
+ #ifndef TOLUA_SCRIPT_RUN
+ {
+ int tolua_tolua_open (lua_State* L);
+@@ -153,16 +157,17 @@
+ }
+ #else
+ {
+- char* p;
+- char path[BUFSIZ];
+- strcpy(path,argv[0]);
+- p = strrchr(path,'/');
+- if (p==NULL) p = strrchr(path,'\\');
+- p = (p==NULL) ? path : p+1;
+- sprintf(p,"%s","../src/bin/lua/");
+- lua_pushstring(L,path); lua_setglobal(L,"path");
+- strcat(path,"all.lua");
+- lua_dofile(L,path);
++ lua_pushstring(L, "/usr/share/toluapp/luapp/"); lua_setglobal(L,"path");
++ if (luaL_loadfile(L, "/usr/share/toluapp/luapp/all.lua") != 0) {
++ fprintf(stderr, "luaL_loadfile failed\n");
++ return 1;
++ }
++ if (lua_pcall(L, 0,0,0) != 0) {
++ const char *errmsg = lua_tostring(L, -1);
++ fprintf(stderr, "lua_pcall failed: %s\n", errmsg);
++ lua_pop(L, 1);
++ return 1;
++ }
+ }
+ #endif
+ return 0;
+--- src/lib/tolua_event.c.orig
++++ src/lib/tolua_event.c
+@@ -23,12 +23,20 @@
+ static void storeatubox (lua_State* L, int lo)
+ {
+ #ifdef LUA_VERSION_NUM
++#if LUA_VERSION_NUM > 501
++ lua_getuservalue(L, lo);
++#else
+ lua_getfenv(L, lo);
++#endif
+ if (lua_rawequal(L, -1, TOLUA_NOPEER)) {
+ lua_pop(L, 1);
+ lua_newtable(L);
+ lua_pushvalue(L, -1);
++#if LUA_VERSION_NUM > 501
++ lua_setuservalue(L, lo); /* stack: k,v,table
*/
++#else
+ lua_setfenv(L, lo); /* stack: k,v,table */
++#endif
+ };
+ lua_insert(L, -3);
+ lua_settable(L, -3); /* on lua 5.1, we trade the
"tolua_peers" lookup for a settable call */
+@@ -141,7 +149,11 @@
+ {
+ /* Access alternative table */
+ #ifdef LUA_VERSION_NUM /* new macro on version 5.1 */
++#if LUA_VERSION_NUM > 501
++ lua_getuservalue(L, 1);
++#else
+ lua_getfenv(L,1);
++#endif
+ if (!lua_rawequal(L, -1, TOLUA_NOPEER)) {
+ lua_pushvalue(L, 2); /* key */
+ lua_gettable(L, -2); /* on lua 5.1, we trade the
"tolua_peers" lookup for a gettable call */
+@@ -420,6 +432,8 @@
+ */
+ TOLUA_API int class_gc_event (lua_State* L)
+ {
++ if (lua_type(L,1) == LUA_TUSERDATA)
++ {
+ void* u = *((void**)lua_touserdata(L,1));
+ int top;
+ /*fprintf(stderr, "collecting: looking at %p\n", u);*/
+@@ -427,7 +441,8 @@
+ lua_pushstring(L,"tolua_gc");
+ lua_rawget(L,LUA_REGISTRYINDEX);
+ */
+- lua_pushvalue(L, lua_upvalueindex(1));
++ lua_pushstring(L,"tolua_gc");
++ lua_rawget(L,LUA_REGISTRYINDEX); /* gc */
+ lua_pushlightuserdata(L,u);
+ lua_rawget(L,-2); /* stack: gc umt */
+ lua_getmetatable(L,1); /* stack: gc umt mt */
+@@ -456,6 +471,7 @@
+ lua_rawset(L,-5); /* stack: gc umt mt */
+ }
+ lua_pop(L,3);
++ }
+ return 0;
+ }
+
+--- src/lib/tolua_map.c.orig
++++ src/lib/tolua_map.c
+@@ -262,8 +262,12 @@
+
+ lua_pop(L, 1);
+ lua_pushvalue(L, TOLUA_NOPEER);
+- };
++ }
++#if LUA_VERSION_NUM > 501
++ lua_setuservalue(L, -2);
++#else
+ lua_setfenv(L, -2);
++#endif
+
+ return 0;
+ };
+@@ -271,7 +275,11 @@
+ static int tolua_bnd_getpeer(lua_State* L) {
+
+ /* stack: userdata */
++#if LUA_VERSION_NUM > 501
++ lua_getuservalue(L, -1);
++#else
+ lua_getfenv(L, -1);
++#endif
+ if (lua_rawequal(L, -1, TOLUA_NOPEER)) {
+ lua_pop(L, 1);
+ lua_pushnil(L);
+@@ -411,7 +419,11 @@
+ lua_rawget(L,-2);
+ }
+ else
++#if LUA_VERSION_NUM > 501
++ lua_pushglobaltable(L);
++#else
+ lua_pushvalue(L,LUA_GLOBALSINDEX);
++#endif
+ }
+
+ /* End module
+@@ -445,7 +457,11 @@
+ else
+ {
+ /* global table */
++#if LUA_VERSION_NUM > 501
++ lua_pushglobaltable(L);
++#else
+ lua_pushvalue(L,LUA_GLOBALSINDEX);
++#endif
+ }
+ if (hasvar)
+ {
+@@ -473,7 +489,11 @@
+ else
+ {
+ /* global table */
++#if LUA_VERSION_NUM > 501
++ lua_pushglobaltable(L);
++#else
+ lua_pushvalue(L,LUA_GLOBALSINDEX);
++#endif
+ }
+ if (hasvar)
+ {
+--- src/lib/tolua_push.c.orig
++++ src/lib/tolua_push.c
+@@ -79,7 +79,11 @@
+
+ #ifdef LUA_VERSION_NUM
+ lua_pushvalue(L, TOLUA_NOPEER);
++#if LUA_VERSION_NUM > 501
++ lua_setuservalue(L, -2);
++#else
+ lua_setfenv(L, -2);
++#endif
+ #endif
+ }
+ else
diff --git a/lua-forge/tolua++/tolua++-1.0.93.tar.bz2.sig
b/lua-forge/tolua++/tolua++-1.0.93.tar.bz2.sig
deleted file mode 100644
index b6c4c5a..0000000
Binary files a/lua-forge/tolua++/tolua++-1.0.93.tar.bz2.sig and /dev/null
differ



  • [SM-Commit] GIT changes to master grimoire by Vlad Glagolev (051b98e5f740d2bde3f27a59fd8c7206311a803c), Vlad Glagolev, 05/24/2018

Archive powered by MHonArc 2.6.24.

Top of Page