myx-example-qt-console/CMakeLists.txt

57 lines
1.7 KiB
CMake
Raw Normal View History

2022-10-04 12:03:27 +00:00
# Минимальная версия CMake, требуемая для сборки проекта
cmake_minimum_required(VERSION 3.6 FATAL_ERROR)
# Предпочтительно следовать стандартам принятым в указанном диапазоне версий
cmake_policy(VERSION 3.6..3.7)
# Название и версия проекта и используемые языки программирования
2022-10-21 07:54:10 +00:00
project(znk-results VERSION 0.4.0 LANGUAGES C CXX)
2022-10-04 12:03:27 +00:00
# Рекомендуемый способ подключения MyxCMake
include(cmake/myx_setup.cmake)
2022-10-06 12:23:22 +00:00
# Поиск пакетов
2022-10-09 02:58:20 +00:00
myx_find_required_packages(
2022-10-21 07:54:10 +00:00
PACKAGES Eigen3
Qt5 Core Sql
2022-10-04 12:03:27 +00:00
Qt5Private Core)
2022-10-21 07:54:10 +00:00
FetchContent_Add(myx-handy-paths
GIT_REPOSITORY git@gitlab.2:myx/libs/myx-handy-paths
GIT_PATH myx/libs/myx-handy-paths
GIT_REMOTE origin
)
FetchContent_Add(myx-handy-yaml
GIT_REPOSITORY git@gitlab.2:myx/libs/myx-handy-yaml
GIT_PATH myx/libs/myx-handy-yaml
GIT_REMOTE origin
)
FetchContent_Add(myx-qt-database
GIT_REPOSITORY git@gitlab.2:myx/libs/myx-qt-database
GIT_PATH myx/libs/myx-qt-database
GIT_REMOTE origin
)
2022-10-06 12:23:22 +00:00
# Цель для создания исполняемого файла
2022-10-20 10:13:00 +00:00
myx_add_executable(${PROJECT_NAME})
2022-10-04 12:03:27 +00:00
# Настройка свойств цели
myx_target_setup(${PROJECT_NAME}
2022-10-21 07:54:10 +00:00
PACKAGES Eigen3
2022-10-04 12:03:27 +00:00
CPP
${PROJECT_SOURCE_DIR}/src/${PROJECT_NAME}/main.cpp
2022-10-21 07:54:10 +00:00
LINK_LIBRARIES myx-handy-paths myx-qt-database Eigen3::Eigen
2022-10-04 12:03:27 +00:00
)
2022-10-06 12:23:22 +00:00
# Настройка Qt для цели
2022-10-04 12:03:27 +00:00
myx_qt5_target_setup(${PROJECT_NAME}
2022-10-21 07:54:10 +00:00
COMPONENTS Core Sql
PRIVATE Core
)
2022-10-06 12:23:22 +00:00
# Форматирование исходных текстов с помощью uncrustify
myx_uncrustify(${PROJECT_NAME})