У меня проблемы при создании внешней библиотеки (glfw) в моем файле cmake:
[...]
ExternalProject_Add(glfw
PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/glfw"URL "https://github.com/glfw/glfw/releases/download/3.2.1/glfw-3.2.1.zip"URL_HASH SHA256=b7d55e13e07095119e7d5f6792586dd0849c9fcdd867d49a4a5ac31f982f7326
CMAKE_ARGS "-DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF"INSTALL_COMMAND ""TEST_COMMAND "")
add_executable(test main.cpp)
add_dependencies(test glfw)
Хотя это работает довольно хорошо, приведенные аргументы cmake -DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF
игнорируются
Согласно документация glfw Аргументы должны отключить создание примеров и тестов. Я только хочу собрать библиотеку (цель: glfw).
Если я попытаюсь собрать библиотеку отдельно
cmake -DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF
тогда это работает как ожидалось.
Я также изучаю cmake документация но я не могу получить дальше.
Я делаю что-то неправильно? Вы можете выбрать, какую цель строить или нет?
параметр CMAKE_ARGS
содержит список вариантов, а не одиночная строка с разделенных пробелами опции. Правильный:
CMAKE_ARGS -DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF
Других решений пока нет …