cmake: ExternalProject_Add () не применяет аргументы cmake

У меня проблемы при создании внешней библиотеки (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 документация но я не могу получить дальше.

Я делаю что-то неправильно? Вы можете выбрать, какую цель строить или нет?

0

Решение

параметр CMAKE_ARGS содержит список вариантов, а не одиночная строка с разделенных пробелами опции. Правильный:

CMAKE_ARGS -DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF
2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector