1
0

AddTest.cmake 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. set(CMAKE_INTERMEDIATE_DIR_STRATEGY FULL CACHE STRING "" FORCE)
  2. enable_language(C)
  3. enable_testing()
  4. set(CMAKE_CROSSCOMPILING 1)
  5. add_test(NAME DoesNotUseEmulator
  6. COMMAND ${CMAKE_COMMAND} -E echo "Hi")
  7. add_executable(exe main.c)
  8. get_property(emulator TARGET exe PROPERTY CROSSCOMPILING_EMULATOR)
  9. set_property(TARGET exe PROPERTY CROSSCOMPILING_EMULATOR "$<1:${emulator}>")
  10. add_test(NAME UsesEmulator
  11. COMMAND exe)
  12. add_test(NAME DoesNotUseEmulatorWithGenex
  13. COMMAND $<TARGET_FILE:exe>)
  14. add_subdirectory(AddTest)
  15. add_test(NAME UsesEmulatorWithExecTargetFromSubdirAddedWithoutGenex
  16. COMMAND subdir_exe_no_genex)
  17. add_test(NAME DoesNotUseEmulatorWithExecTargetFromSubdirAddedWithGenex
  18. COMMAND $<TARGET_FILE:subdir_exe_with_genex>)
  19. set(CMAKE_TEST_LAUNCHER "$<1:${CMAKE_CROSSCOMPILING_EMULATOR}>")
  20. add_executable(exe_test_launcher main.c)
  21. unset(CMAKE_TEST_LAUNCHER)
  22. add_test(NAME UsesTestLauncherAndEmulator
  23. COMMAND exe_test_launcher)
  24. add_executable(local_emulator ../pseudo_emulator.c)
  25. add_executable(use_emulator_local main.c)
  26. set_property(TARGET use_emulator_local PROPERTY CROSSCOMPILING_EMULATOR "$<TARGET_FILE:local_emulator>")
  27. add_test(NAME UsesLocalEmulator COMMAND use_emulator_local)