Вы не можете установить значение по умолчанию для переменной, но вы можете сохранить переменную среды внутри обычной переменной cmake, и, если она не была установлена, определить значение по умолчанию.Я проверял это:
set(EXIST $ENV{HOME})
set(NOT_EXIST $ENV{NOT_EXIST})
if(EXIST)
message("Variable EXIST exist")
else()
message("Variable EXIST DOES NOT exist, setting default value")
set(EXIST "Default value")
endif()
if(NOT_EXIST)
message("Variable NOT_EXIST exist")
else()
message("Variable NOT_EXIST DOES NOT exist, setting default value")
set(NOT_EXIST "Default value")
endif()
message ("EXIST: ${EXIST}")
message ("NOT_EXIST: ${NOT_EXIST}")
Мой вывод для этого
Variable EXIST exist
Variable NOT_EXIST DOES NOT exist, setting default value
EXIST: /home/user
NOT_EXIST: Default value