making the lua stuff compile as c++

otherwise lua-to-bv (bv is c++) callbacks and panic handlers (also in
c++ linkage) would be a mess (class-bound static-methods would be
unusable as callbacks and panic handlers)
gh-pages
Brian Jack 2014-12-08 07:56:25 -08:00
parent 5fa655b88f
commit 36f30712c9
4 changed files with 49 additions and 43 deletions

View File

@ -24,6 +24,9 @@
#include "database.hpp"
#include "queries.hpp"
#include "server.hpp"
#include "lua-5.3.0/lua.h"
#include "lua-5.3.0/lualib.h"
#include "lua-5.3.0/lauxlib.h"
using bvdb::SQLiteDB;
using bvdb::DBIsBusy;
@ -38,13 +41,15 @@ namespace bv {
serverRoot &root;
SQLiteDB &db;
s64 userId;
lua_State *asUser;
protected:
public:
Account(bvnet::session &sess,serverRoot *server,s64 who) :
bvnet::object(sess),
root(*server),
db(server->get_db()),
userId(who) {
userId(who),
asUser(luaL_newstate()) {
LOCK_COUT
cout << "Account [" << this << "] ctor (userid="
@ -70,6 +75,9 @@ namespace bv {
LOCK_COUT
cout << "Account [" << this << "] dtor" << endl;
UNLOCK_COUT
lua_close(asUser);
// logout user
// gobble exceptions since this is a dtor
try {

View File

@ -14,6 +14,7 @@
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-std=c++11" />
<Add option="-g" />
<Add option="-Wall -Wno-unknown-pragmas" />
<Add option="-DPROTOCOL_VERBOSE" />
@ -105,8 +106,7 @@
<Add alias="Release" targets="ClientRelease;ServerRelease;" />
</VirtualTargets>
<Compiler>
<Add option="-std=c++11" />
<Add option="-m32" />
<Add option="-m32 -U__STRICT_ANSI__" />
<Add option="-DBOOST_USE_WIDNOWS_H" />
<Add option="-D_WIN32_WINNT=0x0601" />
<Add directory="auto" />
@ -153,133 +153,127 @@
<Unit filename="docs/universe_sector_and_object_organization-draft.png" />
<Unit filename="gitstamp.bat" />
<Unit filename="lua-5.3.0/lapi.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lapi.h" />
<Unit filename="lua-5.3.0/lauxlib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lauxlib.h" />
<Unit filename="lua-5.3.0/lbaselib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lbitlib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lcode.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lcode.h" />
<Unit filename="lua-5.3.0/lcorolib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lctype.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lctype.h" />
<Unit filename="lua-5.3.0/ldblib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/ldebug.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/ldebug.h" />
<Unit filename="lua-5.3.0/ldo.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/ldo.h" />
<Unit filename="lua-5.3.0/ldump.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lfunc.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lfunc.h" />
<Unit filename="lua-5.3.0/lgc.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lgc.h" />
<Unit filename="lua-5.3.0/linit.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/liolib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/llex.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/llex.h" />
<Unit filename="lua-5.3.0/llimits.h" />
<Unit filename="lua-5.3.0/lmathlib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lmem.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lmem.h" />
<Unit filename="lua-5.3.0/loadlib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lobject.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lobject.h" />
<Unit filename="lua-5.3.0/lopcodes.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lopcodes.h" />
<Unit filename="lua-5.3.0/loslib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lparser.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lparser.h" />
<Unit filename="lua-5.3.0/lstate.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lstate.h" />
<Unit filename="lua-5.3.0/lstring.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lstring.h" />
<Unit filename="lua-5.3.0/lstrlib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/ltable.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/ltable.h" />
<Unit filename="lua-5.3.0/ltablib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/ltm.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/ltm.h" />
<Unit filename="lua-5.3.0/lua.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="lua-5.3.0/lua.h" />
<Unit filename="lua-5.3.0/lua.hpp" />
<Unit filename="lua-5.3.0/luac.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="lua-5.3.0/luaconf.h" />
<Unit filename="lua-5.3.0/lualib.h" />
<Unit filename="lua-5.3.0/lundump.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lundump.h" />
<Unit filename="lua-5.3.0/lutf8lib.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lvm.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lvm.h" />
<Unit filename="lua-5.3.0/lzio.c">
<Option compilerVar="CC" />
<Option compilerVar="CPP" />
</Unit>
<Unit filename="lua-5.3.0/lzio.h" />
<Unit filename="main.cpp">

View File

@ -517,7 +517,7 @@ static lu_mem traversethread (global_State *g, lua_State *th) {
StkId lim = th->stack + th->stacksize; /* real end of stack */
for (; o < lim; o++) /* clear not-marked stack slice */
setnilvalue(o);
/* 'remarkupvals' may have removed thread from 'twups' list */
/* 'remarkupvals' may have removed thread from 'twups' list */
if (!isintwups(th) && th->openupval != NULL) {
th->twups = g->twups; /* link it back to the list */
g->twups = th;

View File

@ -8,9 +8,13 @@
#ifndef lconfig_h
#define lconfig_h
// Blockiverse modification in order to have
// configuration do the right thing under MINGW
#ifdef _WIN32_WINNT
#ifndef _WIN32
#define _WIN32
#endif
#endif
/*
** ==================================================================