3rdPartyTargets.cmake 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. # Author:
  2. # Sven Czarnian <devel@svcz.de>
  3. # License:
  4. # GPLv3
  5. # Brief:
  6. # Creates the 3rd-party import targets
  7. # include the external project library
  8. INCLUDE(ExternalProject)
  9. # define the import target of libsodium
  10. ADD_LIBRARY(libsodium STATIC IMPORTED)
  11. IF (MSVC)
  12. SET_TARGET_PROPERTIES(libsodium PROPERTIES
  13. IMPORTED_LOCATION_DEBUG "${CMAKE_SOURCE_DIR}/external/lib/libsodiumd.lib"
  14. IMPORTED_LOCATION_RELEASE "${CMAKE_SOURCE_DIR}/external/lib/libsodium.lib"
  15. )
  16. TARGET_LINK_LIBRARIES(libsodium INTERFACE Ws2_32 Iphlpapi)
  17. TARGET_INCLUDE_DIRECTORIES(libsodium INTERFACE "${CMAKE_SOURCE_DIR}/external/include")
  18. ELSE ()
  19. MESSAGE(FATAL_ERROR "Unsupported compiler")
  20. ENDIF ()
  21. # define the import target of libzmq
  22. ADD_LIBRARY(libzmq STATIC IMPORTED)
  23. ADD_DEPENDENCIES(libzmq libsodium)
  24. IF (MSVC)
  25. SET_TARGET_PROPERTIES(libzmq PROPERTIES
  26. IMPORTED_LOCATION_DEBUG "${CMAKE_SOURCE_DIR}/external/lib/libzmqd.lib"
  27. IMPORTED_LOCATION_RELEASE "${CMAKE_SOURCE_DIR}/external/lib/libzmq.lib"
  28. )
  29. TARGET_INCLUDE_DIRECTORIES(libzmq INTERFACE "${CMAKE_SOURCE_DIR}/external/include")
  30. TARGET_LINK_LIBRARIES(libzmq INTERFACE libsodium)
  31. TARGET_COMPILE_OPTIONS(libzmq INTERFACE /DZMQ_STATIC)
  32. ELSE ()
  33. MESSAGE(FATAL_ERROR "Unsupported compiler")
  34. ENDIF ()
  35. # define the import target of cppzmq
  36. ADD_LIBRARY(cppzmq INTERFACE)
  37. TARGET_INCLUDE_DIRECTORIES(cppzmq INTERFACE "${CMAKE_SOURCE_DIR}/external/include")
  38. TARGET_LINK_LIBRARIES(cppzmq INTERFACE libzmq)
  39. ADD_DEPENDENCIES(cppzmq libzmq)
  40. # define the import target of GSL
  41. ADD_LIBRARY(GSL INTERFACE)
  42. TARGET_INCLUDE_DIRECTORIES(GSL INTERFACE "${CMAKE_SOURCE_DIR}/external/include")
  43. # define the import target of protobuf
  44. ADD_LIBRARY(protobuf STATIC IMPORTED)
  45. IF (MSVC)
  46. SET_TARGET_PROPERTIES(protobuf PROPERTIES
  47. IMPORTED_LOCATION_DEBUG "${CMAKE_SOURCE_DIR}/external/lib/libprotobufd.lib"
  48. IMPORTED_LOCATION_RELEASE "${CMAKE_SOURCE_DIR}/external/lib/libprotobuf.lib"
  49. )
  50. TARGET_INCLUDE_DIRECTORIES(protobuf INTERFACE "${CMAKE_SOURCE_DIR}/external/include")
  51. ELSE ()
  52. MESSAGE(FATAL_ERROR "Unsupported compiler")
  53. ENDIF ()