diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 4fdafef..dc8fd8a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -19,10 +19,6 @@ # Note: on OS X you should install XCode and the associated command-line tools ## compilation/linkage settings -INCLUDE_DIRECTORIES( - . - ${CMAKE_BINARY_DIR} - ) CONFIGURE_FILE(VersionInfo.h.in ${CMAKE_BINARY_DIR}/VersionInfo.h @@ -84,8 +80,17 @@ IF (NOT PAHO_BUILD_STATIC) paho-mqtt3c paho-mqtt3a PROPERTIES VERSION ${CLIENT_VERSION} SOVERSION ${PAHO_VERSION_MAJOR}) + FOREACH(TARGET paho-mqtt3c paho-mqtt3a) + TARGET_INCLUDE_DIRECTORIES(${TARGET} + PUBLIC + $ + $ + PRIVATE + ${CMAKE_BINARY_DIR}) + ENDFOREACH() INSTALL(TARGETS paho-mqtt3c paho-mqtt3a + EXPORT eclipse-paho-mqtt-cTargets ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) @@ -98,7 +103,14 @@ ELSE() TARGET_LINK_LIBRARIES(paho-mqtt3c-static ${LIBS_SYSTEM}) TARGET_LINK_LIBRARIES(paho-mqtt3a-static ${LIBS_SYSTEM}) - + FOREACH(TARGET paho-mqtt3c-static paho-mqtt3a-static) + TARGET_INCLUDE_DIRECTORIES(${TARGET} + PUBLIC + $ + $ + PRIVATE + ${CMAKE_BINARY_DIR}) + ENDFOREACH() INSTALL(TARGETS paho-mqtt3c-static paho-mqtt3a-static ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) ENDIF() @@ -159,7 +171,16 @@ IF (PAHO_WITH_SSL) VERSION ${CLIENT_VERSION} SOVERSION ${PAHO_VERSION_MAJOR} COMPILE_DEFINITIONS "OPENSSL=1") + FOREACH(TARGET paho-mqtt3cs paho-mqtt3as) + TARGET_INCLUDE_DIRECTORIES(${TARGET} + PUBLIC + $ + $ + PRIVATE + ${CMAKE_BINARY_DIR}) + ENDFOREACH() INSTALL(TARGETS paho-mqtt3cs paho-mqtt3as + EXPORT eclipse-paho-mqtt-cTargets ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) @@ -175,12 +196,33 @@ IF (PAHO_WITH_SSL) VERSION ${CLIENT_VERSION} SOVERSION ${PAHO_VERSION_MAJOR} COMPILE_DEFINITIONS "OPENSSL=1") - + FOREACH(TARGET paho-mqtt3cs-static paho-mqtt3as-static) + TARGET_INCLUDE_DIRECTORIES(${TARGET} + PUBLIC + $ + $ + PRIVATE + ${CMAKE_BINARY_DIR}) + ENDFOREACH() INSTALL(TARGETS paho-mqtt3cs-static paho-mqtt3as-static + EXPORT eclipse-paho-mqtt-cTargets ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) ENDIF() ENDIF() +INSTALL(EXPORT eclipse-paho-mqtt-cTargets + FILE eclipse-paho-mqtt-cConfig.cmake + NAMESPACE eclipse-paho-mqtt-c:: + DESTINATION share/eclipse-paho-mqtt-c) + +INCLUDE(CMakePackageConfigHelpers) +WRITE_BASIC_PACKAGE_VERSION_FILE("eclipse-paho-mqtt-cConfigVersion.cmake" + VERSION ${CLIENT_VERSION} + COMPATIBILITY SameMajorVersion) +INSTALL(FILES + "${CMAKE_CURRENT_BINARY_DIR}/eclipse-paho-mqtt-cConfigVersion.cmake" + DESTINATION share/eclipse-paho-mqtt-c) + # Base64 test ADD_EXECUTABLE( Base64Test EXCLUDE_FROM_ALL Base64.c Base64.h ) TARGET_COMPILE_DEFINITIONS( Base64Test PUBLIC "-DBASE64_TEST" )