CMakeLists.txt 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. cmake_minimum_required(VERSION 2.8.7)
  2. project(test)
  3. enable_testing()
  4. set(googleTest_Dir ${CMAKE_CURRENT_SOURCE_DIR}/googletest)
  5. if (EXISTS ${googleTest_Dir})
  6. SET(GTestSrc ${googleTest_Dir}/googletest)
  7. SET(GMockSrc ${googleTest_Dir}/googlemock)
  8. else ()
  9. message( FATAL_ERROR "No googletest src dir found!")
  10. endif ()
  11. include_directories(${GTestSrc} ${GTestSrc}/include ${GMockSrc} ${GMockSrc}/include)
  12. include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/test)
  13. include_directories(${Boost_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIR})
  14. set(test_SRCS
  15. StdInc.cpp
  16. main.cpp
  17. CMemoryBufferTest.cpp
  18. CVcmiTestConfig.cpp
  19. battle/BattleHexTest.cpp
  20. battle/CHealthTest.cpp
  21. map/CMapEditManagerTest.cpp
  22. map/CMapFormatTest.cpp
  23. map/MapComparer.cpp
  24. )
  25. set(test_HEADERS
  26. StdInc.h
  27. CVcmiTestConfig.h
  28. map/MapComparer.h
  29. )
  30. add_subdirectory(googletest)
  31. add_executable(vcmitest ${test_SRCS} ${test_HEADERS} ${GTestSrc}/src/gtest-all.cc ${GMockSrc}/src/gmock-all.cc)
  32. target_link_libraries(vcmitest vcmi ${RT_LIB} ${DL_LIB})
  33. add_test(vcmitest vcmitest)
  34. vcmi_set_output_dir(vcmitest "")
  35. set_target_properties(vcmitest PROPERTIES ${PCH_PROPERTIES})
  36. cotire(vcmitest)
  37. # Files to copy to the build directory
  38. add_custom_target(vcmitestFiles ALL)
  39. set(vcmitest_FILES
  40. testdata/TerrainViewTest.h3m
  41. testdata/terrainViewMappings.json
  42. testdata/ObjectPropertyTest/header.json
  43. testdata/ObjectPropertyTest/objects.json
  44. testdata/ObjectPropertyTest/surface_terrain.json
  45. testdata/ObjectPropertyTest/underground_terrain.json
  46. )
  47. foreach(file ${vcmitest_FILES})
  48. add_custom_command(TARGET vcmitestFiles POST_BUILD
  49. COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${file}" ${CMAKE_CURRENT_BINARY_DIR}
  50. )
  51. endforeach()