FindZeroMQ.cmake 1.0 KB

1234567891011121314151617181920212223242526
  1. set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH ON)
  2. find_package(PkgConfig)
  3. pkg_check_modules(PC_LIBZMQ QUIET libzmq)
  4. set(ZeroMQ_VERSION ${PC_LIBZMQ_VERSION})
  5. find_library(ZeroMQ_LIBRARY NAMES libzmq.so libzmq.dylib libzmq.dll
  6. PATHS ${PC_LIBZMQ_LIBDIR} ${PC_LIBZMQ_LIBRARY_DIRS})
  7. find_library(ZeroMQ_STATIC_LIBRARY NAMES libzmq-static.a libzmq.a libzmq.dll.a
  8. PATHS ${PC_LIBZMQ_LIBDIR} ${PC_LIBZMQ_LIBRARY_DIRS})
  9. if(ZeroMQ_LIBRARY OR ZeroMQ_STATIC_LIBRARY)
  10. set(ZeroMQ_FOUND ON)
  11. endif()
  12. if (TARGET libzmq)
  13. # avoid errors defining targets twice
  14. return()
  15. endif()
  16. add_library(libzmq SHARED IMPORTED)
  17. set_property(TARGET libzmq PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${PC_LIBZMQ_INCLUDE_DIRS})
  18. set_property(TARGET libzmq PROPERTY IMPORTED_LOCATION ${ZeroMQ_LIBRARY})
  19. add_library(libzmq-static STATIC IMPORTED ${PC_LIBZMQ_INCLUDE_DIRS})
  20. set_property(TARGET libzmq-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${PC_LIBZMQ_INCLUDE_DIRS})
  21. set_property(TARGET libzmq-static PROPERTY IMPORTED_LOCATION ${ZeroMQ_STATIC_LIBRARY})