Как я могу получить разные значения среды для разных ОС в одном файле premake5.lua?

В моем проекте я хочу получить разные значения среды в зависимости от разных ОС, точно так же, как получить A из Windows и получить B из Linux, я пытаюсь использовать функцию фильтра, как код, показанный ниже:

filter {"system:windows"} local value = os.getenv("A") filter {"system:linux"} local value = os.getenv("B")

или используйте такую ​​конфигурацию:

configuration {"windows"} local value = os.getenv("A") configuration {"linux"} local value = os.getenv("B")

Когда я запускаю premake5.lua, он возвращает ошибку: попытка объединить нулевое значение.

Я что-то неправильно понимаю? Как я могу реализовать это правильно?


person xind    schedule 30.10.2018    source источник


Ответы (2)


Другой вариант:

if os.is("windows") then
  ...
else if os.is("macosx") then
  ...
else if os.is("linux") then
  ...
end
person Dmytro Dadyka    schedule 14.12.2018

Используйте os.get, чтобы определить, на какой платформе вы сейчас работаете.

if os.get() == "windows" then
...
end
person Ben    schedule 26.11.2018