myx/README.md

52 lines
2.1 KiB
Markdown
Raw Normal View History

2022-09-28 22:48:13 +00:00
# Библиотека дополнительных фукций для CMake
## Установка
2022-10-03 08:07:47 +00:00
В корневом каталоге проекта создать каталог `cmake/myx` и распаковать
в него архив проекта, который можно скачать [здесь](../../../releases).
2022-09-28 22:48:13 +00:00
## Использование
В основном файле `CMakeLists.txt` проекта после команды
2022-10-01 15:03:55 +00:00
`project` добавить строки:
2022-09-28 22:48:13 +00:00
```cmake
2022-10-03 08:07:47 +00:00
# Рекомендуемый способ подключения MyxCMake
include(cmake/myx_setup.cmake)
```
Создать файл `cmake/myx_setup.cmake`:
```cmake
#[=======================================================================[.rst:
Подключение дополнительных функций для CMake
По умолчанию предполагается использование версии MyxCMake,
файлы которой находятся в каталоге `cmake/myx` текущего проекта.
Для удобства разботки библиотеки MyxCMake можно указать путь
к её репозиторию с помощью переменной проекта CMake `MYX_CMAKE_DIR`
или переменной окружения `MYX_CMAKE_DIR`.
Если определена переменная `MYX_CMAKE_USE_SYSTEM`, то выполняется
поиск версии в каталогах перечисленных в переменной `CMAKE_MODULES_DIR`.
#]=======================================================================]
if(MYX_CMAKE_DIR)
set(ENV{MYX_CMAKE_DIR} ${MYX_CMAKE_DIR})
endif()
if(DEFINED ENV{MYX_CMAKE_DIR})
2022-10-03 08:08:36 +00:00
find_package(MyxCMake 1.99.63 REQUIRED)
2022-10-03 08:07:47 +00:00
myx_message_notice("=== MyxCMake directory: ${MyxCMake_CONFIG} ===")
2022-10-01 15:03:55 +00:00
else()
2022-10-03 08:07:47 +00:00
if(MYX_CMAKE_USE_SYSTEM)
2022-10-03 08:08:36 +00:00
find_package(MyxCMake 1.99.63 REQUIRED)
2022-10-03 08:07:47 +00:00
myx_message_notice("=== MyxCMake directory: ${MyxCMake_CONFIG} ===")
else()
include(${PROJECT_SOURCE_DIR}/cmake/myx/MyxCMakeConfig.cmake)
myx_message_notice("=== MyxCMake directory: ${PROJECT_SOURCE_DIR}/cmake/myx ===")
endif()
2022-10-01 15:03:55 +00:00
endif()
2022-09-28 22:48:13 +00:00
```