diff --git a/xpcPlugin/CMakeLists.txt b/xpcPlugin/CMakeLists.txt new file mode 100644 index 0000000..0f889fd --- /dev/null +++ b/xpcPlugin/CMakeLists.txt @@ -0,0 +1,38 @@ +cmake_minimum_required(VERSION 2.8 FATAL_ERROR) + +project(XPlaneConnect) + +include_directories(${CMAKE_CURRENT_SOURCE_DIR}) +include_directories(SDK/CHeaders/XPLM) +include_directories(../C/src) + +add_definitions(-DXPLM200 -DLIN=1) + +SET(CMAKE_C_COMPILER gcc) +SET(CMAKE_CXX_COMPILER g++) + +add_library(xpc64 SHARED XPCPlugin.cpp + DataManager.cpp + DataMaps.cpp + Drawing.cpp + Log.cpp + Message.cpp + MessageHandlers.cpp + UDPSocket.cpp) +set_target_properties(xpc64 PROPERTIES PREFIX "" SUFFIX ".xpl") +set_target_properties(xpc64 PROPERTIES COMPILE_FLAGS "-std=gnu++11" LINK_FLAGS "-shared -rdynamic -nodefaultlibs -undefined_warning") + +add_library(xpc32 SHARED XPCPlugin.cpp + DataManager.cpp + DataMaps.cpp + Drawing.cpp + Log.cpp + Message.cpp + MessageHandlers.cpp + UDPSocket.cpp) +set_target_properties(xpc32 PROPERTIES PREFIX "" SUFFIX ".xpl") +set_target_properties(xpc32 PROPERTIES COMPILE_FLAGS "-std=gnu++11 -m32" LINK_FLAGS "-shared -rdynamic -nodefaultlibs -undefined_warning -m32") + +# Switch install targets when uncommenting the 32 bit line above. +install(TARGETS xpc64 DESTINATION XPlaneConnect/64 RENAME lin.xpl) +install(TARGETS xpc32 DESTINATION XPlaneConnect/ RENAME lin.xpl) diff --git a/xpcPlugin/Drawing.cpp b/xpcPlugin/Drawing.cpp index 6cb3ff6..a493f79 100644 --- a/xpcPlugin/Drawing.cpp +++ b/xpcPlugin/Drawing.cpp @@ -22,15 +22,12 @@ #include #include +#include //OpenGL includes #if IBM #include #endif -#if __GNUC__ -#include -#else #include -#endif namespace XPC { @@ -299,4 +296,4 @@ namespace XPC ClearWaypoints(); } } -} \ No newline at end of file +} diff --git a/xpcPlugin/MessageHandlers.cpp b/xpcPlugin/MessageHandlers.cpp index 5b461aa..eebe10e 100644 --- a/xpcPlugin/MessageHandlers.cpp +++ b/xpcPlugin/MessageHandlers.cpp @@ -6,6 +6,9 @@ #include "Drawing.h" #include "Log.h" +#include +#include + namespace XPC { std::unordered_map MessageHandlers::connections; @@ -611,4 +614,4 @@ namespace XPC XPC::Log::FormatLine("[EXEC] ERROR: Unknown packet type %s", msg.GetHead().c_str()); #endif } -} \ No newline at end of file +} diff --git a/xpcPlugin/UDPSocket.cpp b/xpcPlugin/UDPSocket.cpp index 41c04b4..9e8c276 100644 --- a/xpcPlugin/UDPSocket.cpp +++ b/xpcPlugin/UDPSocket.cpp @@ -3,6 +3,8 @@ #include "Log.h" #include "UDPSocket.h" +#include + namespace XPC { UDPSocket::UDPSocket(unsigned short recvPort) @@ -178,4 +180,4 @@ namespace XPC } return std::string(ip); } -} \ No newline at end of file +} diff --git a/xpcPlugin/XPCPlugin.cpp b/xpcPlugin/XPCPlugin.cpp index 08e119b..18fa055 100755 --- a/xpcPlugin/XPCPlugin.cpp +++ b/xpcPlugin/XPCPlugin.cpp @@ -65,6 +65,7 @@ #include "XPLMProcessing.h" // System Includes +#include #ifdef __APPLE__ #include #endif @@ -207,4 +208,4 @@ float XPCFlightLoopCallback(float inElapsedSinceLastCall, sock = new XPC::UDPSocket(RECVPORT); } return -1; -} \ No newline at end of file +} diff --git a/xpcPlugin/XPlaneConnect/64/lin.xpl b/xpcPlugin/XPlaneConnect/64/lin.xpl new file mode 100755 index 0000000..991d757 Binary files /dev/null and b/xpcPlugin/XPlaneConnect/64/lin.xpl differ diff --git a/xpcPlugin/XPlaneConnect/lin.xpl b/xpcPlugin/XPlaneConnect/lin.xpl new file mode 100755 index 0000000..e4dd997 Binary files /dev/null and b/xpcPlugin/XPlaneConnect/lin.xpl differ