CMakeLists.txt 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. enable_testing()
  2. include(GenerateExportHeader)
  3. find_package(
  4. Boost
  5. COMPONENTS
  6. filesystem
  7. program_options
  8. system
  9. REQUIRED
  10. )
  11. find_package(OpenSSL REQUIRED)
  12. find_package(Catch2 REQUIRED)
  13. if(MINGW)
  14. ENABLE_LANGUAGE(RC)
  15. endif()
  16. add_library(syncspirit_test_lib
  17. $<$<PLATFORM_ID:Windows>:win32-resource.rc>
  18. test_supervisor.cpp
  19. test-db.cpp
  20. test-utils.cpp
  21. diff-builder.cpp
  22. )
  23. target_link_libraries(syncspirit_test_lib syncspirit_lib
  24. Catch2::Catch2WithMain
  25. $<$<PLATFORM_ID:Windows>:wsock32>
  26. $<$<PLATFORM_ID:Windows>:ws2_32>
  27. $<$<PLATFORM_ID:Windows>:iphlpapi>
  28. )
  29. target_include_directories(syncspirit_test_lib PUBLIC
  30. "${syncspirit_SOURCE_DIR}/src"
  31. "${CMAKE_CURRENT_BINARY_DIR}/include"
  32. )
  33. generate_export_header(syncspirit_test_lib
  34. EXPORT_MACRO_NAME SYNCSPIRIT_TEST_API
  35. EXPORT_FILE_NAME include/syncspirit-test-export.h
  36. )
  37. add_custom_command(TARGET syncspirit_test_lib PRE_BUILD
  38. COMMAND ${CMAKE_COMMAND} -E copy_directory
  39. ${CMAKE_SOURCE_DIR}/tests/data ${CMAKE_BINARY_DIR}/data)
  40. add_executable(009-uri 009-uri.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  41. target_link_libraries(009-uri syncspirit_test_lib)
  42. add_test(009-uri "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/009-uri")
  43. add_executable(010-upnp-support 010-upnp-support.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  44. target_link_libraries(010-upnp-support syncspirit_test_lib)
  45. add_test(010-upnp-support "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/010-upnp-support")
  46. add_executable(011-tls-util 011-tls-util.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  47. target_link_libraries(011-tls-util syncspirit_test_lib)
  48. add_test(011-tls-util "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/011-tls-util")
  49. add_executable(012-base32 012-base32.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  50. target_link_libraries(012-base32 syncspirit_test_lib)
  51. add_test(012-base32 "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/012-base32")
  52. add_executable(013-global-discovery 013-global-discovery.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  53. target_link_libraries(013-global-discovery syncspirit_test_lib)
  54. add_test(013-global-discovery "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/013-global-discovery")
  55. add_executable(014-configuration 014-configuration.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  56. target_link_libraries(014-configuration syncspirit_test_lib)
  57. add_test(014-configuration "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/014-configuration")
  58. add_executable(015-logger 015-logger.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  59. target_link_libraries(015-logger syncspirit_test_lib)
  60. add_test(015-logger "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/015-logger")
  61. add_executable(016-relay-support 016-relay-support.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  62. target_link_libraries(016-relay-support syncspirit_test_lib)
  63. add_test(016-relay-support "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/016-relay-support")
  64. add_executable(017-fs-utils 017-fs-utils.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  65. target_link_libraries(017-fs-utils syncspirit_test_lib)
  66. add_test(017-fs-utils "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/017-fs-utils")
  67. add_executable(020-generic-map 020-generic-map.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  68. target_link_libraries(020-generic-map syncspirit_test_lib)
  69. add_test(020-generic-map "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/020-generic-map")
  70. add_executable(025-device_id 025-device_id.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  71. target_link_libraries(025-device_id syncspirit_test_lib)
  72. add_test(025-device_id "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/025-device_id")
  73. add_executable(029-diff-generic 029-diff-generic.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  74. target_link_libraries(029-diff-generic syncspirit_test_lib)
  75. add_test(029-diff-generic "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/029-diff-generic")
  76. add_executable(030-diff-load-cluster 030-diff-load-cluster.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  77. target_link_libraries(030-diff-load-cluster syncspirit_test_lib)
  78. add_test(030-diff-load-cluster "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/030-diff-load-cluster")
  79. add_executable(031-diff-cluster_update 031-diff-cluster_update.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  80. target_link_libraries(031-diff-cluster_update syncspirit_test_lib)
  81. add_test(031-diff-cluster_update "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/031-diff-cluster_update")
  82. add_executable(032-diff-modify 032-diff-modify.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  83. target_link_libraries(032-diff-modify syncspirit_test_lib)
  84. add_test(032-diff-modify "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/032-diff-modify")
  85. add_executable(033-diffs-trivial 033-diffs-trivial.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  86. target_link_libraries(033-diffs-trivial syncspirit_test_lib)
  87. add_test(033-diffs-trivial "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/033-diffs-trivial")
  88. add_executable(034-diff-local_update 034-diff-local_update.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  89. target_link_libraries(034-diff-local_update syncspirit_test_lib)
  90. add_test(034-diff-local_update "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/034-diff-local_update")
  91. add_executable(036-diff-blocks 036-diff-blocks.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  92. target_link_libraries(036-diff-blocks syncspirit_test_lib)
  93. add_test(036-diff-blocks "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/036-diff-blocks")
  94. add_executable(037-diff-update_folder 037-diff-update_folder.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  95. target_link_libraries(037-diff-update_folder syncspirit_test_lib)
  96. add_test(037-diff-update_folder "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/037-diff-update_folder")
  97. add_executable(038-diff-clone_finish-file 038-diff-clone_finish-file.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  98. target_link_libraries(038-diff-clone_finish-file syncspirit_test_lib)
  99. add_test(038-diff-clone_finish-file "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/038-diff-clone_finish-file")
  100. add_executable(050-file_iterator 050-file_iterator.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  101. target_link_libraries(050-file_iterator syncspirit_test_lib)
  102. add_test(050-file_iterator "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/050-file_iterator")
  103. add_executable(051-block_iterator 051-block_iterator.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  104. target_link_libraries(051-block_iterator syncspirit_test_lib)
  105. add_test(051-block_iterator "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/051-block_iterator")
  106. add_executable(052-file_info 052-file_info.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  107. target_link_libraries(052-file_info syncspirit_test_lib)
  108. add_test(052-file_info "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/052-file_info")
  109. add_executable(053-scan_task 053-scan_task.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  110. target_link_libraries(053-scan_task syncspirit_test_lib)
  111. add_test(053-scan_task "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/053-scan_task")
  112. add_executable(054-updates_streamer 054-updates_streamer.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  113. target_link_libraries(054-updates_streamer syncspirit_test_lib)
  114. add_test(054-updates_streamer "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/054-updates_streamer")
  115. add_executable(060-bep 060-bep.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  116. target_link_libraries(060-bep syncspirit_test_lib)
  117. add_test(060-bep "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/060-bep")
  118. add_executable(070-db 070-db.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  119. target_link_libraries(070-db syncspirit_test_lib)
  120. add_test(070-db "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/070-db")
  121. add_executable(071-fs_actor 071-fs_actor.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  122. target_link_libraries(071-fs_actor syncspirit_test_lib)
  123. add_test(071-fs_actor "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/071-fs_actor")
  124. add_executable(072-global_discovery 072-global_discovery.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  125. target_link_libraries(072-global_discovery syncspirit_test_lib)
  126. add_test(072-global_discovery "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/072-global_discovery")
  127. add_executable(073-dialer 073-dialer.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  128. target_link_libraries(073-dialer syncspirit_test_lib)
  129. add_test(073-dialer "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/073-dialer")
  130. add_executable(074-hasher 074-hasher.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  131. target_link_libraries(074-hasher syncspirit_test_lib)
  132. add_test(074-hasher "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/074-hasher")
  133. add_executable(075-controller 075-controller.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  134. target_link_libraries(075-controller syncspirit_test_lib)
  135. add_test(075-controller "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/075-controller")
  136. add_executable(076-scan_actor 076-scan_actor.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  137. target_link_libraries(076-scan_actor syncspirit_test_lib)
  138. add_test(076-scan_actor "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/076-scan_actor")
  139. add_executable(077-initiator 077-initiator.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  140. target_link_libraries(077-initiator syncspirit_test_lib)
  141. add_test(077-initiator "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/077-initiator")
  142. add_executable(078-relay 078-relay.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  143. target_link_libraries(078-relay syncspirit_test_lib)
  144. add_test(078-relay "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/078-relay")
  145. add_executable(079-peer 079-peer.cpp $<$<PLATFORM_ID:Windows>:win32-resource.rc>)
  146. target_link_libraries(079-peer syncspirit_test_lib)
  147. add_test(079-peer "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/079-peer")