CMakeLists.txt 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. cmake_minimum_required(VERSION 2.8.9)
  2. project(spine_unit_test)
  3. set(CMAKE_INSTALL_PREFIX "./")
  4. set(CMAKE_VERBOSE_MAKEFILE ON)
  5. if(MSVC)
  6. set (CMAKE_CXX_FLAGS "-Wall -Wextra -Wnon-virtual-dtor -pedantic -std=c++11 -fno-rtti -DKANJI_MEMTRACE -DUSE_CPP11_MUTEX")
  7. endif()
  8. #########################################################
  9. # set includes
  10. #########################################################
  11. include_directories(teamcity minicppunit tests memory)
  12. #########################################################
  13. # Add Sources
  14. #########################################################
  15. set(MINICPP_SRC
  16. minicppunit/MiniCppUnit.cxx
  17. )
  18. set(TEAMCITY_SRC
  19. teamcity/teamcity_cppunit.cpp
  20. teamcity/teamcity_messages.cpp
  21. )
  22. set(TEST_SRC
  23. tests/SpineEventMonitor.cpp
  24. tests/EmptyTestFixture.cpp
  25. tests/C_InterfaceTestFixture.cpp
  26. tests/CPP_InterfaceTestFixture.cpp
  27. tests/MemoryTestFixture.cpp
  28. )
  29. set(MEMLEAK_SRC
  30. memory/KMemory.cpp
  31. memory/KString.cpp
  32. )
  33. #########################################################
  34. # setup main project
  35. #########################################################
  36. add_executable(spine_unit_test main.cpp ${MINICPP_SRC} ${TEAMCITY_SRC} ${TEST_SRC} ${MEMLEAK_SRC})
  37. target_link_libraries(spine_unit_test spine-c)
  38. #########################################################
  39. # copy resources to build output directory
  40. #########################################################
  41. add_custom_command(TARGET spine_unit_test PRE_BUILD
  42. COMMAND ${CMAKE_COMMAND} -E copy_directory
  43. ${CMAKE_CURRENT_LIST_DIR}/../../examples/spineboy/export $<TARGET_FILE_DIR:spine_unit_test>/testdata/spineboy)
  44. add_custom_command(TARGET spine_unit_test PRE_BUILD
  45. COMMAND ${CMAKE_COMMAND} -E copy_directory
  46. ${CMAKE_CURRENT_LIST_DIR}/../../examples/raptor/export $<TARGET_FILE_DIR:spine_unit_test>/testdata/raptor)
  47. add_custom_command(TARGET spine_unit_test PRE_BUILD
  48. COMMAND ${CMAKE_COMMAND} -E copy_directory
  49. ${CMAKE_CURRENT_LIST_DIR}/../../examples/goblins/export $<TARGET_FILE_DIR:spine_unit_test>/testdata/goblins)