From 0e53a67a7bfc64a3ebca472f4e18a3f1324e0ade Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Tue, 20 May 2025 20:42:20 +0200 Subject: [PATCH] cmFindPackage: fix over-reporting Both track when a `_DIR` variable is already defined and suppress implicit event reporting when a mode that has no reliable method for such detection. --- Source/cmFindPackageCommand.cxx | 58 ++++- Source/cmFindPackageCommand.h | 11 + .../ConfigureLogTransitionsConfig-config.txt | 236 ++++++++++++++++++ .../ConfigureLogTransitionsConfig-stdout.txt | 9 + .../ConfigureLogTransitionsConfig.cmake | 43 ++++ .../ConfigureLogTransitionsConfig2-config.txt | 236 ++++++++++++++++++ .../ConfigureLogTransitionsConfig2-stderr.txt | 63 +++++ .../ConfigureLogTransitionsConfig2.cmake | 43 ++++ .../ConfigureLogTransitionsModule-config.txt | 57 +++++ .../ConfigureLogTransitionsModule-stderr.txt | 72 ++++++ .../ConfigureLogTransitionsModule.cmake | 41 +++ .../ConfigureLogTransitionsModule2-config.txt | 161 ++++++++++++ .../ConfigureLogTransitionsModule2-stderr.txt | 63 +++++ .../ConfigureLogTransitionsModule2.cmake | 40 +++ .../RunCMake/find_package/RunCMakeTest.cmake | 4 + 15 files changed, 1131 insertions(+), 6 deletions(-) create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-config.txt create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-stdout.txt create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsConfig.cmake create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-config.txt create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-stderr.txt create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2.cmake create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsModule-config.txt create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsModule-stderr.txt create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsModule.cmake create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-config.txt create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-stderr.txt create mode 100644 Tests/RunCMake/find_package/ConfigureLogTransitionsModule2.cmake diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx index 675b69c832..afa034047d 100644 --- a/Source/cmFindPackageCommand.cxx +++ b/Source/cmFindPackageCommand.cxx @@ -614,15 +614,13 @@ void cmFindPackageCommand::InheritOptions(cmFindPackageCommand* other) bool cmFindPackageCommand::IsFound() const { - return !this->FileFound.empty(); + return this->InitialState == FindState::Found; } bool cmFindPackageCommand::IsDefined() const { - // A `find_package` always needs to be rerun because it could create - // variables, provide commands, or targets. Therefore it is never - // "predefined" whether it is found or not. - return false; + return this->InitialState == FindState::Found || + this->InitialState == FindState::NotFound; } bool cmFindPackageCommand::InitialPass(std::vector const& args) @@ -933,6 +931,41 @@ bool cmFindPackageCommand::InitialPass(std::vector const& args) return false; } + bool canBeIrrelevant = true; + if (this->UseConfigFiles || this->UseCpsFiles) { + canBeIrrelevant = false; + if (cmValue v = this->Makefile->GetState()->GetCacheEntryValue( + cmStrCat(this->Name, "_DIR"))) { + if (!v.IsNOTFOUND()) { + this->InitialState = FindState::Found; + } else { + this->InitialState = FindState::NotFound; + } + } + } + + if (this->UseFindModules && + (this->InitialState == FindState::Undefined || + this->InitialState == FindState::NotFound)) { + // There are no definitive cache variables to know if a given `Find` module + // has been searched for or not. However, if we have a `_FOUND` variable, + // use that as an indication of a previous search. + if (cmValue v = + this->Makefile->GetDefinition(cmStrCat(this->Name, "_FOUND"))) { + if (v.IsOn()) { + this->InitialState = FindState::Found; + } else { + this->InitialState = FindState::NotFound; + } + } + } + + // If there is no signaling variable and there's no reason to expect a cache + // variable, mark the initial state as "irrelevant". + if (this->InitialState == FindState::Undefined && canBeIrrelevant) { + this->InitialState = FindState::Irrelevant; + } + // Ignore EXACT with no version. if (this->VersionComplete.empty() && this->VersionExact) { this->VersionExact = false; @@ -3477,6 +3510,19 @@ void cmFindPackageDebugState::FailedAtImpl(std::string const& path, (void)regexName; } +bool cmFindPackageDebugState::ShouldImplicitlyLogEvents() const +{ + auto const* fpc = this->FindPackageCommand; + bool const canUsePackage = fpc->UseConfigFiles || fpc->UseCpsFiles; + return canUsePackage && + fpc->FileFoundMode != cmFindPackageCommand::FoundPackageMode::Module && + std::any_of(fpc->ConsideredPaths.begin(), fpc->ConsideredPaths.end(), + [](cmFindPackageCommand::ConsideredPath const& cp) { + return cp.Mode > + cmFindPackageCommand::FoundPackageMode::Module; + }); +} + void cmFindPackageDebugState::WriteDebug() const { } @@ -3677,7 +3723,7 @@ void cmFindPackageDebugState::WriteEvent(cmConfigureLog& log, log.EndObject(); } // TODO: Add provider information (see #26925) - if (fpc->IsFound()) { + if (!fpc->FileFound.empty()) { log.BeginObject("found"_s); log.WriteValue("path"_s, fpc->FileFound); log.WriteValue("mode"_s, found_mode(fpc->FileFoundMode)); diff --git a/Source/cmFindPackageCommand.h b/Source/cmFindPackageCommand.h index a8eb5a2639..10448a8a3e 100644 --- a/Source/cmFindPackageCommand.h +++ b/Source/cmFindPackageCommand.h @@ -184,6 +184,7 @@ private: { None, Module, + // Do not implicitly log for prior package types. Config, Cps, Provider, @@ -365,6 +366,15 @@ private: friend struct std::hash; friend class cmFindPackageDebugState; + + enum class FindState + { + Undefined, + Irrelevant, + Found, + NotFound, + }; + FindState InitialState = FindState::Undefined; }; namespace std { @@ -395,6 +405,7 @@ public: private: void FoundAtImpl(std::string const& path, std::string regexName) override; void FailedAtImpl(std::string const& path, std::string regexName) override; + bool ShouldImplicitlyLogEvents() const override; void WriteDebug() const override; #ifndef CMAKE_BOOTSTRAP diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-config.txt b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-config.txt new file mode 100644 index 0000000000..4005d9ec6b --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-config.txt @@ -0,0 +1,236 @@ +^ +--- +events:( + - + kind: "find-v1"( + [^ +]*)+| ++ - + kind: "message-v1" + backtrace:( + - "[^"]+")+ + message: \|( ++ [^ +]*)*)* + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: | + NotDefined -> NotFound + - + kind: "find_package-v1" + backtrace: + - "ConfigureLogTransitionsConfig.cmake:[0-9]+ \(find_package\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + name: "ViaConfig" + configs: + - + filename: "ViaConfigConfig.cmake" + kind: "cmake" + - + filename: "viaconfig-config.cmake" + kind: "cmake" + version_request: + exact: false + settings: + required: "optional" + quiet: false + global: false + policy_scope: true + bypass_provider: false + names: + - "ViaConfig" + path_suffixes: + - "" + paths: + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + CMAKE_FIND_USE_PACKAGE_ROOT_PATH: true + CMAKE_FIND_USE_CMAKE_PACKAGE_REGISTRY: true + CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY: true + CMAKE_FIND_ROOT_PATH_MODE: "BOTH" + candidates: + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-build/CMakeFiles/pkgRedirects/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-build/CMakeFiles/pkgRedirects/viaconfig-config.cmake" + mode: "config" + reason: "no_exist"( + - + path: "[^"]*/(viaconfig-config|ViaConfigConfig).cmake" + mode: "config" + reason: "no_exist")* + found: null + search_context:( + [^ +]+)+ + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: | + NotFound -> NotFound + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + NotFound -> Found + - + kind: "find_package-v1" + backtrace: + - "ConfigureLogTransitionsConfig.cmake:[0-9]+ \(find_package\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + name: "ViaConfig" + configs: + - + filename: "ViaConfigConfig.cmake" + kind: "cmake" + - + filename: "viaconfig-config.cmake" + kind: "cmake" + version_request: + exact: false + settings: + required: "optional" + quiet: false + global: false + policy_scope: true + bypass_provider: false + names: + - "ViaConfig" + path_suffixes: + - "" + paths: + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + CMAKE_FIND_USE_PACKAGE_ROOT_PATH: true + CMAKE_FIND_USE_CMAKE_PACKAGE_REGISTRY: true + CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY: true + CMAKE_FIND_ROOT_PATH_MODE: "BOTH" + candidates: + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-build/CMakeFiles/pkgRedirects/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-build/CMakeFiles/pkgRedirects/viaconfig-config.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/viaconfig-config.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/cmake/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/cmake/viaconfig-config.cmake" + mode: "config" + reason: "no_exist" + found: + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/lib/cmake/ViaConfig/ViaConfigConfig.cmake" + mode: "config" + version: "1\.0" + search_context:( + [^ +]*)+ + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + Found -> Found + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + Found -> NotFound + - + kind: "find_package-v1" + backtrace: + - "ConfigureLogTransitionsConfig.cmake:[0-9]+ \(find_package\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + name: "ViaConfig" + configs: + - + filename: "ViaConfigConfig.cmake" + kind: "cmake" + - + filename: "viaconfig-config.cmake" + kind: "cmake" + version_request: + exact: false + settings: + required: "optional" + quiet: false + global: false + policy_scope: true + bypass_provider: false + names: + - "ViaConfig" + path_suffixes: + - "" + paths: + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + CMAKE_FIND_USE_PACKAGE_ROOT_PATH: true + CMAKE_FIND_USE_CMAKE_PACKAGE_REGISTRY: true + CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY: true + CMAKE_FIND_ROOT_PATH_MODE: "BOTH" + candidates: + - + path: "[^"]*/Tests/RunCMake/find_package/ViaConfigConfig.cmake" + mode: "none\?" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/viaconfig-config.cmake" + mode: "none\?" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-build/CMakeFiles/pkgRedirects/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-build/CMakeFiles/pkgRedirects/viaconfig-config.cmake" + mode: "config" + reason: "no_exist"( + - + path: "[^"]*/(viaconfig-config|ViaConfigConfig).cmake" + mode: "config" + reason: "no_exist")* + found: null + search_context:( + [^ +]+)+ + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + END +\.\.\.$ diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-stdout.txt b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-stdout.txt new file mode 100644 index 0000000000..83fa39c080 --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig-stdout.txt @@ -0,0 +1,9 @@ +-- NotDefined -> NotFound +-- Could NOT find ViaConfig \(missing: ViaConfig_DIR\) +-- NotFound -> NotFound +-- Could NOT find ViaConfig \(missing: ViaConfig_DIR\) +-- NotFound -> Found +-- Found -> Found +-- Found -> NotFound +-- Could NOT find ViaConfig \(missing: ViaConfig_DIR\) +-- END diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig.cmake b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig.cmake new file mode 100644 index 0000000000..0ad64ae409 --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig.cmake @@ -0,0 +1,43 @@ +# Stable sorting for predictable behaviors. +set(CMAKE_FIND_PACKAGE_SORT_ORDER NAME) + +# Unset search variables for more predictable output. +unset(CMAKE_FRAMEWORK_PATH) +unset(CMAKE_APPBUNDLE_PATH) +unset(ENV{CMAKE_PREFIX_PATH}) +unset(ENV{CMAKE_FRAMEWORK_PATH}) +unset(ENV{CMAKE_APPBUNDLE_PATH}) + +message(STATUS "NotDefined -> NotFound") +message(CONFIGURE_LOG "NotDefined -> NotFound") +find_package(ViaConfig CONFIG) + +message(STATUS "NotFound -> NotFound") +message(CONFIGURE_LOG "NotFound -> NotFound") +find_package(ViaConfig CONFIG) + +list(INSERT CMAKE_MODULE_PATH 0 + "${CMAKE_CURRENT_LIST_DIR}/ConfigureLog/cmake") +list(INSERT CMAKE_PREFIX_PATH 0 + "${CMAKE_CURRENT_LIST_DIR}/ConfigureLog") + +message(STATUS "NotFound -> Found") +message(CONFIGURE_LOG "NotFound -> Found") +find_package(ViaConfig CONFIG) + +message(STATUS "Found -> Found") +message(CONFIGURE_LOG "Found -> Found") +find_package(ViaConfig CONFIG) + +message(STATUS "Found -> NotFound") +message(CONFIGURE_LOG "Found -> NotFound") +list(REMOVE_AT CMAKE_PREFIX_PATH 0) +list(REMOVE_AT CMAKE_MODULE_PATH 0) +set_property(CACHE ViaConfig_DIR + PROPERTY + VALUE "${CMAKE_CURRENT_SOURCE_DIR}") + +find_package(ViaConfig CONFIG) + +message(STATUS "END") +message(CONFIGURE_LOG "END") diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-config.txt b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-config.txt new file mode 100644 index 0000000000..9b1a88522f --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-config.txt @@ -0,0 +1,236 @@ +^ +--- +events:( + - + kind: "find-v1"( + [^ +]*)+| ++ - + kind: "message-v1" + backtrace:( + - "[^"]+")+ + message: \|( ++ [^ +]*)*)* + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: | + NotDefined -> NotFound + - + kind: "find_package-v1" + backtrace: + - "ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(find_package\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + name: "ViaConfig" + configs: + - + filename: "ViaConfigConfig.cmake" + kind: "cmake" + - + filename: "viaconfig-config.cmake" + kind: "cmake" + version_request: + exact: false + settings: + required: "optional" + quiet: false + global: false + policy_scope: true + bypass_provider: false + names: + - "ViaConfig" + path_suffixes: + - "" + paths: + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + CMAKE_FIND_USE_PACKAGE_ROOT_PATH: true + CMAKE_FIND_USE_CMAKE_PACKAGE_REGISTRY: true + CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY: true + CMAKE_FIND_ROOT_PATH_MODE: "BOTH" + candidates: + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-build/CMakeFiles/pkgRedirects/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-build/CMakeFiles/pkgRedirects/viaconfig-config.cmake" + mode: "config" + reason: "no_exist"( + - + path: "[^"]*/(viaconfig-config|ViaConfigConfig).cmake" + mode: "config" + reason: "no_exist")* + found: null + search_context:( + [^ +]+)+ + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: | + NotFound -> NotFound + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + NotFound -> Found + - + kind: "find_package-v1" + backtrace: + - "ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(find_package\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + name: "ViaConfig" + configs: + - + filename: "ViaConfigConfig.cmake" + kind: "cmake" + - + filename: "viaconfig-config.cmake" + kind: "cmake" + version_request: + exact: false + settings: + required: "optional" + quiet: false + global: false + policy_scope: true + bypass_provider: false + names: + - "ViaConfig" + path_suffixes: + - "" + paths: + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + CMAKE_FIND_USE_PACKAGE_ROOT_PATH: true + CMAKE_FIND_USE_CMAKE_PACKAGE_REGISTRY: true + CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY: true + CMAKE_FIND_ROOT_PATH_MODE: "BOTH" + candidates: + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-build/CMakeFiles/pkgRedirects/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-build/CMakeFiles/pkgRedirects/viaconfig-config.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/viaconfig-config.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/cmake/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/cmake/viaconfig-config.cmake" + mode: "config" + reason: "no_exist" + found: + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLog/lib/cmake/ViaConfig/ViaConfigConfig.cmake" + mode: "config" + version: "1\.0" + search_context:( + [^ +]*)+ + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + Found -> Found + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + Found -> NotFound + - + kind: "find_package-v1" + backtrace: + - "ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(find_package\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + name: "ViaConfig" + configs: + - + filename: "ViaConfigConfig.cmake" + kind: "cmake" + - + filename: "viaconfig-config.cmake" + kind: "cmake" + version_request: + exact: false + settings: + required: "optional" + quiet: false + global: false + policy_scope: true + bypass_provider: false + names: + - "ViaConfig" + path_suffixes: + - "" + paths: + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + CMAKE_FIND_USE_PACKAGE_ROOT_PATH: true + CMAKE_FIND_USE_CMAKE_PACKAGE_REGISTRY: true + CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY: true + CMAKE_FIND_ROOT_PATH_MODE: "BOTH" + candidates: + - + path: "[^"]*/Tests/RunCMake/find_package/ViaConfigConfig.cmake" + mode: "none\?" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/viaconfig-config.cmake" + mode: "none\?" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-build/CMakeFiles/pkgRedirects/ViaConfigConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-build/CMakeFiles/pkgRedirects/viaconfig-config.cmake" + mode: "config" + reason: "no_exist"( + - + path: "[^"]*/(viaconfig-config|ViaConfigConfig).cmake" + mode: "config" + reason: "no_exist")* + found: null + search_context:( + [^ +]+)+ + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + END +\.\.\.$ diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-stderr.txt b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-stderr.txt new file mode 100644 index 0000000000..49c5fc9441 --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2-stderr.txt @@ -0,0 +1,63 @@ +^NotDefined -> NotFound +CMake Warning at ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(find_package\): + By not providing "FindViaConfig.cmake" in CMAKE_MODULE_PATH this project + has asked CMake to find a package configuration file provided by + "ViaConfig", but CMake did not find one. + + Could not find a package configuration file provided by "ViaConfig" with + any of the following names: + + ViaConfigConfig.cmake + viaconfig-config.cmake + + Add the installation prefix of "ViaConfig" to CMAKE_PREFIX_PATH or set + "ViaConfig_DIR" to a directory containing one of the above files. If + "ViaConfig" provides a separate development package or SDK, be sure it has + been installed. +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) + + +NotFound -> NotFound +CMake Warning at ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(find_package\): + By not providing "FindViaConfig.cmake" in CMAKE_MODULE_PATH this project + has asked CMake to find a package configuration file provided by + "ViaConfig", but CMake did not find one. + + Could not find a package configuration file provided by "ViaConfig" with + any of the following names: + + ViaConfigConfig.cmake + viaconfig-config.cmake + + Add the installation prefix of "ViaConfig" to CMAKE_PREFIX_PATH or set + "ViaConfig_DIR" to a directory containing one of the above files. If + "ViaConfig" provides a separate development package or SDK, be sure it has + been installed. +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) + + +NotFound -> Found +Found -> Found +Found -> NotFound +CMake Warning at ConfigureLogTransitionsConfig2.cmake:[0-9]+ \(find_package\): + By not providing "FindViaConfig.cmake" in CMAKE_MODULE_PATH this project + has asked CMake to find a package configuration file provided by + "ViaConfig", but CMake did not find one. + + Could not find a package configuration file provided by "ViaConfig" with + any of the following names: + + ViaConfigConfig.cmake + viaconfig-config.cmake + + Add the installation prefix of "ViaConfig" to CMAKE_PREFIX_PATH or set + "ViaConfig_DIR" to a directory containing one of the above files. If + "ViaConfig" provides a separate development package or SDK, be sure it has + been installed. +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) + + +END diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2.cmake b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2.cmake new file mode 100644 index 0000000000..a82af3dedc --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsConfig2.cmake @@ -0,0 +1,43 @@ +# Stable sorting for predictable behaviors. +set(CMAKE_FIND_PACKAGE_SORT_ORDER NAME) + +# Unset search variables for more predictable output. +unset(CMAKE_FRAMEWORK_PATH) +unset(CMAKE_APPBUNDLE_PATH) +unset(ENV{CMAKE_PREFIX_PATH}) +unset(ENV{CMAKE_FRAMEWORK_PATH}) +unset(ENV{CMAKE_APPBUNDLE_PATH}) + +message("NotDefined -> NotFound") +message(CONFIGURE_LOG "NotDefined -> NotFound") +find_package(ViaConfig) + +message("NotFound -> NotFound") +message(CONFIGURE_LOG "NotFound -> NotFound") +find_package(ViaConfig) + +list(INSERT CMAKE_MODULE_PATH 0 + "${CMAKE_CURRENT_LIST_DIR}/ConfigureLog/cmake") +list(INSERT CMAKE_PREFIX_PATH 0 + "${CMAKE_CURRENT_LIST_DIR}/ConfigureLog") + +message("NotFound -> Found") +message(CONFIGURE_LOG "NotFound -> Found") +find_package(ViaConfig) + +message("Found -> Found") +message(CONFIGURE_LOG "Found -> Found") +find_package(ViaConfig) + +message("Found -> NotFound") +message(CONFIGURE_LOG "Found -> NotFound") +list(REMOVE_AT CMAKE_PREFIX_PATH 0) +list(REMOVE_AT CMAKE_MODULE_PATH 0) +set_property(CACHE ViaConfig_DIR + PROPERTY + VALUE "${CMAKE_CURRENT_SOURCE_DIR}") + +find_package(ViaConfig) + +message("END") +message(CONFIGURE_LOG "END") diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsModule-config.txt b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule-config.txt new file mode 100644 index 0000000000..c2c8eca3f4 --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule-config.txt @@ -0,0 +1,57 @@ +^ +--- +events:( + - + kind: "find-v1"( + [^ +]*)+| ++ - + kind: "message-v1" + backtrace:( + - "[^"]+")+ + message: \|( ++ [^ +]*)*)* + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + NotDefined -> NotFound + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + NotFound -> NotFound + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + NotFound -> Found + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + Found -> Found + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + Found -> NotFound + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + END +\.\.\.$ diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsModule-stderr.txt b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule-stderr.txt new file mode 100644 index 0000000000..31007fbed6 --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule-stderr.txt @@ -0,0 +1,72 @@ +^NotDefined -> NotFound +CMake Warning at ConfigureLogTransitionsModule.cmake:[0-9]+ \(find_package\): + No "FindViaModule.cmake" found in CMAKE_MODULE_PATH. +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) + + +CMake Warning \(dev\) at ConfigureLogTransitionsModule.cmake:[0-9]+ \(find_package\): + FindViaModule.cmake must either be part of this project itself, in this + case adjust CMAKE_MODULE_PATH so that it points to the correct location + inside its source tree. + + Or it must be installed by a package which has already been found via + find_package\(\). In this case make sure that package has indeed been found + and adjust CMAKE_MODULE_PATH to contain the location where that package has + installed FindViaModule.cmake. This must be a location provided by that + package. This error in general means that the buildsystem of this project + is relying on a Find-module without ensuring that it is actually available. + +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) +This warning is for project developers. Use -Wno-dev to suppress it. + +NotFound -> NotFound +CMake Warning at ConfigureLogTransitionsModule.cmake:[0-9]+ \(find_package\): + No "FindViaModule.cmake" found in CMAKE_MODULE_PATH. +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) + + +CMake Warning \(dev\) at ConfigureLogTransitionsModule.cmake:[0-9]+ \(find_package\): + FindViaModule.cmake must either be part of this project itself, in this + case adjust CMAKE_MODULE_PATH so that it points to the correct location + inside its source tree. + + Or it must be installed by a package which has already been found via + find_package\(\). In this case make sure that package has indeed been found + and adjust CMAKE_MODULE_PATH to contain the location where that package has + installed FindViaModule.cmake. This must be a location provided by that + package. This error in general means that the buildsystem of this project + is relying on a Find-module without ensuring that it is actually available. + +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) +This warning is for project developers. Use -Wno-dev to suppress it. + +NotFound -> Found +Found -> Found +Found -> NotFound +CMake Warning at ConfigureLogTransitionsModule.cmake:[0-9]+ \(find_package\): + No "FindViaModule.cmake" found in CMAKE_MODULE_PATH. +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) + + +CMake Warning \(dev\) at ConfigureLogTransitionsModule.cmake:[0-9]+ \(find_package\): + FindViaModule.cmake must either be part of this project itself, in this + case adjust CMAKE_MODULE_PATH so that it points to the correct location + inside its source tree. + + Or it must be installed by a package which has already been found via + find_package\(\). In this case make sure that package has indeed been found + and adjust CMAKE_MODULE_PATH to contain the location where that package has + installed FindViaModule.cmake. This must be a location provided by that + package. This error in general means that the buildsystem of this project + is relying on a Find-module without ensuring that it is actually available. + +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) +This warning is for project developers. Use -Wno-dev to suppress it. + +END$ diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsModule.cmake b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule.cmake new file mode 100644 index 0000000000..455b0a5e02 --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule.cmake @@ -0,0 +1,41 @@ +# Stable sorting for predictable behaviors. +set(CMAKE_FIND_PACKAGE_SORT_ORDER NAME) + +# Unset search variables for more predictable output. +unset(CMAKE_FRAMEWORK_PATH) +unset(CMAKE_APPBUNDLE_PATH) +unset(ENV{CMAKE_PREFIX_PATH}) +unset(ENV{CMAKE_FRAMEWORK_PATH}) +unset(ENV{CMAKE_APPBUNDLE_PATH}) + +message("NotDefined -> NotFound") +message(CONFIGURE_LOG "NotDefined -> NotFound") +find_package(ViaModule MODULE) + +message("NotFound -> NotFound") +message(CONFIGURE_LOG "NotFound -> NotFound") +find_package(ViaModule MODULE) + +list(INSERT CMAKE_MODULE_PATH 0 + "${CMAKE_CURRENT_LIST_DIR}/ConfigureLog/cmake") +list(INSERT CMAKE_PREFIX_PATH 0 + "${CMAKE_CURRENT_LIST_DIR}/ConfigureLog") + +message("NotFound -> Found") +message(CONFIGURE_LOG "NotFound -> Found") +find_package(ViaModule MODULE) + +message("Found -> Found") +message(CONFIGURE_LOG "Found -> Found") +find_package(ViaModule MODULE) + +message("Found -> NotFound") +message(CONFIGURE_LOG "Found -> NotFound") +list(REMOVE_AT CMAKE_PREFIX_PATH 0) +list(REMOVE_AT CMAKE_MODULE_PATH 0) +unset(ViaModule_FOUND) + +find_package(ViaModule MODULE) + +message("END") +message(CONFIGURE_LOG "END") diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-config.txt b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-config.txt new file mode 100644 index 0000000000..c2551868cb --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-config.txt @@ -0,0 +1,161 @@ +^ +--- +events:( + - + kind: "find-v1"( + [^ +]*)+| ++ - + kind: "message-v1" + backtrace:( + - "[^"]+")+ + message: \|( ++ [^ +]*)*)* + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + NotDefined -> NotFound + - + kind: "find_package-v1" + backtrace: + - "ConfigureLogTransitionsModule2.cmake:[0-9]+ \(find_package\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + name: "ViaModule" + configs: + - + filename: "ViaModuleConfig.cmake" + kind: "cmake" + - + filename: "viamodule-config.cmake" + kind: "cmake" + version_request: + exact: false + settings: + required: "optional" + quiet: false + global: false + policy_scope: true + bypass_provider: false + names: + - "ViaModule" + path_suffixes: + - "" + paths: + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + CMAKE_FIND_USE_PACKAGE_ROOT_PATH: true + CMAKE_FIND_USE_CMAKE_PACKAGE_REGISTRY: true + CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY: true + CMAKE_FIND_ROOT_PATH_MODE: "BOTH" + candidates: + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-build/CMakeFiles/pkgRedirects/ViaModuleConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-build/CMakeFiles/pkgRedirects/viamodule-config.cmake" + mode: "config" + reason: "no_exist"( + - + path: "[^"]*/(viamodule-config|ViaModuleConfig).cmake" + mode: "config" + reason: "no_exist")* + found: null + search_context:( + [^ +]*)+ + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + NotFound -> NotFound + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + NotFound -> Found + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + Found -> Found + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + Found -> NotFound + - + kind: "find_package-v1" + backtrace: + - "ConfigureLogTransitionsModule2.cmake:[0-9]+ \(find_package\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + name: "ViaModule" + configs: + - + filename: "ViaModuleConfig.cmake" + kind: "cmake" + - + filename: "viamodule-config.cmake" + kind: "cmake" + version_request: + exact: false + settings: + required: "optional" + quiet: false + global: false + policy_scope: true + bypass_provider: false + names: + - "ViaModule" + path_suffixes: + - "" + paths: + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + CMAKE_FIND_USE_PACKAGE_ROOT_PATH: true + CMAKE_FIND_USE_CMAKE_PACKAGE_REGISTRY: true + CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY: true + CMAKE_FIND_ROOT_PATH_MODE: "BOTH" + candidates: + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-build/CMakeFiles/pkgRedirects/ViaModuleConfig.cmake" + mode: "config" + reason: "no_exist" + - + path: "[^"]*/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-build/CMakeFiles/pkgRedirects/viamodule-config.cmake" + mode: "config" + reason: "no_exist"( + - + path: "[^"]*/(viamodule-config|ViaModuleConfig).cmake" + mode: "config" + reason: "no_exist")* + found: null + search_context:( + [^ +]+)+ + - + kind: "message-v1" + backtrace: + - "ConfigureLogTransitionsModule2.cmake:[0-9]+ \(message\)" + - "CMakeLists.txt:[0-9]+ \(include\)" + message: \| + END +\.\.\.$ diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-stderr.txt b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-stderr.txt new file mode 100644 index 0000000000..f2dfd10491 --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2-stderr.txt @@ -0,0 +1,63 @@ +^NotDefined -> NotFound +CMake Warning at ConfigureLogTransitionsModule2.cmake:[0-9]+ \(find_package\): + By not providing "FindViaModule.cmake" in CMAKE_MODULE_PATH this project + has asked CMake to find a package configuration file provided by + "ViaModule", but CMake did not find one. + + Could not find a package configuration file provided by "ViaModule" with + any of the following names: + + ViaModuleConfig.cmake + viamodule-config.cmake + + Add the installation prefix of "ViaModule" to CMAKE_PREFIX_PATH or set + "ViaModule_DIR" to a directory containing one of the above files. If + "ViaModule" provides a separate development package or SDK, be sure it has + been installed. +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) + + +NotFound -> NotFound +CMake Warning at ConfigureLogTransitionsModule2.cmake:[0-9]+ \(find_package\): + By not providing "FindViaModule.cmake" in CMAKE_MODULE_PATH this project + has asked CMake to find a package configuration file provided by + "ViaModule", but CMake did not find one. + + Could not find a package configuration file provided by "ViaModule" with + any of the following names: + + ViaModuleConfig.cmake + viamodule-config.cmake + + Add the installation prefix of "ViaModule" to CMAKE_PREFIX_PATH or set + "ViaModule_DIR" to a directory containing one of the above files. If + "ViaModule" provides a separate development package or SDK, be sure it has + been installed. +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) + + +NotFound -> Found +Found -> Found +Found -> NotFound +CMake Warning at ConfigureLogTransitionsModule2.cmake:[0-9]+ \(find_package\): + By not providing "FindViaModule.cmake" in CMAKE_MODULE_PATH this project + has asked CMake to find a package configuration file provided by + "ViaModule", but CMake did not find one. + + Could not find a package configuration file provided by "ViaModule" with + any of the following names: + + ViaModuleConfig.cmake + viamodule-config.cmake + + Add the installation prefix of "ViaModule" to CMAKE_PREFIX_PATH or set + "ViaModule_DIR" to a directory containing one of the above files. If + "ViaModule" provides a separate development package or SDK, be sure it has + been installed. +Call Stack \(most recent call first\): + CMakeLists.txt:[0-9]+ \(include\) + + +END$ diff --git a/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2.cmake b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2.cmake new file mode 100644 index 0000000000..e31d583c70 --- /dev/null +++ b/Tests/RunCMake/find_package/ConfigureLogTransitionsModule2.cmake @@ -0,0 +1,40 @@ +# Stable sorting for predictable behaviors. +set(CMAKE_FIND_PACKAGE_SORT_ORDER NAME) + +# Unset search variables for more predictable output. +unset(CMAKE_FRAMEWORK_PATH) +unset(CMAKE_APPBUNDLE_PATH) +unset(ENV{CMAKE_PREFIX_PATH}) +unset(ENV{CMAKE_FRAMEWORK_PATH}) +unset(ENV{CMAKE_APPBUNDLE_PATH}) + +message("NotDefined -> NotFound") +message(CONFIGURE_LOG "NotDefined -> NotFound") +find_package(ViaModule) + +message("NotFound -> NotFound") +message(CONFIGURE_LOG "NotFound -> NotFound") +find_package(ViaModule) + +list(INSERT CMAKE_MODULE_PATH 0 + "${CMAKE_CURRENT_LIST_DIR}/ConfigureLog/cmake") +list(INSERT CMAKE_PREFIX_PATH 0 + "${CMAKE_CURRENT_LIST_DIR}/ConfigureLog") + +message("NotFound -> Found") +message(CONFIGURE_LOG "NotFound -> Found") +find_package(ViaModule) + +message("Found -> Found") +message(CONFIGURE_LOG "Found -> Found") +find_package(ViaModule) + +message("Found -> NotFound") +message(CONFIGURE_LOG "Found -> NotFound") +list(REMOVE_AT CMAKE_PREFIX_PATH 0) +list(REMOVE_AT CMAKE_MODULE_PATH 0) + +find_package(ViaModule) + +message("END") +message(CONFIGURE_LOG "END") diff --git a/Tests/RunCMake/find_package/RunCMakeTest.cmake b/Tests/RunCMake/find_package/RunCMakeTest.cmake index 9ae1a7cdf0..0f1eedfa1c 100644 --- a/Tests/RunCMake/find_package/RunCMakeTest.cmake +++ b/Tests/RunCMake/find_package/RunCMakeTest.cmake @@ -8,6 +8,10 @@ run_cmake(ConfigureLog) # Two tests because the stderr regex otherwise takes way too long to load. run_cmake(ConfigureLogParameters1) run_cmake(ConfigureLogParameters2) +run_cmake(ConfigureLogTransitionsConfig) # with `CONFIG` +run_cmake(ConfigureLogTransitionsConfig2) # without `CONFIG`, finding config +run_cmake(ConfigureLogTransitionsModule) # with `MODULE` +run_cmake(ConfigureLogTransitionsModule2) # without `MODULE`, finding module run_cmake(EmptyRoots) run_cmake(FromPATHEnv) run_cmake_with_options(FromPATHEnvDebugPkg --debug-find-pkg=Resolved)