summaryrefslogtreecommitdiffstats
path: root/Source/cmFindPackageCommand.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-09-01 18:04:27 (GMT)
committerBrad King <brad.king@kitware.com>2009-09-01 18:04:27 (GMT)
commited0650f6ae10911092adc25373b9c61724192124 (patch)
tree87dab22fdc7705fab6273ad1517b0c3fe18a32a5 /Source/cmFindPackageCommand.h
parent2eca4dd2d127ab8e7ba211a17139983bbef61802 (diff)
downloadCMake-ed0650f6ae10911092adc25373b9c61724192124.zip
CMake-ed0650f6ae10911092adc25373b9c61724192124.tar.gz
CMake-ed0650f6ae10911092adc25373b9c61724192124.tar.bz2
Teach find_package to search a "package registry"
A common user workflow is to build a series of dependent projects in order. Each project locates its dependencies with find_package. We introduce a "user package registry" to help find_package locate packages built in non-standard search locations. The registry explicitly stores locations of build trees providing instances of a given package. There is no defined order among the locations specified. These locations should provide package configuration files (<package>-config.cmake) and package version files (<package>-config-version.cmake) so that find_package will recognize the packages and test version numbers.
Diffstat (limited to 'Source/cmFindPackageCommand.h')
-rw-r--r--Source/cmFindPackageCommand.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/Source/cmFindPackageCommand.h b/Source/cmFindPackageCommand.h
index faeb04d..a2ad1c2 100644
--- a/Source/cmFindPackageCommand.h
+++ b/Source/cmFindPackageCommand.h
@@ -90,11 +90,15 @@ private:
void AddPrefixesCMakeEnvironment();
void AddPrefixesCMakeVariable();
void AddPrefixesSystemEnvironment();
+ void AddPrefixesRegistry();
void AddPrefixesBuilds();
void AddPrefixesCMakeSystemVariable();
void AddPrefixesUserGuess();
void AddPrefixesUserHints();
void ComputeFinalPrefixes();
+ void LoadPackageRegistryDir(std::string const& dir);
+ void LoadPackageRegistryWin();
+ bool CheckPackageRegistryEntry(std::istream& is);
bool SearchDirectory(std::string const& dir);
bool CheckDirectory(std::string const& dir);
bool FindConfigFile(std::string const& dir, std::string& file);
@@ -130,6 +134,7 @@ private:
bool Required;
bool Compatibility_1_6;
bool NoModule;
+ bool NoRegistry;
bool NoBuilds;
bool DebugMode;
bool UseLib64Paths;