Как ссылаться на ${CMAKE_BINARY_DIR}/lib на другой подпроект с CMake

Допустим, у меня есть простой проект CMake такой структуры:

/external
  /gtest
  /sqlite
  /paho
/raspberry
  /daemon
/cmake-build-debug
  /lib
   ... libpaho*.so, libcrypto.so, etc..
  /include
   ... openssl, MQTTClient.h etc...

Мой CMakeList.txt из /external/paho выглядит так:

 cmake_minimum_required(VERSION 3.2)
 include(ExternalProject)
 ExternalProject_add(
    libressl
    URL https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-2.7.4.tar.gz
    CONFIGURE_COMMAND ./configure --disable-hardening --prefix=${CMAKE_BINARY_DIR}
    BUILD_IN_SOURCE 1)

 externalproject_add(
    paho
    DEPENDS libressl
    GIT_REPOSITORY "https://github.com/eclipse/paho.mqtt.c.git"
    GIT_TAG "6f0edc21a3154b5be336c8f30a9b6f768da06e33"
    UPDATE_COMMAND ""
    PATCH_COMMAND ""
    CMAKE_ARGS -DPAHO_WITH_SSL=TRUE -DBUILD_SHARED_LIBS=OFF -DOPENSSL_INC_SEARCH_PATH=${CMAKE_BINARY_DIR}/include -DOPENSSL_LIB_SEARCH_PATH=${CMAKE_BINARY_DIR}/lib -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}
    BUILD_IN_SOURCE 1)

Итак, сборка eclipse paho mqtt lib работает как чудо, но я не знаю, как я могу использовать ie libpaho-mqtt3as.so в проекте / raspberry / daemon, который в настоящее время выглядит следующим образом:

set(daemon_SRCS
    src/main.cpp)
add_executable(daemon ${daemon_SRCS})
target_link_libraries(daemon
    libcore
    libpersistence)
install(TARGETS daemon DESTINATION bin)

есть идеи?

0 ответов

Другие вопросы по тегам