IX own module
This commit is contained in:
parent
7439747876
commit
fbee417594
@ -1,7 +1,7 @@
|
|||||||
cmake_minimum_required(VERSION 3.8)
|
cmake_minimum_required(VERSION 3.8)
|
||||||
cmake_policy(SET CMP0068 NEW)
|
cmake_policy(SET CMP0068 NEW)
|
||||||
|
|
||||||
project(GermanAirlinesVA_GAConnector)
|
project(GermanAirlinesVA_GAConnector C CXX)
|
||||||
|
|
||||||
set(CMAKE_CXX_STANDARD 14)
|
set(CMAKE_CXX_STANDARD 14)
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
@ -12,6 +12,9 @@ set(PLUGIN_NAME GAConnector)
|
|||||||
|
|
||||||
option(DEBUG "Debug symbols" OFF)
|
option(DEBUG "Debug symbols" OFF)
|
||||||
|
|
||||||
|
add_subdirectory(
|
||||||
|
ixwebsocket
|
||||||
|
)
|
||||||
add_subdirectory(
|
add_subdirectory(
|
||||||
xplugin
|
xplugin
|
||||||
)
|
)
|
||||||
|
|||||||
99
ixwebsocket/CMakeLists.txt
Normal file
99
ixwebsocket/CMakeLists.txt
Normal file
@ -0,0 +1,99 @@
|
|||||||
|
|
||||||
|
file(GLOB ixwebsocket CONFIGURE_DEPENDS ${CMAKE_SOURCE_DIR}/ixwebsocket/*.cpp)
|
||||||
|
|
||||||
|
add_library(ixwebsocket SHARED
|
||||||
|
${ixwebsocket}
|
||||||
|
)
|
||||||
|
|
||||||
|
target_include_directories(ixwebsocket PRIVATE
|
||||||
|
${CMAKE_SOURCE_DIR}/ixwebsocket/include
|
||||||
|
)
|
||||||
|
|
||||||
|
set_target_properties(ixwebsocket PROPERTIES
|
||||||
|
PUBLIC_HEADER ${CMAKE_SOURCE_DIR}/ixwebsocket/include
|
||||||
|
)
|
||||||
|
target_compile_options(ixwebsocket PRIVATE
|
||||||
|
-Wall
|
||||||
|
-Wextra
|
||||||
|
-pedantic
|
||||||
|
#-fvisibility=hidden
|
||||||
|
)
|
||||||
|
if(DEBUG)
|
||||||
|
target_compile_options(ixwebsocket PRIVATE
|
||||||
|
-g
|
||||||
|
)
|
||||||
|
target_link_options(ixwebsocket PRIVATE
|
||||||
|
-g
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
target_compile_options(ixwebsocket PRIVATE
|
||||||
|
-O2
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(APPLE)
|
||||||
|
message("Building ixwebsocket for MacOSX Universal into ${PROJECT_BINARY_DIR}/${PLUGIN_NAME}/${BIT}")
|
||||||
|
|
||||||
|
set_target_properties(ixwebsocket PROPERTIES
|
||||||
|
LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}
|
||||||
|
BUILD_WITH_INSTALL_NAME_DIR TRUE
|
||||||
|
)
|
||||||
|
|
||||||
|
target_compile_options(ixwebsocket PRIVATE
|
||||||
|
#"SHELL:-arch i386"
|
||||||
|
"SHELL:-arch x86_64"
|
||||||
|
)
|
||||||
|
target_link_options(ixwebsocket PRIVATE
|
||||||
|
#"SHELL:-arch i386"
|
||||||
|
"SHELL:-arch x86_64"
|
||||||
|
)
|
||||||
|
target_link_libraries(ixwebsocket PRIVATE
|
||||||
|
"-framework Security"
|
||||||
|
)
|
||||||
|
elseif(UNIX)
|
||||||
|
message("Building ixwebsocket for Linux ${BIT} into ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}")
|
||||||
|
|
||||||
|
set_target_properties(ixwebsocket PROPERTIES
|
||||||
|
LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}
|
||||||
|
)
|
||||||
|
|
||||||
|
target_compile_options(ixwebsocket PRIVATE
|
||||||
|
-nodefaultlibs
|
||||||
|
)
|
||||||
|
if(BIT STREQUAL "32")
|
||||||
|
target_compile_options(ixwebsocket PRIVATE
|
||||||
|
-m32
|
||||||
|
)
|
||||||
|
target_link_options(ixwebsocket PRIVATE
|
||||||
|
-m32
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
target_link_libraries(ixwebsocket PRIVATE
|
||||||
|
crypto
|
||||||
|
pthread
|
||||||
|
)
|
||||||
|
elseif(WIN32)
|
||||||
|
message("Building ixwebsocket for Windows ${BIT} into ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}")
|
||||||
|
|
||||||
|
set_target_properties(ixwebsocket PROPERTIES
|
||||||
|
RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}
|
||||||
|
)
|
||||||
|
|
||||||
|
if(DEBUG)
|
||||||
|
target_compile_options(ixwebsocket PRIVATE
|
||||||
|
-gcodeview
|
||||||
|
)
|
||||||
|
target_link_options(ixwebsocket PRIVATE
|
||||||
|
-Wl,-pdb=
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
target_link_options(ixwebsocket PRIVATE
|
||||||
|
-static-libgcc
|
||||||
|
-static-libstdc++
|
||||||
|
)
|
||||||
|
target_link_libraries(ixwebsocket PRIVATE
|
||||||
|
ws2_32.lib
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_library(ixwebsocket::ixwebsocket ALIAS ixwebsocket)
|
||||||
@ -5,12 +5,10 @@
|
|||||||
#)
|
#)
|
||||||
#Link to ssl(requires OpenSLL for macOS and Windows)
|
#Link to ssl(requires OpenSLL for macOS and Windows)
|
||||||
|
|
||||||
file(GLOB ixwebsocket CONFIGURE_DEPENDS ${CMAKE_SOURCE_DIR}/ixwebsocket/*.cpp)
|
|
||||||
file(GLOB websocket CONFIGURE_DEPENDS ${CMAKE_SOURCE_DIR}/websocket/*.cpp)
|
file(GLOB websocket CONFIGURE_DEPENDS ${CMAKE_SOURCE_DIR}/websocket/*.cpp)
|
||||||
file(GLOB file CONFIGURE_DEPENDS ${CMAKE_SOURCE_DIR}/file/*.cpp)
|
file(GLOB file CONFIGURE_DEPENDS ${CMAKE_SOURCE_DIR}/file/*.cpp)
|
||||||
|
|
||||||
add_library(germanairlinesva_xplugin SHARED
|
add_library(germanairlinesva_xplugin SHARED
|
||||||
${ixwebsocket}
|
|
||||||
${websocket}
|
${websocket}
|
||||||
${file}
|
${file}
|
||||||
makeRwysXP.cpp
|
makeRwysXP.cpp
|
||||||
@ -58,6 +56,7 @@ if(APPLE)
|
|||||||
|
|
||||||
set_target_properties(germanairlinesva_xplugin PROPERTIES
|
set_target_properties(germanairlinesva_xplugin PROPERTIES
|
||||||
LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}
|
LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}
|
||||||
|
INSTALL_RPATH "@loader_path"
|
||||||
OUTPUT_NAME mac
|
OUTPUT_NAME mac
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -65,23 +64,23 @@ if(APPLE)
|
|||||||
APL
|
APL
|
||||||
)
|
)
|
||||||
target_compile_options(germanairlinesva_xplugin PRIVATE
|
target_compile_options(germanairlinesva_xplugin PRIVATE
|
||||||
"SHELL:-arch i386"
|
#"SHELL:-arch i386"
|
||||||
"SHELL:-arch x86_64"
|
"SHELL:-arch x86_64"
|
||||||
)
|
)
|
||||||
target_link_options(germanairlinesva_xplugin PRIVATE
|
target_link_options(germanairlinesva_xplugin PRIVATE
|
||||||
"SHELL:-arch i386"
|
#"SHELL:-arch i386"
|
||||||
"SHELL:-arch x86_64"
|
"SHELL:-arch x86_64"
|
||||||
)
|
)
|
||||||
target_link_libraries(germanairlinesva_xplugin PRIVATE
|
target_link_libraries(germanairlinesva_xplugin PRIVATE
|
||||||
${CMAKE_SOURCE_DIR}/XPSDK/Libraries/Mac/XPLM.framework/XPLM
|
${CMAKE_SOURCE_DIR}/XPSDK/Libraries/Mac/XPLM.framework/XPLM
|
||||||
"-framework Security"
|
ixwebsocket
|
||||||
)
|
)
|
||||||
elseif(UNIX)
|
elseif(UNIX)
|
||||||
message("Building for Linux ${BIT} into ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}")
|
message("Building for Linux ${BIT} into ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}")
|
||||||
|
|
||||||
set_target_properties(germanairlinesva_xplugin PROPERTIES
|
set_target_properties(germanairlinesva_xplugin PROPERTIES
|
||||||
NO_SONAME 1
|
|
||||||
LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}
|
LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}
|
||||||
|
INSTALL_RPATH "\$ORIGIN"
|
||||||
OUTPUT_NAME lin
|
OUTPUT_NAME lin
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -102,6 +101,7 @@ elseif(UNIX)
|
|||||||
target_link_libraries(germanairlinesva_xplugin PRIVATE
|
target_link_libraries(germanairlinesva_xplugin PRIVATE
|
||||||
crypto
|
crypto
|
||||||
pthread
|
pthread
|
||||||
|
ixwebsocket
|
||||||
)
|
)
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
message("Building for Windows ${BIT} into ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}")
|
message("Building for Windows ${BIT} into ${PROJECT_BINARY_DIR}/Plugin/${PLUGIN_NAME}/${BIT}")
|
||||||
@ -129,6 +129,7 @@ elseif(WIN32)
|
|||||||
)
|
)
|
||||||
target_link_libraries(germanairlinesva_xplugin PRIVATE
|
target_link_libraries(germanairlinesva_xplugin PRIVATE
|
||||||
ws2_32.lib
|
ws2_32.lib
|
||||||
|
ixwebsocket
|
||||||
)
|
)
|
||||||
if(BIT STREQUAL "32")
|
if(BIT STREQUAL "32")
|
||||||
target_link_libraries(germanairlinesva_xplugin PRIVATE
|
target_link_libraries(germanairlinesva_xplugin PRIVATE
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user