Fix Lua examples for running under Lua 5.2
Includes cherry picking parts of
ce2760f77e
This commit is contained in:
parent
0ed98c0606
commit
bf313809ae
6 changed files with 26 additions and 11 deletions
|
|
@ -4,6 +4,7 @@ TARGET = embed2
|
|||
SRCS = example.c
|
||||
INTERFACE = example.i
|
||||
LUA_INTERP = embed2.c
|
||||
LIBS = -lm
|
||||
|
||||
# this is a little different to normal as we have our own special interpreter
|
||||
# which we want to static link
|
||||
|
|
@ -12,7 +13,7 @@ check: build
|
|||
|
||||
build:
|
||||
$(MAKE) -f $(TOP)/Makefile $(SWIGLIB) SRCS='$(SRCS)' SWIG='$(SWIG)' \
|
||||
SWIGOPT='$(SWIGOPT)' TARGET='$(TARGET)' INTERFACE='example.i' LUA_INTERP='$(LUA_INTERP)' lua_static
|
||||
SWIGOPT='$(SWIGOPT)' TARGET='$(TARGET)' LIBS='$(LIBS)' INTERFACE='example.i' LUA_INTERP='$(LUA_INTERP)' lua_static
|
||||
|
||||
clean:
|
||||
$(MAKE) -f $(TOP)/Makefile lua_clean
|
||||
|
|
|
|||
|
|
@ -31,6 +31,9 @@ We will be using the luaL_dostring()/lua_dostring() function to call into lua
|
|||
#include <stdarg.h>
|
||||
#include <string.h>
|
||||
|
||||
#if LUA_VERSION_NUM > 501
|
||||
#define lua_open luaL_newstate
|
||||
#endif
|
||||
|
||||
/* the SWIG wrappered library */
|
||||
extern int luaopen_example(lua_State*L);
|
||||
|
|
@ -46,8 +49,7 @@ int call_add(lua_State *L,int a,int b,int* res) {
|
|||
push a, push b, call 'add' check & return res
|
||||
*/
|
||||
top=lua_gettop(L); /* for later */
|
||||
lua_pushstring(L, "add"); /* function name */
|
||||
lua_gettable(L, LUA_GLOBALSINDEX); /* function to be called */
|
||||
lua_getglobal(L, "add"); /* function to be called */
|
||||
if (!lua_isfunction(L,-1)) {
|
||||
printf("[C] error: cannot find function 'add'\n");
|
||||
lua_settop(L,top); // reset
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue