You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

zmq.cmake 1.1 kB

1234567891011121314151617181920212223242526272829303132
  1. include(ExternalProject)
  2. include(GNUInstallDirs)
  3. set(ZMQ_DIR
  4. ${PROJECT_SOURCE_DIR}/third_party/libzmq
  5. CACHE STRING "ZMQ directory")
  6. set(ZMQ_BUILD_DIR ${PROJECT_BINARY_DIR}/third_party/libzmq)
  7. set(ZMQ_LIB ${ZMQ_BUILD_DIR}/${CMAKE_INSTALL_LIBDIR}/libzmq.a)
  8. ExternalProject_Add(
  9. zmq
  10. SOURCE_DIR ${ZMQ_DIR}
  11. PREFIX ${ZMQ_BUILD_DIR}
  12. CMAKE_ARGS -DCMAKE_C_COMPILER_LAUNCHER=${CMAKE_C_COMPILER_LAUNCHER}
  13. -DCMAKE_CXX_COMPILER_LAUNCHER=${CMAKE_CXX_COMPILER_LAUNCHER}
  14. -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
  15. -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
  16. -DCMAKE_INSTALL_PREFIX=${ZMQ_BUILD_DIR}
  17. -DWITH_PERF_TOOL=OFF
  18. -DZMQ_BUILD_TESTS=OFF
  19. -DENABLE_CPACK=OFF
  20. -DENABLE_CURVE=OFF
  21. BUILD_BYPRODUCTS ${ZMQ_LIB})
  22. set(ZMQ_INC ${ZMQ_BUILD_DIR}/include)
  23. include_directories(${ZMQ_INC})
  24. file(MAKE_DIRECTORY ${ZMQ_INC})
  25. add_library(libzmq STATIC IMPORTED GLOBAL)
  26. add_dependencies(libzmq zmq)
  27. set_target_properties(libzmq PROPERTIES IMPORTED_LOCATION ${ZMQ_LIB}
  28. INTERFACE_INCLUDE_DIRECTORIES ${ZMQ_INC})