Вызов внешних программ с помощью CMake

Я попытался выполнить поиск в документации CMake, но не смог понять, как вызывать внешние программы из CMake.

Есть несколько вещей, которые я хочу сделать.

  1. Компилировать другие сторонние зависимости, использующие make-файл.
  2. Скомпилировать Thrift файлы определений в заглушки C ++ / Python.
  3. Скомпилировать файлы определений Cython .

Другой файл определений. вопрос в том, как лучше всего справиться с этими случаями? Похоже, что вызов сценария оболочки непосредственно из CMake не кажется таким чистым, когда «C» в CMake означает Cross Platform.

РЕДАКТИРОВАТЬ: У меня есть несколько дополнительных вопросов. Раньше в моей сборке я предварительно собирал свои зависимости, а сам проект использовал FIND_PACKAGE (...), чтобы найти заголовок / библиотеки для зависимостей.

Теперь я использую ExternalProject_Add () для компиляции зависимостей, но проблема в том, что все мои функции FindXYZ () не работают, когда я запускаю cmake. , потому что зависимости отсутствуют при запуске CMake.

Как мне включить сторонние библиотеки в мой проект в в этом случае?

5
задан Peter Mortensen 15 June 2011 в 17:03
поделиться