Добавление параметров командной строки в CMake

Я создаю большую библиотеку с помощью CMake, и я бы хотел, чтобы пользователи могли выборочно включать/отключать определенные части моего процесса сборки.

Как добавить параметры командной строки в мою сборку CMake, например. так что пользователи могут вводить что-то вроде cmake --build-partone --nobuild-parttwo --dothis=true --dothat=false ..

По-видимому ключевое слово OPTION создаст переменные, которые могут быть установлены из графического интерфейса CMake, но я не могу понять, как это сделать из командной строки.

Ответ 1

Да, вы используете команду option. Вы можете установить параметры из командной строки следующим образом:

//CMakeLists.txt
option(MyOption "MyOption" OFF)

//Command line
cmake -DMyOption=ON MyProjectFolder

Обратите внимание, что -DMyOption должен идти перед контуром.

Ответ 2

Просто небольшая коррекция:

Если у вас есть другие переменные, рекомендуется указать тип тезисов:

//CMakeLists.txt
option(MyOption "MyOption" OFF)

//Command line
cmake -DMyOption:BOOL=ON MyProjectFolder -D...