2016-08-15 3 views
0

Кто-нибудь знает, как параметризовать сценарий llvm-lit? Мне нужно передать некоторое значение переменной среды в скрипт, чтобы использовать его в командной строке некоторого инструмента.LLVM LIT: Можно ли передать пользовательский параметр в тестовый скрипт?

Например, тестовый сценарий может иметь следующую строку:

// RUN: some-tool $SOME_ENV_VAR 

Мне нужно передать значение SOME_ENV_VAR каким-то образом.

Согласно documentation для LLVM освещенного есть вариант -D или --param, но неясно, как получить доступ к определенному пользователю параметров внутри сценария.

Заранее спасибо.

+0

Опция -D в llvm-lit используется для передачи параметров, таких как use_gmalloc и т. Д. Что конкретно вы пытаетесь выполнить? – ConsistentProgrammer

+0

Мне нужно вставить значение переменной среды в командную строку команды, которая вызывается из тестового скрипта (см. Пример в тексте выше). –

ответ

0

Если вы можете изменить сценарий lit.cfg (или скрипт, используемый для создания конфигурации), вы можете использовать всю гибкость Python там. Например, вы можете добавить:

some_var = os.environ.get('SOME_ENV_VAR', '')

Затем вы можете добавить найти замены кортежи:

config.substitutions.append(('%some_var', some_var))

Теперь, когда вы% some_var появляются в RUN линии, горит подставит значение переменной среды, как это было при запуске тестового набора.

+0

Большое спасибо! Это работает хорошо. –

+0

@PiligrimGrey Рад это слышать :) Буду признателен за принятие и принятие ответа, если вы считаете, что это соответствует вопросу. – Eric

+0

К сожалению, у меня слишком слабая репутация, и мне не разрешают повышать свой ответ. Я уже пытался это сделать. Странное правило. –