Я пытаюсь установить значение по умолчанию для флагов компилятора так, как это может быть позже изменено пользователем с помощью -DCMAKE_CXX_FLAGS_RELEASE = "..." и аналогичного в командной строке.CMake: Установить флаги компилятора, которые могут быть изменены пользователем.
Если я использую:
SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG -DNVALGRIND")
чем флаги не могут быть изменены с помощью или командную строку ccmake.
Если я использую
SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG -DNVALGRIND" CACHE STRING "")
чем не установлены флаги на всех.
Есть ли правильный способ сделать это?
Только что обнаружены флаги, такие как CMAKE_CXX_FLAGS_RELEASE_INIT, но они не работают так, как я хотел (они, похоже, вообще не влияют на значения по умолчанию, если они помещены в CMakeLists.txt) –
Проблема в том, что переменные, такие как MSVC для проверки компилятора не устанавливается перед вызовом project(). – Trass3r