-1
Я использую cmake для создания моей библиотеки, для которой нужны внешние библиотеки. Каждая внешняя библиотека имеет собственный make-файл. Когда я вызываю этот набор команд из моего CMakeLists.txt
файла, ничего не происходит.Создание внешних библиотек с помощью cmake
Любые идеи, что я делаю неправильно?
add_custom_target(blake
COMMAND mkdir -p ${LIBSCAPI_BUILDIR}/blake
&& cp -r ${LIBSCAPI_BUILDIR}/lib/BLAKE2/sse/. ${LIBSCAPI_BUILDIR}/BLAKE2
make -C ${LIBSCAPI_BUILDIR}/BLAKE2
make -C ${LIBSCAPI_BUILDIR}/BLAKE2 BUILDDIR=$(builddir) install
cp ${LIBSCAPI_BUILDIR}/BLAKE2/libblake2.a install/lib/
touch compile-blake)
Когда я добавил 'ALL' вариант, CMake вызовет ошибку: «MKDIR : недопустимый параметр - 'r' ' – liorko
Итак, есть проблемы с вашими командами. Обратите внимание, что каждая новая команда должна быть добавлена с помощью ключевого слова * COMMAND *: в отличие от 'make',' CMake' не автоматически обрабатывает новую строку как новую команду. '&&' также может быть заменен на * COMMAND *: все команды выполняются по порядку, и если какой-либо из них не работает, то будет прекращено. Вы можете найти дополнительную информацию в [add_custom_target documentation] (https://cmake.org/cmake/help/v3.7/command/add_custom_target.html). – Tsyvarev