| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 | /*============================================================================  CMake - Cross Platform Makefile Generator  Copyright 2000-2009 Kitware, Inc., Insight Software Consortium  Distributed under the OSI-approved BSD License (the "License");  see accompanying file Copyright.txt for details.  This software is distributed WITHOUT ANY WARRANTY; without even the  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the License for more information.============================================================================*/#ifndef cmFindLibraryCommand_h#define cmFindLibraryCommand_h#include "cmFindBase.h"/** \class cmFindLibraryCommand * \brief Define a command to search for a library. * * cmFindLibraryCommand is used to define a CMake variable * that specifies a library. The command searches for a given * file in a list of directories. */class cmFindLibraryCommand : public cmFindBase{public:  cmFindLibraryCommand();  /**   * This is a virtual constructor for the command.   */  virtual cmCommand* Clone()     {    return new cmFindLibraryCommand;    }  /**   * This is called when the command is first encountered in   * the CMakeLists.txt file.   */  virtual bool InitialPass(std::vector<std::string> const& args,                           cmExecutionStatus &status);  /**   * This determines if the command is invoked when in script mode.   */  virtual bool IsScriptable() { return true; }  /**   * The name of the command as specified in CMakeList.txt.   */  virtual const char* GetName() {return "find_library";}  /**   * Succinct documentation.   */  virtual const char* GetTerseDocumentation()     {    return "Find a library.";    }  cmTypeMacro(cmFindLibraryCommand, cmFindBase);  protected:  void AddArchitecturePaths(const char* suffix);  void AddLib64Paths();  std::string FindLibrary();  virtual void GenerateDocumentation();private:  std::string FindNormalLibrary();  std::string FindFrameworkLibrary();};#endif
 |