From 4a4b43fa3cf1bd379ee1eb53223d63fa0358bcc5 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Sun, 28 Sep 2014 17:12:59 +0200 Subject: some lua work --- include/luaglue/LuaVM.hpp | 19 +++++++++++++++++++ src/GNUmakefile | 11 ++++++++--- src/Makefile.W32 | 3 ++- src/crawl/GNUmakefile | 8 +++++--- src/crawl/Makefile.W32 | 6 ++++-- src/crawl/crawl.cpp | 4 ++++ src/libluaglue/LuaVM.cpp | 16 ++++++++++++++++ 7 files changed, 58 insertions(+), 9 deletions(-) create mode 100755 include/luaglue/LuaVM.hpp create mode 100644 src/libluaglue/LuaVM.cpp diff --git a/include/luaglue/LuaVM.hpp b/include/luaglue/LuaVM.hpp new file mode 100755 index 0000000..7449b3f --- /dev/null +++ b/include/luaglue/LuaVM.hpp @@ -0,0 +1,19 @@ +#ifndef __LUA_VM_H +#define __LUA_VM_H + +#include "lua.hpp" + +class LuaVM +{ + public: + LuaVM( ); + ~LuaVM( ); + + private: + void initialize( ); + + private: + lua_State *m_lua; +}; + +#endif diff --git a/src/GNUmakefile b/src/GNUmakefile index 2a8968a..a29d3a7 100755 --- a/src/GNUmakefile +++ b/src/GNUmakefile @@ -1,6 +1,6 @@ TOPDIR = .. -SUBDIRS = libutil liblogger libcrawler modules crawl +SUBDIRS = libutil liblogger libcrawler libluaglue modules crawl -include $(TOPDIR)/makefiles/gmake/sub.mk @@ -17,9 +17,11 @@ local_uninstall: local_test: MEMCHECK=valgrind -v --leak-check=full --show-reachable=yes --num-callers=50 --suppressions=${HOME}/.valgrind-suppressions +MEMCHECKLEARN=$(MEMCHECK) --gen-suppressions=all + PERFCHECK=${HOME}/scripts/qcachegrind.sh -LD_LIBRARY_PATH=$(TOPDIR)/src:$(TOPDIR)/src/libutil:$(TOPDIR)/src/liblogger:$(TOPDIR)/src/libcrawler:$(TOPDIR)/googleurl:$(TOPDIR)/libfetch:$(TOPDIR)/streamhtmlparser +LD_LIBRARY_PATH=$(TOPDIR)/src:$(TOPDIR)/src/libutil:$(TOPDIR)/src/liblogger:$(TOPDIR)/src/libcrawler:$(TOPDIR)/googleurl:$(TOPDIR)/libfetch:$(TOPDIR)/streamhtmlparser:$(TOPDIR)/src/libluaglue run: @LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) $(TOPDIR)/src/crawl/crawl @@ -27,9 +29,12 @@ run: runmemcheck: @LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) $(MEMCHECK) $(TOPDIR)/src/crawl/crawl +runmemchecklearn: + @LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) $(MEMCHECKLEARN) $(TOPDIR)/src/crawl/crawl + runmemcheckgui: @LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) valkyrie $(TOPDIR)/src/crawl/crawl runperfcheck: LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) $(PERFCHECK) $(TOPDIR)/src/crawl/crawl - \ No newline at end of file + diff --git a/src/Makefile.W32 b/src/Makefile.W32 index 6845288..386a857 100755 --- a/src/Makefile.W32 +++ b/src/Makefile.W32 @@ -1,6 +1,6 @@ TOPDIR = .. -SUBDIRS = libutil liblogger libcrawler modules crawl +SUBDIRS = libutil liblogger libcrawler libluaglue modules crawl !INCLUDE $(TOPDIR)\makefiles\nmake\sub.mk @@ -18,6 +18,7 @@ copy_prereq: @-copy "$(TOPDIR)\src\libutil\util.dll" . >NUL @-copy "$(TOPDIR)\src\liblogger\logger.dll" . >NUL @-copy "$(TOPDIR)\src\libcrawler\crawler.dll" . >NUL + @-copy "$(TOPDIR)\src\libluaglue\luaglue.dll" . >NUL run: copy_prereq @-crawl\crawl.exe diff --git a/src/crawl/GNUmakefile b/src/crawl/GNUmakefile index cda7513..f664f0d 100755 --- a/src/crawl/GNUmakefile +++ b/src/crawl/GNUmakefile @@ -11,15 +11,17 @@ INCLUDE_DIRS = \ -I$(TOPDIR)/include/logger \ -I$(TOPDIR)/include/util \ -I$(TOPDIR)/include/module \ - -I$(TOPDIR)/include/crawler + -I$(TOPDIR)/include/crawler \ + -I$(TOPDIR)/include/luaglue INCLUDE_LDFLAGS = \ -L$(TOPDIR)/src/liblogger \ -L$(TOPDIR)/src/libcrawler \ - -L$(TOPDIR)/src/libutil + -L$(TOPDIR)/src/libutil \ + -L$(TOPDIR)/src/libluaglue INCLUDE_LIBS = \ - -llogger -lcrawler -lutil + -llogger -lcrawler -lutil -lluaglue -llua # openssl ifeq ($(WITH_SSL),1) diff --git a/src/crawl/Makefile.W32 b/src/crawl/Makefile.W32 index f4f6e82..6ab255c 100755 --- a/src/crawl/Makefile.W32 +++ b/src/crawl/Makefile.W32 @@ -13,14 +13,16 @@ INCLUDE_DIRS = \ /I$(TOPDIR)\include\logger \ /I$(TOPDIR)\include\module \ /I$(TOPDIR)\include\util \ - /I$(TOPDIR)\include\crawler + /I$(TOPDIR)\include\crawler \ + /I$(TOPDIR)\include\luaglue INCLUDE_LDFLAGS = \ INCLUDE_LIBS = \ $(TOPDIR)\src\libutil\util.lib \ $(TOPDIR)\src\liblogger\logger.lib \ - $(TOPDIR)\src\libcrawler\crawler.lib + $(TOPDIR)\src\libcrawler\crawler.lib \ + $(TOPDIR)\src\libluaglue\luaglue.lib CPP_OBJS = \ diff --git a/src/crawl/crawl.cpp b/src/crawl/crawl.cpp index f4d8992..947976f 100755 --- a/src/crawl/crawl.cpp +++ b/src/crawl/crawl.cpp @@ -11,6 +11,8 @@ #include "Logger.hpp" +#include "LuaVM.hpp" + #include #include #include @@ -56,6 +58,8 @@ BOOL WINAPI termHandler( DWORD ctrlType ) int main( void ) { try { + LuaVM luaVm; + // Logger::instance( ).openConsoleLog( logINFO ); Logger::instance( ).openConsoleLog( logDEBUG ); diff --git a/src/libluaglue/LuaVM.cpp b/src/libluaglue/LuaVM.cpp new file mode 100644 index 0000000..f268823 --- /dev/null +++ b/src/libluaglue/LuaVM.cpp @@ -0,0 +1,16 @@ +#include "LuaVM.hpp" + +LuaVM::LuaVM( ) +{ + initialize( ); +} + +LuaVM::~LuaVM( ) +{ + lua_close( m_lua ); +} + +void LuaVM::initialize( ) +{ + m_lua = luaL_newstate( ); +} -- cgit v1.2.3-54-g00ecf