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

CMakeLists.txt 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. SET(TESTSRC rspamd_mem_pool_test.c
  2. rspamd_statfile_test.c
  3. rspamd_url_test.c
  4. rspamd_dns_test.c
  5. rspamd_dkim_test.c
  6. rspamd_rrd_test.c
  7. rspamd_radix_test.c
  8. rspamd_shingles_test.c
  9. rspamd_upstream_test.c
  10. rspamd_lua_pcall_vs_resume_test.c
  11. rspamd_lua_test.c
  12. rspamd_cryptobox_test.c
  13. rspamd_heap_test.c
  14. rspamd_test_suite.c)
  15. ADD_EXECUTABLE(rspamd-test EXCLUDE_FROM_ALL ${TESTSRC})
  16. SET_TARGET_PROPERTIES(rspamd-test PROPERTIES LINKER_LANGUAGE C)
  17. SET_TARGET_PROPERTIES(rspamd-test PROPERTIES COMPILE_FLAGS "-DRSPAMD_TEST")
  18. ADD_DEPENDENCIES(rspamd-test rspamd-server)
  19. IF(USE_CXX_LINKER)
  20. SET_TARGET_PROPERTIES(rspamd-test PROPERTIES LINKER_LANGUAGE CXX)
  21. ENDIF()
  22. TARGET_LINK_LIBRARIES(rspamd-test rspamd-server)
  23. IF(NOT "${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
  24. # Also add dependencies for convenience
  25. FILE(GLOB_RECURSE LUA_TESTS "${CMAKE_CURRENT_SOURCE_DIR}/lua/*")
  26. ADD_CUSTOM_TARGET(units-dir COMMAND
  27. ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/lua/unit"
  28. )
  29. ADD_DEPENDENCIES(rspamd-test units-dir)
  30. FOREACH(_LF IN LISTS LUA_TESTS)
  31. GET_FILENAME_COMPONENT(_NM "${_LF}" NAME)
  32. IF("${_LF}" MATCHES "^.*/unit/.*$")
  33. SET(_DS "${CMAKE_CURRENT_BINARY_DIR}/lua/unit/${_NM}")
  34. ELSE()
  35. SET(_DS "${CMAKE_CURRENT_BINARY_DIR}/lua/${_NM}")
  36. ENDIF()
  37. ADD_CUSTOM_TARGET("${_NM}" COMMAND
  38. ${CMAKE_COMMAND} -E copy_if_different ${_LF} ${_DS}
  39. SOURCES "${_LF}"
  40. )
  41. ADD_DEPENDENCIES(rspamd-test "${_NM}")
  42. ENDFOREACH()
  43. ENDIF()