diff options
author | Brad King <brad.king@kitware.com> | 2008-06-09 19:22:09 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2008-06-09 19:22:09 (GMT) |
commit | d50785e26e68ba58aed6e59cb0cb8dcba7eb06a1 (patch) | |
tree | 27cd2167c4bccdb7ff84ddea160cb95a68b9785e | |
parent | fdb17d604cd8e353bfedcc256be2bf12f2071ded (diff) | |
download | CMake-d50785e26e68ba58aed6e59cb0cb8dcba7eb06a1.zip CMake-d50785e26e68ba58aed6e59cb0cb8dcba7eb06a1.tar.gz CMake-d50785e26e68ba58aed6e59cb0cb8dcba7eb06a1.tar.bz2 |
ENH: Make find_* command search order more intuitive.
- The CMAKE_PREFIX_PATH and similar variables have both
environment and CMake cache versions.
- Previously the environment value was checked before the
cache value.
- Now the cache value is favored because it is more specific.
-rw-r--r-- | Source/cmFindBase.cxx | 17 | ||||
-rw-r--r-- | Source/cmFindPackageCommand.cxx | 16 |
2 files changed, 15 insertions, 18 deletions
diff --git a/Source/cmFindBase.cxx b/Source/cmFindBase.cxx index ff3e99d..4ff14b6 100644 --- a/Source/cmFindBase.cxx +++ b/Source/cmFindBase.cxx @@ -66,18 +66,15 @@ cmFindBase::cmFindBase() "If NO_DEFAULT_PATH is specified, then no additional paths are " "added to the search. " "If NO_DEFAULT_PATH is not specified, the search process is as follows:\n" - "1. Search cmake specific environment variables. This " - "can be skipped if NO_CMAKE_ENVIRONMENT_PATH is passed.\n" - "" + "1. Search paths specified in cmake-specific cache variables. " + "These are intended to be used on the command line with a -DVAR=value. " + "This can be skipped if NO_CMAKE_PATH is passed.\n" " <prefix>/XXX_SUBDIR for each <prefix> in CMAKE_PREFIX_PATH\n" " CMAKE_XXX_PATH\n" " CMAKE_XXX_MAC_PATH\n" - "2. Search cmake variables with the same names as " - "the cmake specific environment variables. These " - "are intended to be used on the command line with a " - "-DVAR=value. This can be skipped if NO_CMAKE_PATH " - "is passed.\n" - "" + "2. Search paths specified in cmake-specific environment variables. " + "These are intended to be set in the user's shell configuration. " + "This can be skipped if NO_CMAKE_ENVIRONMENT_PATH is passed.\n" " <prefix>/XXX_SUBDIR for each <prefix> in CMAKE_PREFIX_PATH\n" " CMAKE_XXX_PATH\n" " CMAKE_XXX_MAC_PATH\n" @@ -282,8 +279,8 @@ bool cmFindBase::ParseArguments(std::vector<std::string> const& argsIn) void cmFindBase::ExpandPaths() { - this->AddCMakeEnvironmentPath(); this->AddCMakeVariablePath(); + this->AddCMakeEnvironmentPath(); this->AddUserHintsPath(); this->AddSystemEnvironmentPath(); this->AddCMakeSystemVariablePath(); diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx index 08a96e0..f4e36e0 100644 --- a/Source/cmFindPackageCommand.cxx +++ b/Source/cmFindPackageCommand.cxx @@ -239,16 +239,16 @@ cmFindPackageCommand::cmFindPackageCommand() "CMAKE_FIND_APPBUNDLE determine the order of preference " "as specified below.\n" "The set of installation prefixes is constructed using the following " - "steps. If NO_DEFAULT_PATH is specified steps 1-5 are skipped.\n" - "1. Search cmake specific environment variables. This " - "can be skipped if NO_CMAKE_ENVIRONMENT_PATH is passed.\n" + "steps. If NO_DEFAULT_PATH is specified all NO_* options are enabled.\n" + "1. Search paths specified in cmake-specific cache variables. " + "These are intended to be used on the command line with a -DVAR=value. " + "This can be skipped if NO_CMAKE_PATH is passed.\n" " CMAKE_PREFIX_PATH\n" " CMAKE_FRAMEWORK_PATH\n" " CMAKE_APPBUNDLE_PATH\n" - "2. Search cmake variables with the same names as the cmake specific " - "environment variables. These are intended to be used on the command " - "line with a -DVAR=value. This can be skipped if NO_CMAKE_PATH " - "is passed.\n" + "2. Search paths specified in cmake-specific environment variables. " + "These are intended to be set in the user's shell configuration. " + "This can be skipped if NO_CMAKE_ENVIRONMENT_PATH is passed.\n" " CMAKE_PREFIX_PATH\n" " CMAKE_FRAMEWORK_PATH\n" " CMAKE_APPBUNDLE_PATH\n" @@ -960,8 +960,8 @@ void cmFindPackageCommand::AppendSuccessInformation() //---------------------------------------------------------------------------- void cmFindPackageCommand::ComputePrefixes() { - this->AddPrefixesCMakeEnvironment(); this->AddPrefixesCMakeVariable(); + this->AddPrefixesCMakeEnvironment(); this->AddPrefixesUserHints(); this->AddPrefixesSystemEnvironment(); this->AddPrefixesBuilds(); |