# Минимальная версия CMake, требуемая для сборки проекта cmake_minimum_required(VERSION 3.6 FATAL_ERROR) # Предпочтительно следовать стандартам принятым в указанном диапазоне версий cmake_policy(VERSION 3.6..3.7) # Название и версия проекта и используемые языки программирования project(myx-example-app-ext VERSION 0.3.0 LANGUAGES C CXX) # Рекомендуемый способ подключения MyxCMake include(cmake/myx_setup.cmake) if(PROJECT_IS_TOP_LEVEL) FetchContent_Add(myx-example-interface-library GIT_REPOSITORY git@gitlab.2:myx/examples/myx-example-interface-library GIT_PATH myx/examples/myx-example-interface-library GIT_REMOTE origin ) FetchContent_Add(myx-example-object-library GIT_REPOSITORY git@gitlab.2:myx/examples/myx-example-object-library GIT_PATH myx/examples/myx-example-object-library GIT_REMOTE origin ) else() include(myx_add_subdirectories.cmake) 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})