$ENV
используется для получения значения переменной среды [1] .
В вашем примере $ENV{HOME}
получит значение переменной среды $HOME
, Допустим, $HOME
имеет значение /home/wls
. Запуск фрагмента, который вы показали, установит для переменной CMake BOOST_ROOT
значение /home/wls/dev/cpp/thirdparty/boost
.
$ENV
не ограничивается использованием с $HOME
. Вы можете использовать его для любой доступной переменной среды.
Обратите внимание, что ENV
также используется с set()
. Обратите внимание, что ENV
не совпадает с $ENV
. ENV
обычно используется таким образом в set()
:
set(ENV{<variable>} [<value>])
ENV
в вышеупомянутом контексте используется для обозначения того, что переменная, значение которой вы устанавливаете, является переменной среды. Как сказано в документации для set()
[2] , изменение переменной среды таким образом повлияет на итоговое значение последующих чтений этой переменной с использованием $ENV
.
Ссылки: