From 50515cc1ec7192bda34a877ecd460a3b0269c67a Mon Sep 17 00:00:00 2001 From: Anthony Berg Date: Sun, 14 Apr 2024 16:22:30 +0100 Subject: [PATCH] refactor(plugin): restructure directories for better development experience --- plugin/CMakeLists.txt | 12 ++---------- plugin/src/CMakeLists.txt | 1 + plugin/src/plugin/CMakeLists.txt | 12 ++++++++++++ plugin/{main.cpp => src/plugin/plugin.cpp} | 0 4 files changed, 15 insertions(+), 10 deletions(-) create mode 100644 plugin/src/CMakeLists.txt create mode 100644 plugin/src/plugin/CMakeLists.txt rename plugin/{main.cpp => src/plugin/plugin.cpp} (100%) diff --git a/plugin/CMakeLists.txt b/plugin/CMakeLists.txt index 7e540ae..76ecfe9 100644 --- a/plugin/CMakeLists.txt +++ b/plugin/CMakeLists.txt @@ -5,21 +5,13 @@ project(XPL-Checklist-Connector CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_BUILD_TYPE Release) -# Set compile options for XPLM -add_definitions(-DXPLM200=1 -DXPLM210=1 -DXPLM300=1 -DXPLM301=1 -DXPLM302=1 -DXPLM303=1 -DXPLM401=1) - -set(GCC_COVERAGE_COMPILE_FLAGS "-fPIC -fvisibility=hidden") set(GCC_COVERAGE_LINK_FLAGS "-m64 -static-libgcc -shared") -find_package(unofficial-x-plane CONFIG REQUIRED) - -add_library(${PROJECT_NAME} SHARED main.cpp) - -target_link_libraries(${PROJECT_NAME} PRIVATE unofficial::x-plane::xplm unofficial::x-plane::xpwidgets unofficial::x-plane::xplm_cpp) +add_subdirectory(src) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GCC_COVERAGE_COMPILE_FLAGS}") -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(XPL-Checklist-Connector PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/build/${PROJECT_NAME}/lin_x64 PREFIX "" SUFFIX ".xpl" diff --git a/plugin/src/CMakeLists.txt b/plugin/src/CMakeLists.txt new file mode 100644 index 0000000..7d5453f --- /dev/null +++ b/plugin/src/CMakeLists.txt @@ -0,0 +1 @@ +add_subdirectory(plugin) diff --git a/plugin/src/plugin/CMakeLists.txt b/plugin/src/plugin/CMakeLists.txt new file mode 100644 index 0000000..99dc750 --- /dev/null +++ b/plugin/src/plugin/CMakeLists.txt @@ -0,0 +1,12 @@ +file(GLOB PLUGIN_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp") + +add_library(XPL-Checklist-Connector MODULE ${PLUGIN_SRC}) + +# Set compile options for XPLM +add_definitions(-DXPLM200=1 -DXPLM210=1 -DXPLM300=1 -DXPLM301=1 -DXPLM302=1 -DXPLM303=1 -DXPLM401=1) + +set(GCC_COVERAGE_COMPILE_FLAGS "-fPIC -fvisibility=hidden") + +find_package(unofficial-x-plane CONFIG REQUIRED) + +target_link_libraries(XPL-Checklist-Connector PRIVATE unofficial::x-plane::xplm unofficial::x-plane::xpwidgets unofficial::x-plane::xplm_cpp) diff --git a/plugin/main.cpp b/plugin/src/plugin/plugin.cpp similarity index 100% rename from plugin/main.cpp rename to plugin/src/plugin/plugin.cpp