ENH: Refactor find_* command framework/appbundle search order impl.

- CMAKE_FIND_FRAMEWORK and CMAKE_FIND_APPBUNDLE are supposed to specify
    whether to find frameworks/appbundles FIRST, LAST, ONLY, or NEVER.
  - Previously this affected only the placement of CMAKE_FRAMEWORK_PATH
    and CMAKE_APPBUNDLE_PATH with respect to the other path specifiers.
  - Now it behaves as documented.  The entire search path is inspected for
    each kind of program, library, or header before trying the next kind.
  - Additionally the ONLY mode is now honored for headers so that users
    do not end up with a library in framework and a header from elsewhere.
This commit is contained in:
Brad King
2008-06-09 11:58:29 -04:00
parent d53e5dec37
commit 6706f84cd9
7 changed files with 195 additions and 183 deletions

View File

@@ -68,7 +68,10 @@ public:
protected:
void AddArchitecturePaths(const char* suffix);
void AddLib64Paths();
std::string FindLibrary(const char* name);
std::string FindLibrary();
private:
std::string FindNormalLibrary();
std::string FindFrameworkLibrary();
};