reswig:
rm -f switch_swig_wrap.cpp
- swig -java -c++ -I../../../include -package org.freeswitch.swig -outdir src/org/freeswitch/swig -o switch_swig_wrap.cpp mod_java.i
+ swig2.0 -java -c++ -I../../../include -package org.freeswitch.swig -outdir src/org/freeswitch/swig -o switch_swig_wrap.cpp mod_java.i
install-data-local:
cp freeswitch.jar $(DESTDIR)@scriptdir@
rm -f mod_lua_wrap.*
lua_wrap: mod_lua_extra.c
- swig -lua -c++ -I../../../../src/include -oh mod_lua_wrap.h -o mod_lua_wrap.cpp freeswitch.i
+ swig2.0 -lua -c++ -I../../../../src/include -oh mod_lua_wrap.h -o mod_lua_wrap.cpp freeswitch.i
echo "#include \"mod_lua_extra.c\"" >> mod_lua_wrap.cpp
patch -s -p0 -i hack.diff
---- mod_lua_wrap.cpp.orig 2014-09-06 19:25:05.000000000 +0800
-+++ mod_lua_wrap.cpp 2014-09-06 19:27:17.000000000 +0800
-@@ -2799,7 +2799,7 @@
+--- mod_lua_wrap.cpp.old 2015-06-16 12:27:19.024000000 -0500
++++ mod_lua_wrap.cpp 2015-06-16 12:34:51.540000000 -0500
+@@ -3065,7 +3065,7 @@
+ }
result = (char *)(arg1)->read(arg2);
- SWIG_arg=0;
-- lua_pushstring(L,(const char*)result); SWIG_arg++;
+- lua_pushstring(L,(const char *)result); SWIG_arg++;
+ lua_pushlstring(L,(const char*)result, (*arg2)); SWIG_arg++;
lua_pushnumber(L, (lua_Number) *arg2); SWIG_arg++;
return SWIG_arg;
-@@ -6750,7 +6750,7 @@
- SWIG_check_num_args("LUA::Session",0,0)
+@@ -6855,7 +6855,7 @@
+
+ SWIG_check_num_args("LUA::Session::Session",0,0)
result = (LUA::Session *)new LUA::Session();
- SWIG_arg=0;
- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
return SWIG_arg;
if(0) SWIG_fail;
-@@ -6778,7 +6778,7 @@
+@@ -6882,7 +6882,7 @@
+ }
result = (LUA::Session *)new LUA::Session(arg1,arg2);
- SWIG_arg=0;
- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
-+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
++ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
return SWIG_arg;
if(0) SWIG_fail;
-@@ -6799,7 +6799,7 @@
+@@ -6902,7 +6902,7 @@
+ if(!SWIG_lua_isnilstring(L,1)) SWIG_fail_arg("LUA::Session::Session",1,"char *");
arg1 = (char *)lua_tostring(L, 1);
result = (LUA::Session *)new LUA::Session(arg1);
- SWIG_arg=0;
- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
-+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
++ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
return SWIG_arg;
if(0) SWIG_fail;
-@@ -6824,7 +6824,7 @@
+@@ -6926,7 +6926,7 @@
+ }
result = (LUA::Session *)new LUA::Session(arg1);
- SWIG_arg=0;
- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
-+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
++ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
return SWIG_arg;
if(0) SWIG_fail;
-@@ -8236,7 +8236,7 @@
- }
- #endif
-
--static const struct luaL_reg swig_commands[] = {
-+static const struct luaL_Reg swig_commands[] = {
- { "setGlobalVariable", _wrap_setGlobalVariable},
- { "getGlobalVariable", _wrap_getGlobalVariable},
- { "consoleLog", _wrap_consoleLog},
-@@ -8654,7 +8654,7 @@
- {
- int i;
- /* start with global table */
-- lua_pushvalue(L,LUA_GLOBALSINDEX);
-+ lua_pushglobaltable(L);
- /* SWIG's internal initalisation */
- SWIG_InitializeModule((void*)L);
- SWIG_PropagateClientData();
}
result = (char *)(arg1)->read(arg2);
- lua_pushstring(L,(const char *)result); SWIG_arg++;
+ lua_pushlstring(L,(const char*)result, (*arg2)); SWIG_arg++;
lua_pushnumber(L, (lua_Number) *arg2); SWIG_arg++;
return SWIG_arg;
SWIG_check_num_args("LUA::Session::Session",0,0)
result = (LUA::Session *)new LUA::Session();
- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
return SWIG_arg;
if(0) SWIG_fail;
}
result = (LUA::Session *)new LUA::Session(arg1,arg2);
- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
return SWIG_arg;
if(0) SWIG_fail;
if(!SWIG_lua_isnilstring(L,1)) SWIG_fail_arg("LUA::Session::Session",1,"char *");
arg1 = (char *)lua_tostring(L, 1);
result = (LUA::Session *)new LUA::Session(arg1);
- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
return SWIG_arg;
if(0) SWIG_fail;
}
result = (LUA::Session *)new LUA::Session(arg1);
- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
return SWIG_arg;
if(0) SWIG_fail;
rm -f mod_perl_wrap.* freeswitch.so freeswitch.pm
mod_perl_wrap.cpp:
- swig -static -shadow -perl5 -c++ -DMULTIPLICITY -I../../../../src/include -o mod_perl_wrap.cpp freeswitch.i
+ swig2.0 -static -shadow -perl5 -c++ -DMULTIPLICITY -I../../../../src/include -o mod_perl_wrap.cpp freeswitch.i
echo "#include \"mod_perl_extra.c\"" >> mod_perl_wrap.cpp
patch -s -p0 -i hack.diff
--- /dev/null
+--- mod_perl_wrap.cpp.old 2015-06-16 11:43:04.120000000 -0500
++++ mod_perl_wrap.cpp 2015-06-16 11:43:54.704000000 -0500
+@@ -8710,13 +8711,18 @@
+ {
+ int argvi = 0;
+ PERL::Session *result = 0 ;
++ SV *foo;
+ dXSARGS;
+
+ if ((items < 0) || (items > 0)) {
+ SWIG_croak("Usage: new_Session();");
+ }
+ result = (PERL::Session *)new PERL::Session();
+- ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
++ result->setPERL(my_perl);
++ foo = sv_newmortal();
++ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
++ result->setME(foo);
++ ST(argvi) = foo; argvi++ ;
+ XSRETURN(argvi);
+ fail:
+ SWIG_croak_null();
+@@ -8735,6 +8741,7 @@
+ int res2 = 0 ;
+ int argvi = 0;
+ PERL::Session *result = 0 ;
++ SV *foo;
+ dXSARGS;
+
+ if ((items < 2) || (items > 2)) {
+@@ -8751,7 +8758,16 @@
+ }
+ arg2 = reinterpret_cast< CoreSession * >(argp2);
+ result = (PERL::Session *)new PERL::Session(arg1,arg2);
+- ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
++ if (result->allocated) {
++ result->setPERL(my_perl);
++ foo = get_sv(result->suuid, TRUE);
++ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
++ result->setME(foo);
++ } else {
++ foo = sv_newmortal();
++ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
++ }
++ ST(argvi) = foo; argvi++ ;
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+
+ XSRETURN(argvi);
+@@ -8771,6 +8787,7 @@
+ int alloc1 = 0 ;
+ int argvi = 0;
+ PERL::Session *result = 0 ;
++ SV *foo;
+ dXSARGS;
+
+ if ((items < 1) || (items > 1)) {
+@@ -8781,8 +8798,18 @@
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_Session" "', argument " "1"" of type '" "char *""'");
+ }
+ arg1 = reinterpret_cast< char * >(buf1);
+- result = (PERL::Session *)new PERL::Session(arg1);
+- ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
++ result = (PERL::Session *)new PERL::Session(arg1);
++ if (result->allocated) {
++ result->setPERL(my_perl);
++ foo = get_sv(result->suuid, TRUE);
++ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
++ result->setME(foo);
++ } else {
++ foo = sv_newmortal();
++ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
++ }
++ ST(argvi) = foo; argvi++ ;
++
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+ XSRETURN(argvi);
+ fail:
+@@ -8799,6 +8826,8 @@
+ int res1 = 0 ;
+ int argvi = 0;
+ PERL::Session *result = 0 ;
++ SV *foo;
++
+ dXSARGS;
+
+ if ((items < 1) || (items > 1)) {
+@@ -8810,7 +8839,18 @@
+ }
+ arg1 = reinterpret_cast< switch_core_session_t * >(argp1);
+ result = (PERL::Session *)new PERL::Session(arg1);
+- ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
++ if (result->allocated) {
++ result->setPERL(my_perl);
++ foo = get_sv(result->suuid, TRUE);
++ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
++ result->setME(foo);
++ } else {
++ foo = sv_newmortal();
++ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
++ }
++
++ ST(argvi) = foo; argvi++ ;
++
+
+ XSRETURN(argvi);
+ fail:
---- mod_perl_wrap.cpp.old 2015-06-16 12:01:31.832000000 -0500
-+++ mod_perl_wrap.cpp 2015-06-16 12:01:38.996000000 -0500
+--- mod_perl_wrap.cpp.old 2015-06-16 12:37:32.612000000 -0500
++++ mod_perl_wrap.cpp 2015-06-16 12:37:40.328000000 -0500
@@ -8710,13 +8710,18 @@
{
int argvi = 0;