# Минимальная версия CMake, требуемая для сборки проекта cmake_minimum_required(VERSION 3.6 FATAL_ERROR) # Предпочтительно следовать стандартам принятым в указанном диапазоне версий cmake_policy(VERSION 3.6..3.7) # Название и версия проекта и используемые языки программирования project(msg VERSION 1.1.1 LANGUAGES CXX) ### # Подключение дополнительных функций для CMake ### find_package(MyxCMake 1.99.9 PATHS ${PROJECT_SOURCE_DIR}/cmake/myx NO_DEFAULT_PATH QUIET REQUIRED) # Если проект верхнего уровня, подключаем зависимости # с помощью модуля FetchContent if(PROJECT_IS_TOP_LEVEL) include(FetchContent) FetchContent_Declare(pow GIT_REPOSITORY https://git.246060.ru/cmake/pow ) if(NOT pow_POPULATED) FetchContent_Populate(pow) add_subdirectory(${pow_SOURCE_DIR} ${pow_BINARY_DIR}) endif() endif() # Цель для компиляции объектных файлов разделяемой библиотеки myx_add_library(${PROJECT_NAME} TYPE OBJECT ) myx_target_setup(${PROJECT_NAME} SOURCES ${PROJECT_SOURCE_DIR}/include/msg/message.hpp ${PROJECT_SOURCE_DIR}/src/msg/message.cpp PCH src/msg/pch.hpp LINK_LIBRARIES pow ) if(PROJECT_IS_TOP_LEVEL) myx_install_library(${PROJECT_NAME}) endif()