Параметр командной строки Premake для включения проекта

Итак, у меня есть скрипт Premake5 для создания make-файлов для моего текущего проекта (статическая библиотека). У него есть параметр командной строки под названием «with-sandbox». «песочница» — это тестовая среда для библиотеки. Но make-файлы для него следует создавать только в том случае, если установлена ​​опция «with-sandbox». Таким образом, я сделал фильтр, который включает скрипт Premake5 «песочницы» только при установленной опции. Но похоже, что фильтры не влияют на «включение», поэтому это не работает.

Вот как выглядит мой скрипт Premake5 для основного проекта:

newoption 
{
  trigger     = "with-sandbox",
  description = "Creates a sandbox testing environment"
}  


workspace "celer"

  project "celer"

    -- Project setup...

    filter "options:with-sandbox"

      include "tests/sandbox/"

А это скрипт Premake5 для проекта "песочница":

project "sandbox"

  -- Project setup...

Я хочу, чтобы "песочница" существовала только в том случае, если я этого захочу. Это особенно важно, когда я использую Visual Studio для переноса библиотеки в Windows. Мне нужен проект "песочница" в моем решении только тогда, когда это необходимо.


person maniel34    schedule 24.12.2019    source источник


Ответы (1)


я думаю, вы можете сделать что-то вроде этого

if _OPTIONS['with-sandbox'] then
 project "sandbox"
  ...
end

Таким образом, проект будет создан только в том случае, если вы передадите опцию

person Mihai Sebea    schedule 06.02.2020