В течение длительного времени CMake имел команду add_definitions
для этой цели.Однако недавно команда была заменена более детальным подходом (отдельные команды для определений компиляции, включающих каталоги и параметры компилятора).
Пример использования нового add_compile_definitions :
add_compile_definitions(OPENCV_VERSION=${OpenCV_VERSION})
add_compile_definitions(WITH_OPENCV2)
Или:
add_compile_definitions(OPENCV_VERSION=${OpenCV_VERSION} WITH_OPENCV2)
Хорошая черта этого в том, что он обходит потертую хитрость, которую CMake имеет для add_definitions
.CMake - такая потрепанная система, но они наконец-то находят здравый смысл.
Здесь вы найдете более подробное объяснение, какие команды использовать для флагов компилятора: https://cmake.org/cmake/help/latest/command/add_definitions.html
Аналогично, вы можете сделать это в- цель, как объяснено в ответе Джима Ханзикера.