unset
Отменяет определение переменной, переменной кэша или переменной среды.
Отмена определения обычной переменной
-
unset(<variable> [PARENT_SCOPE]) -
Удаляет обычную переменную из текущей области видимости, в результате чего она становится неопределённой.
Если присутствует
PARENT_SCOPE, переменная удаляется из области видимости уровнем выше текущей. Дополнительные сведения см. в описании того же параметра командыset().
Примечание
При вычислении ссылок на переменные вида ${VAR} CMake сначала ищет обычную переменную с таким именем. Если такая обычная переменная не найдена, CMake затем ищет запись кэша с таким именем. Поэтому отмена определения обычной переменной может сделать доступной переменную кэша, которая ранее была скрыта. Чтобы ссылка на переменную вида ${VAR} возвращала пустую строку, используйте set(<variable> ""): она очищает обычную переменную, но оставляет её определённой.
Удаление записи кэша
-
unset(CACHE{<variable>}) -
Добавлено в версии 4.2.
Удаляет
<variable>из кэша, в результате чего она становится неопределённой.
-
unset(<variable> CACHE) -
Эта сигнатура поддерживается для обеспечения совместимости. Предпочтительно использовать другую сигнатуру.
Отмена определения переменной среды
-
unset(ENV{<variable>}) -
Удаляет
<variable>из доступной на данный моментEnvironment Variables. Последующие вызовы$ENV{<variable>}будут возвращать пустую строку.Эта команда влияет только на текущий процесс CMake, но не на процесс, из которого был вызван CMake, не на системную среду в целом и не на среду последующих процессов сборки или тестирования.
См. также
© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/command/unset.html