1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-04-15 11:46:56 +02:00

exclude some code similar to android

This commit is contained in:
Andrey Filipenkov 2021-03-02 06:56:57 +03:00
parent 8249171066
commit c4233ad706
3 changed files with 25 additions and 19 deletions

View File

@ -170,7 +170,7 @@ int main(int argc, char * argv[])
setenv("LANG", "C", 1);
#endif
#ifndef VCMI_ANDROID
#if !defined(VCMI_ANDROID) && !defined(VCMI_IOS)
// Correct working dir executable folder (not bundle folder) so we can use executable relative paths
boost::filesystem::current_path(boost::filesystem::system_complete(argv[0]).parent_path());
#endif

View File

@ -21,10 +21,12 @@
#include "mainmenu/CMainMenu.h"
#ifndef VCMI_ANDROID
#include "../lib/Interprocess.h"
#else
#ifdef VCMI_ANDROID
#include "../lib/CAndroidVMHelper.h"
#elif defined(VCMI_IOS)
//TODO
#else
#include "../lib/Interprocess.h"
#endif
#include "../lib/CConfigHandler.h"
#include "../lib/CGeneralTextHandler.h"
@ -132,7 +134,7 @@ void CServerHandler::resetStateForLobby(const StartInfo::EMode mode, const std::
else
myNames.push_back(settings["general"]["playerName"].String());
#ifndef VCMI_ANDROID
#if !defined(VCMI_ANDROID) && !defined(VCMI_IOS)
shm.reset();
if(!settings["session"]["disable-shm"].Bool())
@ -181,6 +183,8 @@ void CServerHandler::startLocalServerAndConnect()
CAndroidVMHelper envHelper;
envHelper.callStaticVoidMethod(CAndroidVMHelper::NATIVE_METHODS_DEFAULT_CLASS, "startServer", true);
}
#elif defined(VCMI_IOS)
// TODO
#else
threadRunLocalServer = std::make_shared<boost::thread>(&CServerHandler::threadRunServer, this); //runs server executable;
#endif
@ -188,10 +192,7 @@ void CServerHandler::startLocalServerAndConnect()
th->update();
#ifndef VCMI_ANDROID
if(shm)
shm->sr->waitTillReady();
#else
#ifdef VCMI_ANDROID
logNetwork->info("waiting for server");
while(!androidTestServerReadyFlag.load())
{
@ -200,12 +201,17 @@ void CServerHandler::startLocalServerAndConnect()
}
logNetwork->info("waiting for server finished...");
androidTestServerReadyFlag = false;
#elif defined(VCMI_IOS)
//TODO
#else
if(shm)
shm->sr->waitTillReady();
#endif
logNetwork->trace("Waiting for server: %d ms", th->getDiff());
th->update(); //put breakpoint here to attach to server before it does something stupid
#ifndef VCMI_ANDROID
#if !defined(VCMI_ANDROID) && !defined(VCMI_IOS)
justConnectToServer(settings["server"]["server"].String(), shm ? shm->sr->port : 0);
#else
justConnectToServer(settings["server"]["server"].String());

View File

@ -29,6 +29,8 @@
#include "../lib/rmg/CMapGenOptions.h"
#ifdef VCMI_ANDROID
#include "lib/CAndroidVMHelper.h"
#elif defined(VCMI_IOS)
//TODO
#else
#include "../lib/Interprocess.h"
#endif
@ -55,7 +57,7 @@
#include "../lib/CGameState.h"
#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(VCMI_ANDROID)
#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(VCMI_ANDROID) && !defined(VCMI_IOS)
#include <execinfo.h>
#endif
@ -157,7 +159,7 @@ void CVCMIServer::run()
if(!restartGameplay)
{
this->announceLobbyThread = vstd::make_unique<boost::thread>(&CVCMIServer::threadAnnounceLobby, this);
#ifndef VCMI_ANDROID
#if !defined(VCMI_ANDROID) && !defined(VCMI_IOS)
if(cmdLineOptions.count("enable-shm"))
{
std::string sharedMemoryName = "vcmi_memory";
@ -171,14 +173,11 @@ void CVCMIServer::run()
startAsyncAccept();
#ifndef VCMI_ANDROID
#if !defined(VCMI_ANDROID) && !defined(VCMI_IOS)
if(shm)
{
shm->sr->setToReadyAndNotify(port);
}
#else
CAndroidVMHelper vmHelper;
vmHelper.callStaticVoidMethod(CAndroidVMHelper::NATIVE_METHODS_DEFAULT_CLASS, "onServerReady");
#endif
}
@ -829,7 +828,7 @@ ui8 CVCMIServer::getIdOfFirstUnallocatedPlayer() const
return 0;
}
#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(VCMI_ANDROID)
#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(VCMI_ANDROID) && !defined(VCMI_IOS)
void handleLinuxSignal(int sig)
{
const int STACKTRACE_SIZE = 100;
@ -904,13 +903,13 @@ static void handleCommandOptions(int argc, char * argv[], boost::program_options
int main(int argc, char * argv[])
{
#ifndef VCMI_ANDROID
#if !defined(VCMI_ANDROID) && !defined(VCMI_IOS)
// Correct working dir executable folder (not bundle folder) so we can use executable relative paths
boost::filesystem::current_path(boost::filesystem::system_complete(argv[0]).parent_path());
#endif
// Installs a sig sev segmentation violation handler
// to log stacktrace
#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(VCMI_ANDROID)
#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(VCMI_ANDROID) && !defined(VCMI_IOS)
signal(SIGSEGV, handleLinuxSignal);
#endif
@ -966,6 +965,7 @@ int main(int argc, char * argv[])
return 0;
}
// TODO iOS
#ifdef VCMI_ANDROID
void CVCMIServer::create()
{