RunCMakeTest.cmake 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. include(RunCMake)
  2. set(RunCMake_GENERATOR_TOOLSET "")
  3. run_cmake(NoToolset)
  4. if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[012456]")
  5. set(RunCMake_GENERATOR_TOOLSET "Test Toolset")
  6. run_cmake(TestToolset)
  7. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,cuda=0.0")
  8. run_cmake(TestToolsetCudaBoth)
  9. set(RunCMake_GENERATOR_TOOLSET ",cuda=0.0")
  10. run_cmake(TestToolsetCudaVersionOnly)
  11. set(RunCMake_GENERATOR_TOOLSET "cuda=0.0")
  12. run_cmake(TestToolsetCudaVersionOnly)
  13. set(RunCMake_GENERATOR_TOOLSET "cuda=C:\\dummy\\cuda")
  14. run_cmake(TestToolsetCudaPathOnly)
  15. if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[2456]")
  16. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,host=x64")
  17. run_cmake(TestToolsetHostArchBoth)
  18. set(RunCMake_GENERATOR_TOOLSET ",host=x64")
  19. run_cmake(TestToolsetHostArchOnly_x64)
  20. set(RunCMake_GENERATOR_TOOLSET "host=x64")
  21. run_cmake(TestToolsetHostArchOnly_x64)
  22. set(RunCMake_GENERATOR_TOOLSET "host=x86")
  23. run_cmake(TestToolsetHostArchOnly_x86)
  24. set(RunCMake_GENERATOR_TOOLSET "Test Toolset")
  25. run_cmake(TestToolsetHostArchNone)
  26. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,host=x65")
  27. run_cmake(BadToolsetHostArch)
  28. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,host=x64,host=x86")
  29. run_cmake(BadToolsetHostArchTwice)
  30. if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[56]")
  31. set(RunCMake_GENERATOR_TOOLSET "VCTargetsPath=Test Path")
  32. run_cmake(TestToolsetVCTargetsPathOnly)
  33. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,version=Test Toolset Version")
  34. run_cmake(TestToolsetVersionBoth)
  35. set(RunCMake_GENERATOR_TOOLSET ",version=Test Toolset Version")
  36. run_cmake(TestToolsetVersionOnly)
  37. set(RunCMake_GENERATOR_TOOLSET "version=Test Toolset Version")
  38. run_cmake(TestToolsetVersionOnly)
  39. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,version=Bad Toolset Version")
  40. run_cmake(BadToolsetVersion)
  41. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,version=Test Toolset Version,version=Test Toolset Version")
  42. run_cmake(BadToolsetVersionTwice)
  43. endif()
  44. else()
  45. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,host=x64")
  46. run_cmake(BadToolsetHostArch)
  47. endif()
  48. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,not_a_key")
  49. run_cmake(BadToolsetFormat)
  50. elseif("${RunCMake_GENERATOR}" STREQUAL "Xcode")
  51. set(RunCMake_GENERATOR_TOOLSET "Test Toolset")
  52. run_cmake(TestToolset)
  53. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,host=x64")
  54. run_cmake(BadToolsetHostArchXcode)
  55. set(RunCMake_GENERATOR_TOOLSET "buildsystem=bad")
  56. run_cmake(BadToolsetXcodeBuildSystem)
  57. if(XCODE_VERSION VERSION_GREATER_EQUAL 12)
  58. set(RunCMake_GENERATOR_TOOLSET "Test Toolset")
  59. run_cmake(TestToolsetXcodeBuildSystemDefault12)
  60. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,buildsystem=1")
  61. run_cmake(TestToolsetXcodeBuildSystem1)
  62. set(RunCMake_GENERATOR_TOOLSET "Test Toolset,buildsystem=12")
  63. run_cmake(TestToolsetXcodeBuildSystem12)
  64. else()
  65. set(RunCMake_GENERATOR_TOOLSET "Test Toolset")
  66. run_cmake(TestToolsetXcodeBuildSystemDefault1)
  67. set(RunCMake_GENERATOR_TOOLSET "buildsystem=12")
  68. run_cmake(BadToolsetXcodeBuildSystem12)
  69. endif()
  70. else()
  71. set(RunCMake_GENERATOR_TOOLSET "Bad Toolset")
  72. run_cmake(BadToolset)
  73. endif()
  74. set(RunCMake_GENERATOR_TOOLSET "")
  75. set(RunCMake_TEST_OPTIONS -T "Extra Toolset")
  76. run_cmake(TwoToolsets)
  77. unset(RunCMake_TEST_OPTIONS)
  78. if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[012456]|Xcode")
  79. set(RunCMake_TEST_OPTIONS -DCMAKE_TOOLCHAIN_FILE=${RunCMake_SOURCE_DIR}/TestToolset-toolchain.cmake)
  80. run_cmake(TestToolsetToolchain)
  81. unset(RunCMake_TEST_OPTIONS)
  82. else()
  83. set(RunCMake_TEST_OPTIONS -DCMAKE_TOOLCHAIN_FILE=${RunCMake_SOURCE_DIR}/BadToolset-toolchain.cmake)
  84. run_cmake(BadToolsetToolchain)
  85. unset(RunCMake_TEST_OPTIONS)
  86. endif()