소스 검색

BUG: look for -l and -L only at the begining of a link string

Bill Hoffman 25 년 전
부모
커밋
26f072dfe1
1개의 변경된 파일4개의 추가작업 그리고 2개의 파일을 삭제
  1. 4 2
      Source/cmUnixMakefileGenerator.cxx

+ 4 - 2
Source/cmUnixMakefileGenerator.cxx

@@ -154,7 +154,8 @@ void cmUnixMakefileGenerator::OutputMakefile(const char* file)
     std::vector<std::string>& libdirs = m_Makefile->GetLinkDirectories();
     for(j = libdirs.begin(); j != libdirs.end(); ++j)
       { 
-      if((*j).find("-L") == std::string::npos 
+      std::string::size_type pos = (*j).find("-L");
+      if((pos == std::string::npos || pos > 0)
          && (*j).find("${") == std::string::npos)
         {
         linkLibs += "-L";
@@ -165,7 +166,8 @@ void cmUnixMakefileGenerator::OutputMakefile(const char* file)
     std::vector<std::string>& libs = m_Makefile->GetLinkLibraries();
     for(j = libs.begin(); j != libs.end(); ++j)
       {
-      if((*j).find("-l") == std::string::npos 
+      std::string::size_type pos = (*j).find("-l");
+      if((pos == std::string::npos || pos > 0)
          && (*j).find("${") == std::string::npos)
         {
         linkLibs += "-l";