Отделение PlaneGCS в отдельный lib-проект

This commit is contained in:
2025-12-15 16:18:59 +03:00
parent e2ce3a0e48
commit e631cbfb5a

View File

@@ -4,6 +4,38 @@ project(DRAWer_2_0 LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# PlaneGCS PART
set(PlaneGCS_project_name "PlaneGCS")
set(INCLUDE_BOOST_DIR "C:/local/boost_1_89_0")
set(INCLUDE_EIGEN_DIR ${CMAKE_CURRENT_SOURCE_DIR}/eigen-5.0.0)
add_library(${PlaneGCS_project_name} STATIC
GCS/GCS.cpp
GCS/SubSystem.cpp
GCS/Constraints.cpp
GCS/Geo.cpp
GCS/qp_eq.cpp
)
target_include_directories(${PlaneGCS_project_name} PUBLIC
${INCLUDE_BOOST_DIR}
${INCLUDE_EIGEN_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/GCS/headers
)
target_link_libraries(${PlaneGCS_project_name}
PUBLIC
Qt::Gui
)
target_compile_features(${PlaneGCS_project_name} PUBLIC cxx_std_20)
# DRAWer 2_0
set(PROJECT_SOURCES
main.cpp
DRAWer_2_0.ui
DRAWer_2_0.cpp
Canvas.cpp
)
find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Core)
find_package(Qt${QT_VERSION_MAJOR}
COMPONENTS
@@ -12,22 +44,6 @@ find_package(Qt${QT_VERSION_MAJOR}
Widgets
)
qt_standard_project_setup()
set(INCLUDE_BOOST_DIR "C:/local/boost_1_89_0")
set(INCLUDE_EIGEN_DIR ${CMAKE_CURRENT_SOURCE_DIR}/eigen-5.0.0)
set(PROJECT_SOURCES
main.cpp
DRAWer_2_0.ui
DRAWer_2_0.cpp
Canvas.cpp
GCS/GCS.cpp
GCS/SubSystem.cpp
GCS/Constraints.cpp
GCS/Geo.cpp
GCS/qp_eq.cpp
)
qt_add_executable(${PROJECT_NAME} ${PROJECT_SOURCES})
set_target_properties(${PROJECT_NAME}
@@ -35,16 +51,12 @@ set_target_properties(${PROJECT_NAME}
WIN32_EXECUTABLE TRUE
)
target_include_directories(${PROJECT_NAME} PUBLIC
${INCLUDE_BOOST_DIR}
${INCLUDE_EIGEN_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/GCS/headers
)
target_link_libraries(${PROJECT_NAME}
PUBLIC
Qt::Core
Qt::Gui
Qt::Widgets
PRIVATE
${PlaneGCS_project_name}
)