Reworking a lot of stuff at once, this will look very chaotic.

This commit is contained in:
KimLS 2014-07-14 15:09:55 -07:00
parent 9e3e8dbfa6
commit 80892f1d4d
122 changed files with 185 additions and 71 deletions

View File

@ -105,12 +105,6 @@ IF(UNIX)
ENDIF(CMAKE_SYSTEM_NAME MATCHES "Darwin")
ENDIF(UNIX)
#use stdint.h types if they exist for this platform (we have to guess otherwise)
CHECK_INCLUDE_FILES(stdint.h HAVE_STDINT_H)
IF(HAVE_STDINT_H)
ADD_DEFINITIONS(-DEQEMU_USE_STDINT)
ENDIF(HAVE_STDINT_H)
#debug level, 5 is default. Most people wont ever change this but it's there if you want to
SET(EQEMU_DEBUG_LEVEL 5 CACHE STRING "EQEmu debug level:
0 - Quiet mode Errors to file Status and Normal ignored
@ -231,7 +225,7 @@ OPTION(EQEMU_BUILD_SERVER "Build the game server." ON)
OPTION(EQEMU_BUILD_LOGIN "Build the login server." OFF)
OPTION(EQEMU_BUILD_TESTS "Build utility tests." OFF)
OPTION(EQEMU_BUILD_PERL "Build Perl parser." ON)
OPTION(EQEMU_BUILD_LUA "Build Lua parser." OFF)
OPTION(EQEMU_BUILD_LUA "Build Lua parser." ON)
OPTION(EQEMU_BUILD_CLIENT_FILES "Build Client Inport/Export Data Programs." ON)
#C++11 stuff
@ -289,7 +283,7 @@ IF(EQEMU_BUILD_LUA)
SET(BOOST_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/dependencies/boost")
FIND_PACKAGE(Boost REQUIRED)
INCLUDE_DIRECTORIES("${LUA_INCLUDE_DIR}" "${Boost_INCLUDE_DIRS}" "luabind")
INCLUDE_DIRECTORIES("${LUA_INCLUDE_DIR}" "${Boost_INCLUDE_DIRS}" "dependencies/luabind")
OPTION(EQEMU_SANITIZE_LUA_LIBS "Sanitize Lua Libraries (Remove OS and IO standard libraries from being able to run)." ON)
IF(EQEMU_SANITIZE_LUA_LIBS)
@ -299,10 +293,6 @@ ENDIF(EQEMU_BUILD_LUA)
INCLUDE_DIRECTORIES("${ZLIB_INCLUDE_DIRS}" "${MySQL_INCLUDE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/common/glm/glm")
IF(EQEMU_BUILD_LUA)
ADD_SUBDIRECTORY(luabind)
ENDIF(EQEMU_BUILD_LUA)
IF(EQEMU_BUILD_SERVER OR EQEMU_BUILD_LOGIN OR EQEMU_BUILD_TESTS)
ADD_SUBDIRECTORY(common)
ENDIF(EQEMU_BUILD_SERVER OR EQEMU_BUILD_LOGIN OR EQEMU_BUILD_TESTS)
@ -312,8 +302,9 @@ IF(EQEMU_BUILD_SERVER)
ADD_SUBDIRECTORY(zone)
ADD_SUBDIRECTORY(ucs)
ADD_SUBDIRECTORY(queryserv)
ADD_SUBDIRECTORY(web_interface)
ADD_SUBDIRECTORY(eqlaunch)
ADD_SUBDIRECTORY(dependencies)
ADD_SUBDIRECTORY(web_interface)
ENDIF(EQEMU_BUILD_SERVER)
IF(EQEMU_BUILD_LOGIN)
ADD_SUBDIRECTORY(loginserver)

View File

@ -11,7 +11,7 @@ ADD_EXECUTABLE(export_client_files ${export_sources} ${export_headers})
INSTALL(TARGETS export_client_files RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX})
TARGET_LINK_LIBRARIES(export_client_files Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY})
TARGET_LINK_LIBRARIES(export_client_files common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY})
IF(MSVC)
SET_TARGET_PROPERTIES(export_client_files PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF")
@ -33,4 +33,4 @@ IF(UNIX)
ADD_DEFINITIONS(-fPIC)
ENDIF(UNIX)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)

View File

@ -11,7 +11,7 @@ ADD_EXECUTABLE(import_client_files ${import_sources} ${import_headers})
INSTALL(TARGETS import_client_files RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX})
TARGET_LINK_LIBRARIES(import_client_files Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY})
TARGET_LINK_LIBRARIES(import_client_files common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY})
IF(MSVC)
SET_TARGET_PROPERTIES(import_client_files PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF")
@ -33,4 +33,4 @@ IF(UNIX)
ADD_DEFINITIONS(-fPIC)
ENDIF(UNIX)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)

View File

@ -315,11 +315,11 @@ SOURCE_GROUP(TinyXML FILES
INCLUDE_DIRECTORIES(Patches SocketLib StackWalker TinyXML)
ADD_LIBRARY(Common ${common_sources} ${common_headers})
ADD_LIBRARY(common ${common_sources} ${common_headers})
IF(UNIX)
ADD_DEFINITIONS(-fPIC)
SET_SOURCE_FILES_PROPERTIES("patches/SoD.cpp" "patches/SoF.cpp" "patches/RoF.cpp" "patches/Underfoot.cpp" PROPERTIES COMPILE_FLAGS -O0)
ENDIF(UNIX)
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin)
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)

View File

@ -26,7 +26,7 @@ EQEmuConfig *EQEmuConfig::_config = nullptr;
void EQEmuConfig::do_world(TiXmlElement *ele) {
const char *text;
TiXmlElement * sub_ele;;
TiXmlElement * sub_ele;
text= ParseTextBlock(ele,"shortname");
if (text)
@ -217,6 +217,27 @@ void EQEmuConfig::do_qsdatabase(TiXmlElement *ele) {
QSDatabaseDB=text;
}
void EQEmuConfig::do_web_interface(TiXmlElement *ele) {
const char *text;
text = ParseTextBlock(ele, "port", true);
if (text)
WebInterfacePort = atoi(text);
text = ParseTextBlock(ele, "cert", true);
if (text)
WebInterfaceCert = text;
text = ParseTextBlock(ele, "priv_key", true);
if (text)
WebInterfacePrivKey = text;
TiXmlElement *sub_ele = ele->FirstChildElement("ssl");
if (sub_ele != nullptr) {
WebInterfaceUseSSL = true;
}
}
void EQEmuConfig::do_zones(TiXmlElement *ele) {
const char *text;
TiXmlElement *sub_ele;
@ -372,6 +393,14 @@ std::string EQEmuConfig::GetByName(const std::string &var_name) const {
return(QSDatabaseDB);
if(var_name == "QSDatabasePort")
return(itoa(QSDatabasePort));
if (var_name == "WebInterfacePort")
return(itoa(WebInterfacePort));
if (var_name == "WebInterfaceUseSSL")
return(itoa(WebInterfaceUseSSL));
if (var_name == "WebInterfaceCert")
return(WebInterfaceCert);
if (var_name == "WebInterfacePrivKey")
return(WebInterfacePrivKey);
if(var_name == "SpellsFile")
return(SpellsFile);
if(var_name == "OpCodesFile")
@ -433,6 +462,10 @@ void EQEmuConfig::Dump() const
std::cout << "QSDatabasePassword = " << QSDatabasePassword << std::endl;
std::cout << "QSDatabaseDB = " << QSDatabaseDB << std::endl;
std::cout << "QSDatabasePort = " << QSDatabasePort << std::endl;
std::cout << "WebInterfacePort = " << WebInterfacePort << std::endl;
std::cout << "WebInterfaceUseSSL = " << WebInterfaceUseSSL << std::endl;
std::cout << "WebInterfaceCert = " << WebInterfaceCert << std::endl;
std::cout << "WebInterfacePrivKey = " << WebInterfacePrivKey << std::endl;
std::cout << "SpellsFile = " << SpellsFile << std::endl;
std::cout << "OpCodesFile = " << OpCodesFile << std::endl;
std::cout << "EQTimeFile = " << EQTimeFile << std::endl;
@ -443,6 +476,5 @@ void EQEmuConfig::Dump() const
std::cout << "ZonePortLow = " << ZonePortLow << std::endl;
std::cout << "ZonePortHigh = " << ZonePortHigh << std::endl;
std::cout << "DefaultStatus = " << (int)DefaultStatus << std::endl;
// std::cout << "DynamicCount = " << DynamicCount << std::endl;
}

View File

@ -75,6 +75,12 @@ public:
std::string QSDatabaseDB;
uint16 QSDatabasePort;
// from <web_interface>
uint16 WebInterfacePort;
bool WebInterfaceUseSSL;
std::string WebInterfaceCert;
std::string WebInterfacePrivKey;
// From <files/>
std::string SpellsFile;
std::string OpCodesFile;
@ -158,6 +164,12 @@ protected:
QSDatabasePassword="eq";
QSDatabaseDB="eq";
// web_interface
WebInterfacePort = 9081;
WebInterfaceUseSSL = false;
WebInterfaceCert = "";
WebInterfacePrivKey = "";
// Files
SpellsFile="spells_us.txt";
OpCodesFile="opcodes.conf";

View File

@ -4,6 +4,7 @@ ELEMENT(mailserver)
ELEMENT(zones)
ELEMENT(database)
ELEMENT(qsdatabase)
ELEMENT(web_interface)
ELEMENT(files)
ELEMENT(directories)
ELEMENT(launcher)

View File

@ -18,7 +18,6 @@
#ifndef TYPES_H
#define TYPES_H
#ifdef EQEMU_USE_STDINT
#include <stdint.h>
typedef uint8_t byte;
typedef uint8_t uint8;
@ -29,29 +28,6 @@ typedef int8_t int8;
typedef int16_t int16;
typedef int32_t int32;
typedef int64_t int64;
#else
typedef unsigned char byte;
typedef unsigned char uint8;
typedef signed char int8;
typedef unsigned short uint16;
typedef signed short int16;
typedef unsigned int uint32;
typedef signed int int32;
#ifdef _WINDOWS
#if defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64
typedef unsigned __int64 uint64;
typedef unsigned __int64 uint64;
typedef signed __int64 int64;
#else
#error __int64 not supported
#endif
#else
typedef unsigned long long uint64;
typedef unsigned long long uint64;
typedef signed long long int64;
#endif
#endif
#ifdef _WINDOWS
#pragma warning( disable : 4200 )

View File

@ -1,2 +1,8 @@
*.*
*
boost/
luaj_x86/
luaj_x64/
mysql_x86/
mysql_x64/
zlib_x86/
zlib_x64/
cyassl/

6
dependencies/CMakeLists.txt vendored Normal file
View File

@ -0,0 +1,6 @@
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
IF(EQEMU_BUILD_LUA)
ADD_SUBDIRECTORY(luabind)
ENDIF(EQEMU_BUILD_LUA)

View File

@ -31,4 +31,4 @@ IF(UNIX)
ADD_DEFINITIONS(-fPIC)
ENDIF(UNIX)
SET(LIBRARY_OUTPUT_PATH ../Bin)
SET(LIBRARY_OUTPUT_PATH ../../bin)

Some files were not shown because too many files have changed in this diff Show More