RunCMakeTest.cmake 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. include(RunCMake)
  2. run_cmake(XcodeFileType)
  3. run_cmake(XcodeAttributeGenex)
  4. run_cmake(XcodeAttributeGenexError)
  5. run_cmake(XcodeObjectNeedsQuote)
  6. run_cmake(XcodeOptimizationFlags)
  7. run_cmake(XcodePreserveNonOptimizationFlags)
  8. run_cmake(XcodePreserveObjcFlag)
  9. if (NOT XCODE_VERSION VERSION_LESS 6)
  10. run_cmake(XcodePlatformFrameworks)
  11. endif()
  12. # Use a single build tree for a few tests without cleaning.
  13. if(NOT XCODE_VERSION VERSION_LESS 5)
  14. set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeInstallIOS-build)
  15. set(RunCMake_TEST_NO_CLEAN 1)
  16. set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_BINARY_DIR}/ios_install")
  17. file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
  18. file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
  19. run_cmake(XcodeInstallIOS)
  20. run_cmake_command(XcodeInstallIOS-install ${CMAKE_COMMAND} --build . --target install)
  21. unset(RunCMake_TEST_BINARY_DIR)
  22. unset(RunCMake_TEST_NO_CLEAN)
  23. unset(RunCMake_TEST_OPTIONS)
  24. set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesOSX-build)
  25. set(RunCMake_TEST_NO_CLEAN 1)
  26. set(RunCMake_TEST_OPTIONS "-DTEST_IOS=OFF")
  27. file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
  28. file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
  29. run_cmake(XcodeBundles)
  30. run_cmake_command(XcodeBundles-build ${CMAKE_COMMAND} --build .)
  31. unset(RunCMake_TEST_BINARY_DIR)
  32. unset(RunCMake_TEST_NO_CLEAN)
  33. unset(RunCMake_TEST_OPTIONS)
  34. set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesIOS-build)
  35. set(RunCMake_TEST_NO_CLEAN 1)
  36. set(RunCMake_TEST_OPTIONS "-DTEST_IOS=ON")
  37. file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
  38. file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
  39. run_cmake(XcodeBundles)
  40. run_cmake_command(XcodeBundles-build ${CMAKE_COMMAND} --build .)
  41. unset(RunCMake_TEST_BINARY_DIR)
  42. unset(RunCMake_TEST_NO_CLEAN)
  43. unset(RunCMake_TEST_OPTIONS)
  44. endif()
  45. if(NOT XCODE_VERSION VERSION_LESS 7)
  46. set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesWatchOS-build)
  47. set(RunCMake_TEST_NO_CLEAN 1)
  48. set(RunCMake_TEST_OPTIONS "-DTEST_WATCHOS=ON")
  49. file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
  50. file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
  51. run_cmake(XcodeBundles)
  52. run_cmake_command(XcodeBundles-build ${CMAKE_COMMAND} --build .)
  53. unset(RunCMake_TEST_BINARY_DIR)
  54. unset(RunCMake_TEST_NO_CLEAN)
  55. unset(RunCMake_TEST_OPTIONS)
  56. endif()
  57. if(NOT XCODE_VERSION VERSION_LESS 7.1)
  58. set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesTvOS-build)
  59. set(RunCMake_TEST_NO_CLEAN 1)
  60. set(RunCMake_TEST_OPTIONS "-DTEST_TVOS=ON")
  61. file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
  62. file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
  63. run_cmake(XcodeBundles)
  64. run_cmake_command(XcodeBundles-build ${CMAKE_COMMAND} --build .)
  65. unset(RunCMake_TEST_BINARY_DIR)
  66. unset(RunCMake_TEST_NO_CLEAN)
  67. unset(RunCMake_TEST_OPTIONS)
  68. endif()
  69. if(NOT XCODE_VERSION VERSION_LESS 7)
  70. set(RunCMake_TEST_OPTIONS "-DCMAKE_TOOLCHAIN_FILE=${RunCMake_SOURCE_DIR}/osx.cmake")
  71. run_cmake(XcodeTbdStub)
  72. unset(RunCMake_TEST_OPTIONS)
  73. endif()
  74. if(NOT XCODE_VERSION VERSION_LESS 6)
  75. set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeIOSInstallCombined-build)
  76. set(RunCMake_TEST_NO_CLEAN 1)
  77. set(RunCMake_TEST_OPTIONS
  78. "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install"
  79. "-DCMAKE_IOS_INSTALL_COMBINED=YES")
  80. file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
  81. file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
  82. run_cmake(XcodeIOSInstallCombined)
  83. run_cmake_command(XcodeIOSInstallCombined-build ${CMAKE_COMMAND} --build .)
  84. run_cmake_command(XcodeIOSInstallCombined-install ${CMAKE_COMMAND} --build . --target install)
  85. unset(RunCMake_TEST_BINARY_DIR)
  86. unset(RunCMake_TEST_NO_CLEAN)
  87. unset(RunCMake_TEST_OPTIONS)
  88. set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeIOSInstallCombinedPrune-build)
  89. set(RunCMake_TEST_NO_CLEAN 1)
  90. set(RunCMake_TEST_OPTIONS
  91. "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install"
  92. "-DCMAKE_IOS_INSTALL_COMBINED=YES")
  93. file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
  94. file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
  95. run_cmake(XcodeIOSInstallCombinedPrune)
  96. run_cmake_command(XcodeIOSInstallCombinedPrune-build ${CMAKE_COMMAND} --build .)
  97. run_cmake_command(XcodeIOSInstallCombinedPrune-install ${CMAKE_COMMAND} --build . --target install)
  98. unset(RunCMake_TEST_BINARY_DIR)
  99. unset(RunCMake_TEST_NO_CLEAN)
  100. unset(RunCMake_TEST_OPTIONS)
  101. endif()