Отделение PlaneGCS в отдельный lib-проект
This commit is contained in:
@@ -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}
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user