Browse Source

Tests: Split some RunCMake.XcodeProject cases into a separate test

The `RunCMake.XcodeProject` has many cases and occasionally fails
due to timeout.  Move iOS and other device-specific cases to a new
`RunCMake.XcodeProject-Device` test.
Brad King 2 years ago
parent
commit
a4d114e8cd
34 changed files with 340 additions and 311 deletions
  1. 1 0
      Tests/RunCMake/CMakeLists.txt
  2. 3 0
      Tests/RunCMake/XcodeProject-Device/CMakeLists.txt
  3. 0 0
      Tests/RunCMake/XcodeProject-Device/DeploymentTarget.c
  4. 0 0
      Tests/RunCMake/XcodeProject-Device/DeploymentTarget.cmake
  5. 0 0
      Tests/RunCMake/XcodeProject-Device/EffectivePlatformNameOFF.cmake
  6. 303 0
      Tests/RunCMake/XcodeProject-Device/RunCMakeTest.cmake
  7. 0 0
      Tests/RunCMake/XcodeProject-Device/XCTestAddBundle.cmake
  8. 0 0
      Tests/RunCMake/XcodeProject-Device/XCTestLookup.cmake
  9. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeBundles-install-check.cmake
  10. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeBundles.cmake
  11. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombined-cmakeinstall-check.cmake
  12. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombined-install-check.cmake
  13. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombined.cmake
  14. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedPrune-install-check.cmake
  15. 2 0
      Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedPrune-install-stdout.txt
  16. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedPrune.cmake
  17. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedSingleArch-cmakeinstall-check.cmake
  18. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedSingleArch-install-check.cmake
  19. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedSingleArch.cmake
  20. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeInstallIOS-install-stdout.txt
  21. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeInstallIOS.cmake
  22. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeMultiplatform.cmake
  23. 1 0
      Tests/RunCMake/XcodeProject-Device/XcodeRemoveExcessiveISystem.cmake
  24. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeTbdStub-stdout.txt
  25. 0 0
      Tests/RunCMake/XcodeProject-Device/XcodeTbdStub.cmake
  26. 18 0
      Tests/RunCMake/XcodeProject-Device/dummy_main.swift
  27. 3 0
      Tests/RunCMake/XcodeProject-Device/foo.cpp
  28. 0 0
      Tests/RunCMake/XcodeProject-Device/main.c
  29. 4 0
      Tests/RunCMake/XcodeProject-Device/main.cpp
  30. 0 0
      Tests/RunCMake/XcodeProject-Device/main.m
  31. 0 0
      Tests/RunCMake/XcodeProject-Device/osx.cmake
  32. 1 306
      Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
  33. 0 2
      Tests/RunCMake/XcodeProject/XcodeIOSInstallCombinedPrune-install-stdout.txt
  34. 4 3
      Tests/RunCMake/XcodeProject/XcodeRemoveExcessiveISystem.cmake

+ 1 - 0
Tests/RunCMake/CMakeLists.txt

@@ -674,6 +674,7 @@ if(XCODE_VERSION)
   add_RunCMake_test(XcodeProject -DXCODE_VERSION=${XCODE_VERSION}
   add_RunCMake_test(XcodeProject -DXCODE_VERSION=${XCODE_VERSION}
                                  -DCMAKE_HOST_SYSTEM_PROCESSOR=${CMAKE_HOST_SYSTEM_PROCESSOR}
                                  -DCMAKE_HOST_SYSTEM_PROCESSOR=${CMAKE_HOST_SYSTEM_PROCESSOR}
                                  -DCMake_TEST_Swift=${CMake_TEST_Swift})
                                  -DCMake_TEST_Swift=${CMake_TEST_Swift})
+  add_RunCMake_test(XcodeProject-Device -DXCODE_VERSION=${XCODE_VERSION})
   add_RunCMake_test(XcodeProject-Embed -DXCODE_VERSION=${XCODE_VERSION})
   add_RunCMake_test(XcodeProject-Embed -DXCODE_VERSION=${XCODE_VERSION})
 
 
   # This test can take a very long time due to lots of combinations.
   # This test can take a very long time due to lots of combinations.

+ 3 - 0
Tests/RunCMake/XcodeProject-Device/CMakeLists.txt

@@ -0,0 +1,3 @@
+cmake_minimum_required(VERSION 3.5)
+project(${RunCMake_TEST} NONE)
+include(${RunCMake_TEST}.cmake)

+ 0 - 0
Tests/RunCMake/XcodeProject/DeploymentTarget.c → Tests/RunCMake/XcodeProject-Device/DeploymentTarget.c


+ 0 - 0
Tests/RunCMake/XcodeProject/DeploymentTarget.cmake → Tests/RunCMake/XcodeProject-Device/DeploymentTarget.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/EffectivePlatformNameOFF.cmake → Tests/RunCMake/XcodeProject-Device/EffectivePlatformNameOFF.cmake


+ 303 - 0
Tests/RunCMake/XcodeProject-Device/RunCMakeTest.cmake

@@ -0,0 +1,303 @@
+include(RunCMake)
+
+# Isolate device tests from host architecture selection.
+unset(ENV{CMAKE_OSX_ARCHITECTURES})
+
+if(NOT XCODE_VERSION VERSION_LESS 5)
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeInstallIOS-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS
+    "-DCMAKE_SYSTEM_NAME=iOS"
+    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_BINARY_DIR}/ios_install")
+
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+  run_cmake(XcodeInstallIOS)
+  run_cmake_command(XcodeInstallIOS-install ${CMAKE_COMMAND} --build . --target install)
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+  unset(RunCMake_TEST_OPTIONS)
+
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesOSX-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS
+    "-DCMAKE_SYSTEM_NAME=Darwin"
+    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
+
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+  run_cmake(XcodeBundles)
+  run_cmake_command(XcodeBundles-build-macOS ${CMAKE_COMMAND} --build .)
+  run_cmake_command(XcodeBundles-install-macOS ${CMAKE_COMMAND} --build . --target install)
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+  unset(RunCMake_TEST_OPTIONS)
+
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesIOS-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS
+    "-DCMAKE_SYSTEM_NAME=iOS"
+    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
+
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+  run_cmake(XcodeBundles)
+  run_cmake_command(XcodeBundles-build-iOS ${CMAKE_COMMAND} --build .)
+  run_cmake_command(XcodeBundles-install-iOS ${CMAKE_COMMAND} --build . --target install)
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+  unset(RunCMake_TEST_OPTIONS)
+endif()
+
+if(NOT XCODE_VERSION VERSION_LESS 7)
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesWatchOS-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS
+    "-DCMAKE_SYSTEM_NAME=watchOS"
+    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
+
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+  run_cmake(XcodeBundles)
+  run_cmake_command(XcodeBundles-build-watchOS ${CMAKE_COMMAND} --build .)
+  run_cmake_command(XcodeBundles-install-watchOS ${CMAKE_COMMAND} --build . --target install)
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+  unset(RunCMake_TEST_OPTIONS)
+endif()
+
+if(NOT XCODE_VERSION VERSION_LESS 7.1)
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesTvOS-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS
+    "-DCMAKE_SYSTEM_NAME=tvOS"
+    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
+
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+  run_cmake(XcodeBundles)
+  run_cmake_command(XcodeBundles-build-tvOS ${CMAKE_COMMAND} --build .)
+  run_cmake_command(XcodeBundles-install-tvOS ${CMAKE_COMMAND} --build . --target install)
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+  unset(RunCMake_TEST_OPTIONS)
+endif()
+
+if(NOT XCODE_VERSION VERSION_LESS 7)
+  set(RunCMake_TEST_OPTIONS "-DCMAKE_TOOLCHAIN_FILE=${RunCMake_SOURCE_DIR}/osx.cmake")
+  run_cmake(XcodeTbdStub)
+  unset(RunCMake_TEST_OPTIONS)
+endif()
+
+if(XCODE_VERSION VERSION_GREATER_EQUAL 6)
+  # XcodeIOSInstallCombined
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeIOSInstallCombined-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS
+    "-DCMAKE_SYSTEM_NAME=iOS"
+    "-DCMAKE_IOS_INSTALL_COMBINED=YES"
+    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
+
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+  run_cmake(XcodeIOSInstallCombined)
+  run_cmake_command(XcodeIOSInstallCombined-build ${CMAKE_COMMAND} --build .)
+  if(XCODE_VERSION VERSION_LESS 12)
+    run_cmake_command(XcodeIOSInstallCombined-install ${CMAKE_COMMAND} --build . --target install)
+  endif()
+  # --build defaults to Debug, --install defaults to Release, so we have to
+  # specify the configuration explicitly
+  run_cmake_command(XcodeIOSInstallCombined-cmakeinstall
+    ${CMAKE_COMMAND} --install . --config Debug
+  )
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+  unset(RunCMake_TEST_OPTIONS)
+
+  # XcodeIOSInstallCombinedPrune
+  # FIXME(#24011): Xcode 14 removed support for older architectures the test needs.
+  if(XCODE_VERSION VERSION_LESS 14)
+    set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeIOSInstallCombinedPrune-build)
+    set(RunCMake_TEST_NO_CLEAN 1)
+    set(RunCMake_TEST_OPTIONS
+      "-DCMAKE_SYSTEM_NAME=iOS"
+      "-DCMAKE_IOS_INSTALL_COMBINED=YES"
+      "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
+
+    file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+    file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+    run_cmake(XcodeIOSInstallCombinedPrune)
+    run_cmake_command(XcodeIOSInstallCombinedPrune-build ${CMAKE_COMMAND} --build .)
+    if(XCODE_VERSION VERSION_LESS 12)
+      run_cmake_command(XcodeIOSInstallCombinedPrune-install ${CMAKE_COMMAND} --build . --target install)
+    endif()
+    # --build defaults to Debug, --install defaults to Release, so we have to
+    # specify the configuration explicitly
+    run_cmake_command(XcodeIOSInstallCombinedPrune-cmakeinstall
+      ${CMAKE_COMMAND} --install . --config Debug
+    )
+
+    unset(RunCMake_TEST_BINARY_DIR)
+    unset(RunCMake_TEST_NO_CLEAN)
+    unset(RunCMake_TEST_OPTIONS)
+  endif()
+
+  # XcodeIOSInstallCombinedSingleArch
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeIOSInstallCombinedSingleArch-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS
+    "-DCMAKE_SYSTEM_NAME=iOS"
+    "-DCMAKE_IOS_INSTALL_COMBINED=YES"
+    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
+
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+  run_cmake(XcodeIOSInstallCombinedSingleArch)
+  run_cmake_command(XcodeIOSInstallCombinedSingleArch-build ${CMAKE_COMMAND} --build .)
+  if(XCODE_VERSION VERSION_LESS 12)
+    run_cmake_command(XcodeIOSInstallCombinedSingleArch-install ${CMAKE_COMMAND} --build . --target install)
+  endif()
+  # --build defaults to Debug, --install defaults to Release, so we have to
+  # specify the configuration explicitly
+  run_cmake_command(XcodeIOSInstallCombinedSingleArch-cmakeinstall
+    ${CMAKE_COMMAND} --install . --config Debug
+  )
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+  unset(RunCMake_TEST_OPTIONS)
+endif()
+
+if(NOT XCODE_VERSION VERSION_LESS 5)
+  # XcodeMultiplatform
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeMultiplatform-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS "${IOS_DEPLOYMENT_TARGET}")
+
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+  run_cmake(XcodeMultiplatform)
+
+  # build ios before macos
+  run_cmake_command(XcodeMultiplatform-iphonesimulator-build ${CMAKE_COMMAND} --build . -- -sdk iphonesimulator)
+  run_cmake_command(XcodeMultiplatform-iphonesimulator-install ${CMAKE_COMMAND} --build . --target install -- -sdk iphonesimulator DESTDIR=${RunCMake_TEST_BINARY_DIR}/_install_iphonesimulator)
+
+  run_cmake_command(XcodeMultiplatform-macosx-build ${CMAKE_COMMAND} --build . -- -sdk macosx)
+  run_cmake_command(XcodeMultiplatform-macosx-install ${CMAKE_COMMAND} --build . --target install -- -sdk macosx DESTDIR=${RunCMake_TEST_BINARY_DIR}/_install_macosx)
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+  unset(RunCMake_TEST_OPTIONS)
+
+  # EffectivePlatformNameOFF
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/EffectivePlatformNameOFF-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS "-DCMAKE_SYSTEM_NAME=iOS" "-DCMAKE_OSX_SYSROOT=iphonesimulator")
+
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+  run_cmake(EffectivePlatformNameOFF)
+
+  run_cmake_command(EffectivePlatformNameOFF-iphonesimulator-build ${CMAKE_COMMAND} --build .)
+  run_cmake_command(EffectivePlatformNameOFF-iphonesimulator-install ${CMAKE_COMMAND} --build . --target install -- DESTDIR=${RunCMake_TEST_BINARY_DIR}/_install_iphonesimulator)
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+  unset(RunCMake_TEST_OPTIONS)
+endif()
+
+if(XCODE_VERSION VERSION_GREATER_EQUAL 8)
+  function(deployment_target_test SystemName SDK)
+    set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/DeploymentTarget-${SDK}-build)
+    set(RunCMake_TEST_NO_CLEAN 1)
+    set(RunCMake_TEST_OPTIONS "-DCMAKE_SYSTEM_NAME=${SystemName}" "-DCMAKE_OSX_SYSROOT=${SDK}")
+
+    file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+    file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+    run_cmake(DeploymentTarget)
+    run_cmake_command(DeploymentTarget-${SDK} ${CMAKE_COMMAND} --build .)
+  endfunction()
+
+  deployment_target_test(Darwin macosx)
+  deployment_target_test(iOS iphoneos)
+  deployment_target_test(iOS iphonesimulator)
+  deployment_target_test(tvOS appletvos)
+  deployment_target_test(tvOS appletvsimulator)
+  deployment_target_test(watchOS watchos)
+  deployment_target_test(watchOS watchsimulator)
+endif()
+
+if(XCODE_VERSION VERSION_GREATER_EQUAL 8)
+  function(xctest_lookup_test SystemName SDK)
+    set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XCTestLookup-${SDK}-build)
+    set(RunCMake_TEST_OPTIONS "-DCMAKE_SYSTEM_NAME=${SystemName}" "-DCMAKE_OSX_SYSROOT=${SDK}")
+
+    run_cmake(XCTestLookup)
+  endfunction()
+
+  xctest_lookup_test(Darwin macosx)
+  xctest_lookup_test(iOS iphoneos)
+  xctest_lookup_test(iOS iphonesimulator)
+  xctest_lookup_test(tvOS appletvos)
+  xctest_lookup_test(tvOS appletvsimulator)
+endif()
+
+if(XCODE_VERSION VERSION_GREATER_EQUAL 8)
+  function(XcodeRemoveExcessiveISystemSDK SDK)
+    set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeRemoveExcessiveISystemSDK-${SDK}-build)
+    set(RunCMake_TEST_OPTIONS "-DCMAKE_SYSTEM_NAME=iOS" "-DCMAKE_OSX_SYSROOT=${SDK}")
+    run_cmake(XcodeRemoveExcessiveISystem)
+    set(RunCMake_TEST_NO_CLEAN 1)
+    run_cmake_command(XcodeRemoveExcessiveISystemSDK-${SDK}-build ${CMAKE_COMMAND} --build .)
+  endfunction()
+
+  XcodeRemoveExcessiveISystemSDK(iphoneos)
+  XcodeRemoveExcessiveISystemSDK(iphonesimulator)
+endif()
+
+if (XCODE_VERSION VERSION_GREATER_EQUAL 7.3)
+  function(xctest_add_bundle_test SystemName SDK BuildSystemVersion ExpectedOutputDir)
+    set(RunCMake_TEST_BINARY_DIR
+      ${RunCMake_BINARY_DIR}/DeploymentTarget-${SystemName}-${SDK}-${BuildSystemVersion}-build)
+    set(RunCMake_TEST_OPTIONS
+      "-DCMAKE_SYSTEM_NAME=${SystemName}"
+      "-DCMAKE_OSX_SYSROOT=${SDK}"
+      "-DTEST_EXPECTED_OUTPUT_DIR=${ExpectedOutputDir}")
+    unset(RunCMake_GENERATOR_TOOLSET)
+    if(BuildSystemVersion)
+      set(RunCMake_GENERATOR_TOOLSET "buildsystem=${BuildSystemVersion}")
+    endif()
+    run_cmake(XCTestAddBundle)
+  endfunction()
+
+  if(XCODE_VERSION VERSION_GREATER_EQUAL 12)
+    xctest_add_bundle_test(Darwin macosx "1" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
+    xctest_add_bundle_test(Darwin macosx "12" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
+    xctest_add_bundle_test(iOS iphonesimulator "1" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
+    if (XCODE_VERSION VERSION_LESS 12.5)
+      xctest_add_bundle_test(iOS iphonesimulator "12" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>")
+    else()
+      xctest_add_bundle_test(iOS iphonesimulator "12" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
+    endif()
+  else()
+    xctest_add_bundle_test(Darwin macosx "" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
+    xctest_add_bundle_test(iOS iphonesimulator "" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
+  endif()
+endif()

+ 0 - 0
Tests/RunCMake/XcodeProject/XCTestAddBundle.cmake → Tests/RunCMake/XcodeProject-Device/XCTestAddBundle.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XCTestLookup.cmake → Tests/RunCMake/XcodeProject-Device/XCTestLookup.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeBundles-install-check.cmake → Tests/RunCMake/XcodeProject-Device/XcodeBundles-install-check.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeBundles.cmake → Tests/RunCMake/XcodeProject-Device/XcodeBundles.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeIOSInstallCombined-cmakeinstall-check.cmake → Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombined-cmakeinstall-check.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeIOSInstallCombined-install-check.cmake → Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombined-install-check.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeIOSInstallCombined.cmake → Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombined.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeIOSInstallCombinedPrune-install-check.cmake → Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedPrune-install-check.cmake


+ 2 - 0
Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedPrune-install-stdout.txt

@@ -0,0 +1,2 @@
+.*Unexpected architecture `i386` detected.*
+.*Unexpected architecture `arm64` detected.*

+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeIOSInstallCombinedPrune.cmake → Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedPrune.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeIOSInstallCombinedSingleArch-cmakeinstall-check.cmake → Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedSingleArch-cmakeinstall-check.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeIOSInstallCombinedSingleArch-install-check.cmake → Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedSingleArch-install-check.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeIOSInstallCombinedSingleArch.cmake → Tests/RunCMake/XcodeProject-Device/XcodeIOSInstallCombinedSingleArch.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeInstallIOS-install-stdout.txt → Tests/RunCMake/XcodeProject-Device/XcodeInstallIOS-install-stdout.txt


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeInstallIOS.cmake → Tests/RunCMake/XcodeProject-Device/XcodeInstallIOS.cmake


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeMultiplatform.cmake → Tests/RunCMake/XcodeProject-Device/XcodeMultiplatform.cmake


+ 1 - 0
Tests/RunCMake/XcodeProject-Device/XcodeRemoveExcessiveISystem.cmake

@@ -0,0 +1 @@
+include(${CMAKE_CURRENT_LIST_DIR}/../XcodeProject/XcodeRemoveExcessiveISystem.cmake)

+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeTbdStub-stdout.txt → Tests/RunCMake/XcodeProject-Device/XcodeTbdStub-stdout.txt


+ 0 - 0
Tests/RunCMake/XcodeProject/XcodeTbdStub.cmake → Tests/RunCMake/XcodeProject-Device/XcodeTbdStub.cmake


+ 18 - 0
Tests/RunCMake/XcodeProject-Device/dummy_main.swift

@@ -0,0 +1,18 @@
+#if os(iOS)
+import UIKit
+
+@UIApplicationMain
+class MyApp: UIResponder, UIApplicationDelegate {
+}
+
+#elseif os(macOS)
+import SwiftUI
+
+@main
+struct MyApp: App {
+    var body: some Scene {
+        WindowGroup {
+        }
+    }
+}
+#endif

+ 3 - 0
Tests/RunCMake/XcodeProject-Device/foo.cpp

@@ -0,0 +1,3 @@
+void foo()
+{
+}

+ 0 - 0
Tests/RunCMake/XcodeProject-Device/main.c


+ 4 - 0
Tests/RunCMake/XcodeProject-Device/main.cpp

@@ -0,0 +1,4 @@
+int main()
+{
+  return 0;
+}

+ 0 - 0
Tests/RunCMake/XcodeProject/main.m → Tests/RunCMake/XcodeProject-Device/main.m


+ 0 - 0
Tests/RunCMake/XcodeProject/osx.cmake → Tests/RunCMake/XcodeProject-Device/osx.cmake


+ 1 - 306
Tests/RunCMake/XcodeProject/RunCMakeTest.cmake

@@ -169,309 +169,4 @@ endfunction()
 
 
 BundleLinkBundle()
 BundleLinkBundle()
 
 
-
-# Isolate device tests from host architecture selection.
-unset(ENV{CMAKE_OSX_ARCHITECTURES})
-
-# Use a single build tree for a few tests without cleaning.
-
-if(NOT XCODE_VERSION VERSION_LESS 5)
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeInstallIOS-build)
-  set(RunCMake_TEST_NO_CLEAN 1)
-  set(RunCMake_TEST_OPTIONS
-    "-DCMAKE_SYSTEM_NAME=iOS"
-    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_BINARY_DIR}/ios_install")
-
-  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-  run_cmake(XcodeInstallIOS)
-  run_cmake_command(XcodeInstallIOS-install ${CMAKE_COMMAND} --build . --target install)
-
-  unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_NO_CLEAN)
-  unset(RunCMake_TEST_OPTIONS)
-
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesOSX-build)
-  set(RunCMake_TEST_NO_CLEAN 1)
-  set(RunCMake_TEST_OPTIONS
-    "-DCMAKE_SYSTEM_NAME=Darwin"
-    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
-
-  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-  run_cmake(XcodeBundles)
-  run_cmake_command(XcodeBundles-build-macOS ${CMAKE_COMMAND} --build .)
-  run_cmake_command(XcodeBundles-install-macOS ${CMAKE_COMMAND} --build . --target install)
-
-  unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_NO_CLEAN)
-  unset(RunCMake_TEST_OPTIONS)
-
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesIOS-build)
-  set(RunCMake_TEST_NO_CLEAN 1)
-  set(RunCMake_TEST_OPTIONS
-    "-DCMAKE_SYSTEM_NAME=iOS"
-    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
-
-  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-  run_cmake(XcodeBundles)
-  run_cmake_command(XcodeBundles-build-iOS ${CMAKE_COMMAND} --build .)
-  run_cmake_command(XcodeBundles-install-iOS ${CMAKE_COMMAND} --build . --target install)
-
-  unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_NO_CLEAN)
-  unset(RunCMake_TEST_OPTIONS)
-endif()
-
-if(NOT XCODE_VERSION VERSION_LESS 7)
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesWatchOS-build)
-  set(RunCMake_TEST_NO_CLEAN 1)
-  set(RunCMake_TEST_OPTIONS
-    "-DCMAKE_SYSTEM_NAME=watchOS"
-    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
-
-  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-  run_cmake(XcodeBundles)
-  run_cmake_command(XcodeBundles-build-watchOS ${CMAKE_COMMAND} --build .)
-  run_cmake_command(XcodeBundles-install-watchOS ${CMAKE_COMMAND} --build . --target install)
-
-  unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_NO_CLEAN)
-  unset(RunCMake_TEST_OPTIONS)
-endif()
-
-if(NOT XCODE_VERSION VERSION_LESS 7.1)
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesTvOS-build)
-  set(RunCMake_TEST_NO_CLEAN 1)
-  set(RunCMake_TEST_OPTIONS
-    "-DCMAKE_SYSTEM_NAME=tvOS"
-    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
-
-  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-  run_cmake(XcodeBundles)
-  run_cmake_command(XcodeBundles-build-tvOS ${CMAKE_COMMAND} --build .)
-  run_cmake_command(XcodeBundles-install-tvOS ${CMAKE_COMMAND} --build . --target install)
-
-  unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_NO_CLEAN)
-  unset(RunCMake_TEST_OPTIONS)
-endif()
-
-if(NOT XCODE_VERSION VERSION_LESS 7)
-  set(RunCMake_TEST_OPTIONS "-DCMAKE_TOOLCHAIN_FILE=${RunCMake_SOURCE_DIR}/osx.cmake")
-  run_cmake(XcodeTbdStub)
-  unset(RunCMake_TEST_OPTIONS)
-endif()
-
-if(XCODE_VERSION VERSION_GREATER_EQUAL 6)
-  # XcodeIOSInstallCombined
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeIOSInstallCombined-build)
-  set(RunCMake_TEST_NO_CLEAN 1)
-  set(RunCMake_TEST_OPTIONS
-    "-DCMAKE_SYSTEM_NAME=iOS"
-    "-DCMAKE_IOS_INSTALL_COMBINED=YES"
-    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
-
-  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-  run_cmake(XcodeIOSInstallCombined)
-  run_cmake_command(XcodeIOSInstallCombined-build ${CMAKE_COMMAND} --build .)
-  if(XCODE_VERSION VERSION_LESS 12)
-    run_cmake_command(XcodeIOSInstallCombined-install ${CMAKE_COMMAND} --build . --target install)
-  endif()
-  # --build defaults to Debug, --install defaults to Release, so we have to
-  # specify the configuration explicitly
-  run_cmake_command(XcodeIOSInstallCombined-cmakeinstall
-    ${CMAKE_COMMAND} --install . --config Debug
-  )
-
-  unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_NO_CLEAN)
-  unset(RunCMake_TEST_OPTIONS)
-
-  # XcodeIOSInstallCombinedPrune
-  # FIXME(#24011): Xcode 14 removed support for older architectures the test needs.
-  if(XCODE_VERSION VERSION_LESS 14)
-    set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeIOSInstallCombinedPrune-build)
-    set(RunCMake_TEST_NO_CLEAN 1)
-    set(RunCMake_TEST_OPTIONS
-      "-DCMAKE_SYSTEM_NAME=iOS"
-      "-DCMAKE_IOS_INSTALL_COMBINED=YES"
-      "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
-
-    file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-    file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-    run_cmake(XcodeIOSInstallCombinedPrune)
-    run_cmake_command(XcodeIOSInstallCombinedPrune-build ${CMAKE_COMMAND} --build .)
-    if(XCODE_VERSION VERSION_LESS 12)
-      run_cmake_command(XcodeIOSInstallCombinedPrune-install ${CMAKE_COMMAND} --build . --target install)
-    endif()
-    # --build defaults to Debug, --install defaults to Release, so we have to
-    # specify the configuration explicitly
-    run_cmake_command(XcodeIOSInstallCombinedPrune-cmakeinstall
-      ${CMAKE_COMMAND} --install . --config Debug
-    )
-
-    unset(RunCMake_TEST_BINARY_DIR)
-    unset(RunCMake_TEST_NO_CLEAN)
-    unset(RunCMake_TEST_OPTIONS)
-  endif()
-
-  # XcodeIOSInstallCombinedSingleArch
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeIOSInstallCombinedSingleArch-build)
-  set(RunCMake_TEST_NO_CLEAN 1)
-  set(RunCMake_TEST_OPTIONS
-    "-DCMAKE_SYSTEM_NAME=iOS"
-    "-DCMAKE_IOS_INSTALL_COMBINED=YES"
-    "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/_install")
-
-  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-  run_cmake(XcodeIOSInstallCombinedSingleArch)
-  run_cmake_command(XcodeIOSInstallCombinedSingleArch-build ${CMAKE_COMMAND} --build .)
-  if(XCODE_VERSION VERSION_LESS 12)
-    run_cmake_command(XcodeIOSInstallCombinedSingleArch-install ${CMAKE_COMMAND} --build . --target install)
-  endif()
-  # --build defaults to Debug, --install defaults to Release, so we have to
-  # specify the configuration explicitly
-  run_cmake_command(XcodeIOSInstallCombinedSingleArch-cmakeinstall
-    ${CMAKE_COMMAND} --install . --config Debug
-  )
-
-  unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_NO_CLEAN)
-  unset(RunCMake_TEST_OPTIONS)
-endif()
-
-if(NOT XCODE_VERSION VERSION_LESS 5)
-  # XcodeMultiplatform
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeMultiplatform-build)
-  set(RunCMake_TEST_NO_CLEAN 1)
-  set(RunCMake_TEST_OPTIONS "${IOS_DEPLOYMENT_TARGET}")
-
-  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-  run_cmake(XcodeMultiplatform)
-
-  # build ios before macos
-  run_cmake_command(XcodeMultiplatform-iphonesimulator-build ${CMAKE_COMMAND} --build . -- -sdk iphonesimulator)
-  run_cmake_command(XcodeMultiplatform-iphonesimulator-install ${CMAKE_COMMAND} --build . --target install -- -sdk iphonesimulator DESTDIR=${RunCMake_TEST_BINARY_DIR}/_install_iphonesimulator)
-
-  run_cmake_command(XcodeMultiplatform-macosx-build ${CMAKE_COMMAND} --build . -- -sdk macosx)
-  run_cmake_command(XcodeMultiplatform-macosx-install ${CMAKE_COMMAND} --build . --target install -- -sdk macosx DESTDIR=${RunCMake_TEST_BINARY_DIR}/_install_macosx)
-
-  unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_NO_CLEAN)
-  unset(RunCMake_TEST_OPTIONS)
-
-  # EffectivePlatformNameOFF
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/EffectivePlatformNameOFF-build)
-  set(RunCMake_TEST_NO_CLEAN 1)
-  set(RunCMake_TEST_OPTIONS "-DCMAKE_SYSTEM_NAME=iOS" "-DCMAKE_OSX_SYSROOT=iphonesimulator")
-
-  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-  run_cmake(EffectivePlatformNameOFF)
-
-  run_cmake_command(EffectivePlatformNameOFF-iphonesimulator-build ${CMAKE_COMMAND} --build .)
-  run_cmake_command(EffectivePlatformNameOFF-iphonesimulator-install ${CMAKE_COMMAND} --build . --target install -- DESTDIR=${RunCMake_TEST_BINARY_DIR}/_install_iphonesimulator)
-
-  unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_NO_CLEAN)
-  unset(RunCMake_TEST_OPTIONS)
-endif()
-
-if(XCODE_VERSION VERSION_GREATER_EQUAL 8)
-  function(deployment_target_test SystemName SDK)
-    set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/DeploymentTarget-${SDK}-build)
-    set(RunCMake_TEST_NO_CLEAN 1)
-    set(RunCMake_TEST_OPTIONS "-DCMAKE_SYSTEM_NAME=${SystemName}" "-DCMAKE_OSX_SYSROOT=${SDK}")
-
-    file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
-    file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
-
-    run_cmake(DeploymentTarget)
-    run_cmake_command(DeploymentTarget-${SDK} ${CMAKE_COMMAND} --build .)
-  endfunction()
-
-  deployment_target_test(Darwin macosx)
-  deployment_target_test(iOS iphoneos)
-  deployment_target_test(iOS iphonesimulator)
-  deployment_target_test(tvOS appletvos)
-  deployment_target_test(tvOS appletvsimulator)
-  deployment_target_test(watchOS watchos)
-  deployment_target_test(watchOS watchsimulator)
-endif()
-
-if(XCODE_VERSION VERSION_GREATER_EQUAL 8)
-  function(xctest_lookup_test SystemName SDK)
-    set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XCTestLookup-${SDK}-build)
-    set(RunCMake_TEST_OPTIONS "-DCMAKE_SYSTEM_NAME=${SystemName}" "-DCMAKE_OSX_SYSROOT=${SDK}")
-
-    run_cmake(XCTestLookup)
-  endfunction()
-
-  xctest_lookup_test(Darwin macosx)
-  xctest_lookup_test(iOS iphoneos)
-  xctest_lookup_test(iOS iphonesimulator)
-  xctest_lookup_test(tvOS appletvos)
-  xctest_lookup_test(tvOS appletvsimulator)
-endif()
-
-if(XCODE_VERSION VERSION_GREATER_EQUAL 8)
-  function(XcodeRemoveExcessiveISystemSDK SDK)
-    set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeRemoveExcessiveISystemSDK-${SDK}-build)
-    set(RunCMake_TEST_OPTIONS "-DCMAKE_SYSTEM_NAME=iOS" "-DCMAKE_OSX_SYSROOT=${SDK}")
-    run_cmake(XcodeRemoveExcessiveISystem)
-    set(RunCMake_TEST_NO_CLEAN 1)
-    run_cmake_command(XcodeRemoveExcessiveISystemSDK-${SDK}-build ${CMAKE_COMMAND} --build .)
-  endfunction()
-
-  XcodeRemoveExcessiveISystemSDK(iphoneos)
-  XcodeRemoveExcessiveISystemSDK(iphonesimulator)
-endif()
-
-if (XCODE_VERSION VERSION_GREATER_EQUAL 7.3)
-  function(xctest_add_bundle_test SystemName SDK BuildSystemVersion ExpectedOutputDir)
-    set(RunCMake_TEST_BINARY_DIR
-      ${RunCMake_BINARY_DIR}/DeploymentTarget-${SystemName}-${SDK}-${BuildSystemVersion}-build)
-    set(RunCMake_TEST_OPTIONS
-      "-DCMAKE_SYSTEM_NAME=${SystemName}"
-      "-DCMAKE_OSX_SYSROOT=${SDK}"
-      "-DTEST_EXPECTED_OUTPUT_DIR=${ExpectedOutputDir}")
-    unset(RunCMake_GENERATOR_TOOLSET)
-    if(BuildSystemVersion)
-      set(RunCMake_GENERATOR_TOOLSET "buildsystem=${BuildSystemVersion}")
-    endif()
-    run_cmake(XCTestAddBundle)
-  endfunction()
-
-  if(XCODE_VERSION VERSION_GREATER_EQUAL 12)
-    xctest_add_bundle_test(Darwin macosx "1" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
-    xctest_add_bundle_test(Darwin macosx "12" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
-    xctest_add_bundle_test(iOS iphonesimulator "1" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
-    if (XCODE_VERSION VERSION_LESS 12.5)
-      xctest_add_bundle_test(iOS iphonesimulator "12" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>")
-    else()
-      xctest_add_bundle_test(iOS iphonesimulator "12" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
-    endif()
-  else()
-    xctest_add_bundle_test(Darwin macosx "" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
-    xctest_add_bundle_test(iOS iphonesimulator "" "$<TARGET_BUNDLE_CONTENT_DIR:TestedApp>/PlugIns")
-  endif()
-endif()
-
-# Please add macOS-only tests above before the device-specific tests.
+# Please add device-specific tests to '../XcodeProject-Device/RunCMakeTest.cmake'.

+ 0 - 2
Tests/RunCMake/XcodeProject/XcodeIOSInstallCombinedPrune-install-stdout.txt

@@ -1,2 +0,0 @@
-.*Unexpected architecture `i386` detected.*
-.*Unexpected architecture `arm64` detected.*

+ 4 - 3
Tests/RunCMake/XcodeProject/XcodeRemoveExcessiveISystem.cmake

@@ -1,3 +1,4 @@
+# This file is also included from '../XcodeProject-Device/XcodeRemoveExcessiveISystem.cmake'.
 
 
 if(NOT "$ENV{CMAKE_OSX_ARCHITECTURES}" MATCHES "[;$]")
 if(NOT "$ENV{CMAKE_OSX_ARCHITECTURES}" MATCHES "[;$]")
   set(USE_SWIFT 1)
   set(USE_SWIFT 1)
@@ -33,12 +34,12 @@ list(REMOVE_ITEM CMAKE_SYSTEM_PREFIX_PATH /usr/local /usr / /usr/X11R6 /usr/pkg
 
 
 find_package(ZLIB REQUIRED)
 find_package(ZLIB REQUIRED)
 add_library (framework_dependency STATIC)
 add_library (framework_dependency STATIC)
-target_sources (framework_dependency PRIVATE use_cmath.cpp)
+target_sources (framework_dependency PRIVATE ${CMAKE_CURRENT_LIST_DIR}/use_cmath.cpp)
 target_link_libraries(framework_dependency INTERFACE ZLIB::ZLIB)
 target_link_libraries(framework_dependency INTERFACE ZLIB::ZLIB)
 
 
-add_library (framework_test SHARED use_cmath.cpp)
+add_library (framework_test SHARED ${CMAKE_CURRENT_LIST_DIR}/use_cmath.cpp)
 if(USE_SWIFT)
 if(USE_SWIFT)
-  target_sources(framework_test PRIVATE foo.swift)
+  target_sources(framework_test PRIVATE ${CMAKE_CURRENT_LIST_DIR}/foo.swift)
 endif()
 endif()
 target_link_libraries (framework_test PRIVATE framework_dependency)
 target_link_libraries (framework_test PRIVATE framework_dependency)