| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- /*=========================================================================
- Program: CMake - Cross-Platform Makefile Generator
- Module: $RCSfile$
- Language: C++
- Date: $Date$
- Version: $Revision$
- Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
- See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
- This software is distributed WITHOUT ANY WARRANTY; without even
- the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- PURPOSE. See the above copyright notices for more information.
- =========================================================================*/
- #include "cmLinkLibrariesCommand.h"
- // cmLinkLibrariesCommand
- bool cmLinkLibrariesCommand::InitialPass(std::vector<std::string> const& args)
- {
- if(args.size() < 1 )
- {
- return true;
- }
- // add libraries, nothe that there is an optional prefix
- // of debug and optimized than can be used
- for(std::vector<std::string>::const_iterator i = args.begin();
- i != args.end(); ++i)
- {
- if ( *i == "NOTFOUND" )
- {
- this->SetError("CMake attempted to put directory that was not found to the list of include directories.");
- return false;
- }
- if (*i == "debug")
- {
- ++i;
- m_Makefile->AddLinkLibrary(i->c_str(),
- cmTarget::DEBUG);
- }
- else if (*i == "optimized")
- {
- ++i;
- m_Makefile->AddLinkLibrary(i->c_str(),
- cmTarget::OPTIMIZED);
- }
- else
- {
- m_Makefile->AddLinkLibrary(i->c_str());
- }
- const char* ldir = m_Makefile->GetDefinition("LIBRARY_OUTPUT_PATH");
- if (cmSystemTools::IsOff(ldir))
- {
- std::string libPath = *i + "_CMAKE_PATH";
- const char* dir = m_Makefile->GetDefinition(libPath.c_str());
- if( dir )
- {
- m_Makefile->AddLinkDirectory( dir );
- }
- }
- else
- {
- m_Makefile->AddLinkDirectory( ldir );
- }
- }
-
- return true;
- }
|