Parcourir la source

Merge topic 'split-run-cmake-find_package-tests' into release-4.0

5ae2596027 Tests: Simplify and improve RunCMake/find_package-CPS tests
619c1bacfd Tests: Separate out CPS RunCMake/find_package tests

Acked-by: Kitware Robot <[email protected]>
Acked-by: Matthew Woehlke <[email protected]>
Merge-request: !10301
Brad King il y a 8 mois
Parent
commit
8137cf2822
32 fichiers modifiés avec 94 ajouts et 100 suppressions
  1. 1 0
      Tests/RunCMake/CMakeLists.txt
  2. 3 0
      Tests/RunCMake/find_package-CPS/CMakeLists.txt
  3. 27 0
      Tests/RunCMake/find_package-CPS/ExperimentalWarning-stderr.txt
  4. 10 0
      Tests/RunCMake/find_package-CPS/ExperimentalWarning.cmake
  5. 0 0
      Tests/RunCMake/find_package-CPS/MissingComponent-result.txt
  6. 1 1
      Tests/RunCMake/find_package-CPS/MissingComponent-stderr.txt
  7. 7 0
      Tests/RunCMake/find_package-CPS/MissingComponent.cmake
  8. 0 0
      Tests/RunCMake/find_package-CPS/MissingComponentDependency-result.txt
  9. 0 0
      Tests/RunCMake/find_package-CPS/MissingComponentDependency-stderr.txt
  10. 7 0
      Tests/RunCMake/find_package-CPS/MissingComponentDependency.cmake
  11. 0 0
      Tests/RunCMake/find_package-CPS/MissingTransitiveComponent-result.txt
  12. 1 1
      Tests/RunCMake/find_package-CPS/MissingTransitiveComponent-stderr.txt
  13. 7 0
      Tests/RunCMake/find_package-CPS/MissingTransitiveComponent.cmake
  14. 0 0
      Tests/RunCMake/find_package-CPS/MissingTransitiveComponentDependency-result.txt
  15. 0 0
      Tests/RunCMake/find_package-CPS/MissingTransitiveComponentDependency-stderr.txt
  16. 8 0
      Tests/RunCMake/find_package-CPS/MissingTransitiveComponentDependency.cmake
  17. 0 0
      Tests/RunCMake/find_package-CPS/MissingTransitiveDependency-result.txt
  18. 0 8
      Tests/RunCMake/find_package-CPS/MissingTransitiveDependency-stderr.txt
  19. 7 0
      Tests/RunCMake/find_package-CPS/MissingTransitiveDependency.cmake
  20. 15 0
      Tests/RunCMake/find_package-CPS/RunCMakeTest.cmake
  21. 0 8
      Tests/RunCMake/find_package-CPS/Setup.cmake
  22. 0 0
      Tests/RunCMake/find_package-CPS/cps/componenttest-extra.cps
  23. 0 0
      Tests/RunCMake/find_package-CPS/cps/componenttest.cps
  24. 0 0
      Tests/RunCMake/find_package-CPS/cps/incomplete.cps
  25. 0 0
      Tests/RunCMake/find_package-CPS/cps/stillincomplete.cps
  26. 0 0
      Tests/RunCMake/find_package-CPS/cps/transitiveincomplete.cps
  27. 0 0
      Tests/RunCMake/find_package-CPS/cps/transitivemissing.cps
  28. 0 19
      Tests/RunCMake/find_package/MissingComponent.cmake
  29. 0 19
      Tests/RunCMake/find_package/MissingComponentDependency.cmake
  30. 0 19
      Tests/RunCMake/find_package/MissingTransitiveComponent.cmake
  31. 0 20
      Tests/RunCMake/find_package/MissingTransitiveComponentDependency.cmake
  32. 0 5
      Tests/RunCMake/find_package/RunCMakeTest.cmake

+ 1 - 0
Tests/RunCMake/CMakeLists.txt

@@ -629,6 +629,7 @@ add_RunCMake_test(file-STRINGS)
 add_RunCMake_test(find_file -DMINGW=${MINGW})
 add_RunCMake_test(find_library -DMINGW=${MINGW} -DCYGWIN=${CYGWIN} -DMSYS=${MSYS} -DMSVC=${MSVC})
 add_RunCMake_test(find_package -DMINGW=${MINGW} -DMSYS=${MSYS})
+add_RunCMake_test(find_package-CPS)
 add_RunCMake_test(find_path -DMINGW=${MINGW})
 add_RunCMake_test(find_program -DCMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME})
 add_RunCMake_test(foreach)

+ 3 - 0
Tests/RunCMake/find_package-CPS/CMakeLists.txt

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

+ 27 - 0
Tests/RunCMake/find_package-CPS/ExperimentalWarning-stderr.txt

@@ -0,0 +1,27 @@
+CMake Warning \(dev\) at ExperimentalWarning\.cmake:[0-9]+ \(find_package\):
+  CMake's support for importing package information in the Common Package
+  Specification format \(via find_package\) is experimental\.  It is meant only
+  for experimentation and feedback to CMake developers\.
+Call Stack \(most recent call first\):
+  CMakeLists\.txt:3 \(include\)
+This warning is for project developers\.  Use -Wno-dev to suppress it\.
+
+CMake Warning at ExperimentalWarning\.cmake:[0-9]+ \(find_package\):
+  By not providing "FindDoesNotExist\.cmake" in CMAKE_MODULE_PATH this project
+  has asked CMake to find a package configuration file provided by
+  "DoesNotExist", but CMake did not find one\.
+
+  Could not find a package configuration file provided by "DoesNotExist" with
+  any of the following names:
+
+    DoesNotExist\.cps
+    doesnotexist\.cps
+    DoesNotExistConfig\.cmake
+    doesnotexist-config\.cmake
+
+  Add the installation prefix of "DoesNotExist" to CMAKE_PREFIX_PATH or set
+  "DoesNotExist_DIR" to a directory containing one of the above files\.  If
+  "DoesNotExist" provides a separate development package or SDK, be sure it
+  has been installed\.
+Call Stack \(most recent call first\):
+  CMakeLists\.txt:3 \(include\)

+ 10 - 0
Tests/RunCMake/find_package-CPS/ExperimentalWarning.cmake

@@ -0,0 +1,10 @@
+cmake_minimum_required(VERSION 4.0)
+
+set(
+  CMAKE_EXPERIMENTAL_FIND_CPS_PACKAGES
+  "e82e467b-f997-4464-8ace-b00808fff261"
+  )
+
+include(Setup.cmake)
+
+find_package(DoesNotExist)

+ 0 - 0
Tests/RunCMake/find_package/MissingComponent-result.txt → Tests/RunCMake/find_package-CPS/MissingComponent-result.txt


+ 1 - 1
Tests/RunCMake/find_package/MissingComponent-stderr.txt → Tests/RunCMake/find_package-CPS/MissingComponent-stderr.txt

@@ -5,7 +5,7 @@ CMake Error at MissingComponent.cmake:[0-9]+ \(find_package\):
   The following configuration files were considered but not accepted:
 (
     [^
-]*/Tests/RunCMake/find_package/cps/[Cc]omponent[Tt]est\.cps, version: unknown)+
+]*/Tests/RunCMake/find_package-CPS/cps/[Cc]omponent[Tt]est\.cps, version: unknown)+
 
 Call Stack \(most recent call first\):
   CMakeLists\.txt:[0-9]+ \(include\)

+ 7 - 0
Tests/RunCMake/find_package-CPS/MissingComponent.cmake

@@ -0,0 +1,7 @@
+cmake_minimum_required(VERSION 4.0)
+
+include(Setup.cmake)
+
+###############################################################################
+# Test requesting unavailable components from a package.
+find_package(ComponentTest REQUIRED COMPONENTS DoesNotExist)

+ 0 - 0
Tests/RunCMake/find_package/MissingComponentDependency-result.txt → Tests/RunCMake/find_package-CPS/MissingComponentDependency-result.txt


+ 0 - 0
Tests/RunCMake/find_package/MissingComponentDependency-stderr.txt → Tests/RunCMake/find_package-CPS/MissingComponentDependency-stderr.txt


+ 7 - 0
Tests/RunCMake/find_package-CPS/MissingComponentDependency.cmake

@@ -0,0 +1,7 @@
+cmake_minimum_required(VERSION 4.0)
+
+include(Setup.cmake)
+
+###############################################################################
+# Test requesting components with missing dependencies from a package.
+find_package(ComponentTest REQUIRED COMPONENTS Incomplete)

+ 0 - 0
Tests/RunCMake/find_package/MissingTransitiveComponent-result.txt → Tests/RunCMake/find_package-CPS/MissingTransitiveComponent-result.txt


+ 1 - 1
Tests/RunCMake/find_package/MissingTransitiveComponent-stderr.txt → Tests/RunCMake/find_package-CPS/MissingTransitiveComponent-stderr.txt

@@ -5,7 +5,7 @@ CMake Error in cps/[Tt]ransitive[Mm]issing\.cps:
   The following configuration files were considered but not accepted:
 (
     [^
-]*/Tests/RunCMake/find_package/cps/[Cc]omponent[Tt]est\.cps, version: unknown)+
+]*/Tests/RunCMake/find_package-CPS/cps/[Cc]omponent[Tt]est\.cps, version: unknown)+
 
 Call Stack \(most recent call first\):
   MissingTransitiveComponent\.cmake:[0-9]+ \(find_package\)

+ 7 - 0
Tests/RunCMake/find_package-CPS/MissingTransitiveComponent.cmake

@@ -0,0 +1,7 @@
+cmake_minimum_required(VERSION 4.0)
+
+include(Setup.cmake)
+
+###############################################################################
+# Test depending on components of another package which are unavailable.
+find_package(TransitiveMissing REQUIRED)

+ 0 - 0
Tests/RunCMake/find_package/MissingTransitiveComponentDependency-result.txt → Tests/RunCMake/find_package-CPS/MissingTransitiveComponentDependency-result.txt


+ 0 - 0
Tests/RunCMake/find_package/MissingTransitiveComponentDependency-stderr.txt → Tests/RunCMake/find_package-CPS/MissingTransitiveComponentDependency-stderr.txt


+ 8 - 0
Tests/RunCMake/find_package-CPS/MissingTransitiveComponentDependency.cmake

@@ -0,0 +1,8 @@
+cmake_minimum_required(VERSION 4.0)
+
+include(Setup.cmake)
+
+###############################################################################
+# Test depending on components of another package which are missing
+# dependencies.
+find_package(TransitiveIncomplete REQUIRED)

+ 0 - 0
Tests/RunCMake/find_package/MissingTransitiveDependency-result.txt → Tests/RunCMake/find_package-CPS/MissingTransitiveDependency-result.txt


+ 0 - 8
Tests/RunCMake/find_package/MissingTransitiveDependency-stderr.txt → Tests/RunCMake/find_package-CPS/MissingTransitiveDependency-stderr.txt

@@ -1,11 +1,3 @@
-CMake Warning \(dev\) at MissingTransitiveDependency\.cmake:[0-9]+ \(find_package\):
-  CMake's support for importing package information in the Common Package
-  Specification format \(via find_package\) is experimental\.  It is meant only
-  for experimentation and feedback to CMake developers.
-Call Stack \(most recent call first\):
-  CMakeLists\.txt:[0-9]+ \(include\)
-This warning is for project developers.  Use -Wno-dev to suppress it.
-+
 CMake Error in cps/[Ss]till[Ii]ncomplete\.cps:
   Could not find a package configuration file provided by "DoesNotExist" with
   any of the following names:

+ 7 - 0
Tests/RunCMake/find_package-CPS/MissingTransitiveDependency.cmake

@@ -0,0 +1,7 @@
+cmake_minimum_required(VERSION 4.0)
+
+include(Setup.cmake)
+
+###############################################################################
+# Test finding a package that is missing dependencies.
+find_package(Incomplete REQUIRED)

+ 15 - 0
Tests/RunCMake/find_package-CPS/RunCMakeTest.cmake

@@ -0,0 +1,15 @@
+include(RunCMake)
+
+run_cmake(ExperimentalWarning)
+
+# Enable experimental feature and suppress warnings
+set(RunCMake_TEST_OPTIONS
+  -Wno-dev
+  "-DCMAKE_EXPERIMENTAL_FIND_CPS_PACKAGES:STRING=e82e467b-f997-4464-8ace-b00808fff261"
+  )
+
+run_cmake(MissingTransitiveDependency)
+run_cmake(MissingComponent)
+run_cmake(MissingComponentDependency)
+run_cmake(MissingTransitiveComponent)
+run_cmake(MissingTransitiveComponentDependency)

+ 0 - 8
Tests/RunCMake/find_package/MissingTransitiveDependency.cmake → Tests/RunCMake/find_package-CPS/Setup.cmake

@@ -1,7 +1,3 @@
-cmake_minimum_required(VERSION 3.31)
-
-set(CMAKE_EXPERIMENTAL_FIND_CPS_PACKAGES "e82e467b-f997-4464-8ace-b00808fff261")
-
 # Protect tests from running inside the default install prefix.
 set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/NotDefaultPrefix")
 
@@ -13,7 +9,3 @@ set(CMAKE_FIND_USE_CMAKE_SYSTEM_PATH OFF)
 set(CMAKE_FIND_USE_INSTALL_PREFIX OFF)
 
 set(CMAKE_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR})
-
-###############################################################################
-# Test finding a package that is missing dependencies.
-find_package(Incomplete REQUIRED)

+ 0 - 0
Tests/RunCMake/find_package/cps/componenttest-extra.cps → Tests/RunCMake/find_package-CPS/cps/componenttest-extra.cps


+ 0 - 0
Tests/RunCMake/find_package/cps/componenttest.cps → Tests/RunCMake/find_package-CPS/cps/componenttest.cps


+ 0 - 0
Tests/RunCMake/find_package/cps/incomplete.cps → Tests/RunCMake/find_package-CPS/cps/incomplete.cps


+ 0 - 0
Tests/RunCMake/find_package/cps/stillincomplete.cps → Tests/RunCMake/find_package-CPS/cps/stillincomplete.cps


+ 0 - 0
Tests/RunCMake/find_package/cps/transitiveincomplete.cps → Tests/RunCMake/find_package-CPS/cps/transitiveincomplete.cps


+ 0 - 0
Tests/RunCMake/find_package/cps/transitivemissing.cps → Tests/RunCMake/find_package-CPS/cps/transitivemissing.cps


+ 0 - 19
Tests/RunCMake/find_package/MissingComponent.cmake

@@ -1,19 +0,0 @@
-cmake_minimum_required(VERSION 3.31)
-
-set(CMAKE_EXPERIMENTAL_FIND_CPS_PACKAGES "e82e467b-f997-4464-8ace-b00808fff261")
-
-# Protect tests from running inside the default install prefix.
-set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/NotDefaultPrefix")
-
-# Disable built-in search paths.
-set(CMAKE_FIND_USE_PACKAGE_ROOT_PATH OFF)
-set(CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH OFF)
-set(CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH OFF)
-set(CMAKE_FIND_USE_CMAKE_SYSTEM_PATH OFF)
-set(CMAKE_FIND_USE_INSTALL_PREFIX OFF)
-
-set(CMAKE_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR})
-
-###############################################################################
-# Test requesting unavailable components from a package.
-find_package(ComponentTest REQUIRED COMPONENTS DoesNotExist)

+ 0 - 19
Tests/RunCMake/find_package/MissingComponentDependency.cmake

@@ -1,19 +0,0 @@
-cmake_minimum_required(VERSION 3.31)
-
-set(CMAKE_EXPERIMENTAL_FIND_CPS_PACKAGES "e82e467b-f997-4464-8ace-b00808fff261")
-
-# Protect tests from running inside the default install prefix.
-set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/NotDefaultPrefix")
-
-# Disable built-in search paths.
-set(CMAKE_FIND_USE_PACKAGE_ROOT_PATH OFF)
-set(CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH OFF)
-set(CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH OFF)
-set(CMAKE_FIND_USE_CMAKE_SYSTEM_PATH OFF)
-set(CMAKE_FIND_USE_INSTALL_PREFIX OFF)
-
-set(CMAKE_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR})
-
-###############################################################################
-# Test requesting components with missing dependencies from a package.
-find_package(ComponentTest REQUIRED COMPONENTS Incomplete)

+ 0 - 19
Tests/RunCMake/find_package/MissingTransitiveComponent.cmake

@@ -1,19 +0,0 @@
-cmake_minimum_required(VERSION 3.31)
-
-set(CMAKE_EXPERIMENTAL_FIND_CPS_PACKAGES "e82e467b-f997-4464-8ace-b00808fff261")
-
-# Protect tests from running inside the default install prefix.
-set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/NotDefaultPrefix")
-
-# Disable built-in search paths.
-set(CMAKE_FIND_USE_PACKAGE_ROOT_PATH OFF)
-set(CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH OFF)
-set(CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH OFF)
-set(CMAKE_FIND_USE_CMAKE_SYSTEM_PATH OFF)
-set(CMAKE_FIND_USE_INSTALL_PREFIX OFF)
-
-set(CMAKE_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR})
-
-###############################################################################
-# Test depending on components of another package which are unavailable.
-find_package(TransitiveMissing REQUIRED)

+ 0 - 20
Tests/RunCMake/find_package/MissingTransitiveComponentDependency.cmake

@@ -1,20 +0,0 @@
-cmake_minimum_required(VERSION 3.31)
-
-set(CMAKE_EXPERIMENTAL_FIND_CPS_PACKAGES "e82e467b-f997-4464-8ace-b00808fff261")
-
-# Protect tests from running inside the default install prefix.
-set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/NotDefaultPrefix")
-
-# Disable built-in search paths.
-set(CMAKE_FIND_USE_PACKAGE_ROOT_PATH OFF)
-set(CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH OFF)
-set(CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH OFF)
-set(CMAKE_FIND_USE_CMAKE_SYSTEM_PATH OFF)
-set(CMAKE_FIND_USE_INSTALL_PREFIX OFF)
-
-set(CMAKE_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR})
-
-###############################################################################
-# Test depending on components of another package which are missing
-# dependencies.
-find_package(TransitiveIncomplete REQUIRED)

+ 0 - 5
Tests/RunCMake/find_package/RunCMakeTest.cmake

@@ -22,11 +22,6 @@ run_cmake_with_options(MissingConfigDebugPkg --debug-find-pkg=NotHere)
 run_cmake(MissingConfigOneName)
 run_cmake(MissingConfigRequired)
 run_cmake(MissingConfigVersion)
-run_cmake(MissingTransitiveDependency)
-run_cmake(MissingComponent)
-run_cmake(MissingComponentDependency)
-run_cmake(MissingTransitiveComponent)
-run_cmake(MissingTransitiveComponentDependency)
 run_cmake(MixedModeOptions)
 run_cmake_with_options(ModuleModeDebugPkg --debug-find-pkg=Foo,Zot)
 run_cmake(PackageRoot)