CMake включает для C ++ Azure

Это о том, как интегрировать инструментарий C ++ Azure-Storage в CMake.

Я пытаюсь встроить в наше приложение инструмент, который подключается к хранилищу BLOB-объектов Azure, выводит список файлов / контейнеров, читает данные и т. Д. Я работаю в Linux (Ubuntu 17.04). Я собрал инструменты cpprestsdk и azure-storage из исходного кода.

Я могу собрать некоторые вещи, потому что я буквально добавляю

-I/apps/azure/inst/include

к CMAKE_CXX_FLAGS, Как вы можете видеть, я использовал CMAKE_INSTALL_PREFIX=/apps/azure/inst, использовал его для cpprest и azure-storage.

в lib подкаталог есть cpprestsdk/ каталог, содержащий файлы .cmake. Но мне нужен файл .cmake для хранилища Azure, который я могу включить в свой собственный CMakeLists.txt, который добавляет вещи, которые мне нужны (флаги, библиотеки и т. д.). Изучение примеров показывает, что они построены таким образом, что будут работать только во время сборки SDK.

Кто-нибудь знает, есть ли такой файл включения .cmake, и если да, то где он установлен?

0

Решение

Хорошо, я ничего не мог найти, и никто не отправил ответ, поэтому я экспериментировал. Краткий ответ: используйте cpprest вещи и добавить немного azure-storage директивы себя.

Единственное, что я смог найти, это код CMake в README.md из cpprest, Я взял это и добавил свое собственное имя для хранения в Azure, где это может понадобиться.

Добавлено:

find_path( AZURE_INST_DIR "" HINTS /apps/azure/inst REQUIRED )

Все это работает, потому что большая часть зависимостей находится в cpprest, у самого хранилища azure нет дополнительных зависимостей (слава богу!).

Обратите внимание, что пользователи gcc: отключите -Wshadow и -Woverloaded-virtual, потому что код cpprest и azure-storage переполнен этими кодами (очевидно, они недоступны в Visual Studio).

0

Другие решения

Других решений пока нет …