# Минимальная версия CMake, требуемая для сборки проекта cmake_minimum_required(VERSION 3.6 FATAL_ERROR) # Предпочтительно следовать стандартам принятым в указанном диапазоне версий cmake_policy(VERSION 3.6..3.7) # Название и версия проекта и используемые языки программирования project(myx-example-app-ext VERSION 0.4.0 LANGUAGES C CXX) # Имя и почта автора (требуются для создания пакетов) set(${PROJECT_NAME}_AUTHOR_NAME "Andrey Astafyev") set(${PROJECT_NAME}_AUTHOR_EMAIL "dev@246060.ru") # Рекомендуемый способ подключения MyxCMake include(cmake/myx_setup.cmake) # Используемые библиотеки if(PROJECT_IS_TOP_LEVEL) myx_add_external_target(myx-example-interface-library GIT_REPOSITORY git@gitlab.2:myx/examples/myx-example-interface-library) myx_add_external_target(myx-example-object-library GIT_REPOSITORY git@gitlab.2:myx/examples/myx-example-object-library) endif() # Цель для создания исполняемого файла myx_add_executable(${PROJECT_NAME}) # Настройка свойств цели myx_target_setup(${PROJECT_NAME} CPP ${PROJECT_SOURCE_DIR}/src/${PROJECT_NAME}/main.cpp LINK_LIBRARIES myx-example-interface-library myx-example-object-library ) # Автоматически генерируемый файл с информацией о репозитории myx_generate_git_info_header(${PROJECT_NAME} "git_info_p.hpp") # Автоматически генерируемый приватный заголовочный файл myx_generate_private_config_header(${PROJECT_NAME} "config_p.hpp") # Форматирование исходных текстов с помощью uncrustify myx_uncrustify(${PROJECT_NAME}) # Правила для сборки пакетов myx_create_packages(${PROJECT_NAME})