Как потерпеть неудачу, если определенная программа запущена?

372
kutschkem

Я использую cmake-conan для вызова conan во время сборки (в Ubuntu 16.04). Однако теперь я хочу проверить, что определенные сборки НЕ вызывают conan.

cmake-conan вызывает conan следующим образом:

execute_process(COMMAND $ $ RESULT_VARIABLE return_code WORKING_DIRECTORY $) 

Где $ разрешается в conan.

То, что я пытался это псевдоним, conanчтобы failв моей Баш скрипт, однако, кажется, не быть подобран CMake.

alias conan='fail' 

Есть ли другой способ убедиться, что программа не найдена в PATH, даже если она действительно находится в PATH?

1
Не вызывайте `conan` напрямую, в начале процесса создайте ссылку на него, чтобы переключаться между` conan` и `fail` по мере необходимости, и вызывайте` conan` через эту ссылку. xenoid 6 лет назад 0

1 ответ на вопрос

0
Tomasz Jakub Rup

В CMakeскрипте запускаем conan_cmake_runмакрос с параметрамиCONAN_COMMAND "fail"

Вы можете передать CONAN_COMMAND как переменную ENVIRNOMENT:

… conan_cmake_run(CONAN_COMMAND $ENV .xml найдите тег "advTm" и его значение  
Я решил свою проблему, внедрив в PATH перед проверкой фиктивный сценарий conan, ваш метод работает только один раз, а не постоянно. kutschkem 6 лет назад 0