diff options
| author | Brad King <brad.king@kitware.com> | 2022-08-05 12:52:57 (GMT) |
|---|---|---|
| committer | Kitware Robot <kwrobot@kitware.com> | 2022-08-05 12:53:09 (GMT) |
| commit | 9274bdff27fa620663da73dbd03e6a16dc42546f (patch) | |
| tree | fb9ac0093d916bc0f72392433917ab899bdabc80 /Source/cmFindPackageCommand.cxx | |
| parent | ba2a9fb7651f374a2a335e22daabc940fb4bf24a (diff) | |
| parent | 19366408fe4fedaec19e7e964adb02d090e8c0b7 (diff) | |
| download | CMake-9274bdff27fa620663da73dbd03e6a16dc42546f.zip CMake-9274bdff27fa620663da73dbd03e6a16dc42546f.tar.gz CMake-9274bdff27fa620663da73dbd03e6a16dc42546f.tar.bz2 | |
Merge topic 'find_package-one-more-path'
19366408fe cmFindPackageCommand: Protect overrides of `cmDirectoryListGenerator`
e55c154c5b cmFindPackageCommand: Add one more search path
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7542
Diffstat (limited to 'Source/cmFindPackageCommand.cxx')
| -rw-r--r-- | Source/cmFindPackageCommand.cxx | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx index f260ec7..3f8378b 100644 --- a/Source/cmFindPackageCommand.cxx +++ b/Source/cmFindPackageCommand.cxx @@ -291,6 +291,7 @@ public: { } +protected: void OnMatchesLoaded() override { // check if there is a specific sorting order to perform @@ -316,6 +317,7 @@ public: { } +protected: std::string TransformNameBeforeCmp(std::string name) override { return cmStrCat(name, this->Extension); @@ -2524,6 +2526,16 @@ bool cmFindPackageCommand::SearchPrefix(std::string const& prefix_in) return true; } + auto secondPkgDirGen = + cmProjectDirectoryListGenerator{ this->Names, this->SortOrder, + this->SortDirection }; + + // PREFIX/(Foo|foo|FOO).*/(cmake|CMake)/(Foo|foo|FOO).*/ + if (TryGeneratedPaths(searchFn, prefix, firstPkgDirGen, iCMakeGen, + secondPkgDirGen)) { + return true; + } + // Construct list of common install locations (lib and share). std::vector<cm::string_view> common; std::string libArch; @@ -2561,10 +2573,6 @@ bool cmFindPackageCommand::SearchPrefix(std::string const& prefix_in) return true; } - auto secondPkgDirGen = - cmProjectDirectoryListGenerator{ this->Names, this->SortOrder, - this->SortDirection }; - // PREFIX/(Foo|foo|FOO).*/(lib/ARCH|lib*|share)/cmake/(Foo|foo|FOO).*/ if (TryGeneratedPaths(searchFn, prefix, firstPkgDirGen, cmnGen, cmakeGen, secondPkgDirGen)) { |
