Подтвердить что ты не робот

Cmake "make run"

Я немного не уверен в терминологии в этой проблемной области, что является проблемой при попытке поиска вещей.

Я использую CMake для моего процесса сборки. Я хотел бы сделать цель Makefile, чтобы я мог использовать make run для запуска данного процесса (в частности, тот, который я только что создал с помощью make). Я понимаю, что могу просто сделать оболочку script, или просто запустить команду, набрав ее. Если бы я сам писал Makefile, я бы сделал это так:


run:
    ./path/to/binary

Я никогда не пишу сам Makefile, который сгенерирован cmake, и я не уверен, что добавить в мой CMakeLists.txt, чтобы он смог создать желаемый целевой объект make run.

Я нашел команду cmake 'execute_process', но, похоже, это не то, что мне нужно - я не хочу ничего запускать во время процесса сборки.

Дополнительно. Кроме того, мне бы хотелось сделать что-то вроде следующего:


CMAKE_COMMAND_ADD_MAKEFILE_TARGET ( ${CMAKE_PROJECT_DIR}/binary )

То есть, добавьте path/to/binary, используя переменную cmake, если это возможно.

4b9b3361

Ответ 1

Вы ищете add_custom_target. Например:

add_custom_target(run
    COMMAND binary
    DEPENDS binary
    WORKING_DIRECTORY ${CMAKE_PROJECT_DIR}
)