Browse Source

Merge topic 'EclipseRemoveLinkedOutputDirectoryResources'

5271ba5 Eclipse: fix #13358: don't create bad linked resources
David Cole 13 years ago
parent
commit
135914f01e
2 changed files with 0 additions and 91 deletions
  1. 0 86
      Source/cmExtraEclipseCDT4Generator.cxx
  2. 0 5
      Source/cmExtraEclipseCDT4Generator.h

+ 0 - 86
Source/cmExtraEclipseCDT4Generator.cxx

@@ -462,18 +462,6 @@ void cmExtraEclipseCDT4Generator::CreateProjectFile()
     this->CreateLinksForTargets(fout);
     }
 
-  // I'm not sure this makes too much sense. There can be different
-  // output directories in different subdirs, so we would need more of them.
-
-  // for EXECUTABLE_OUTPUT_PATH when not in binary dir
-  this->AppendOutLinkedResource(fout,
-    mf->GetSafeDefinition("CMAKE_RUNTIME_OUTPUT_DIRECTORY"),
-    mf->GetSafeDefinition("EXECUTABLE_OUTPUT_PATH"));
-  // for LIBRARY_OUTPUT_PATH when not in binary dir
-  this->AppendOutLinkedResource(fout,
-    mf->GetSafeDefinition("CMAKE_LIBRARY_OUTPUT_DIRECTORY"),
-    mf->GetSafeDefinition("LIBRARY_OUTPUT_PATH"));
-
   fout << "\t</linkedResources>\n";
 
   fout << "</projectDescription>\n";
@@ -761,18 +749,6 @@ void cmExtraEclipseCDT4Generator::CreateCProjectFile() const
   excludeFromOut += "**/CMakeFiles/";
   fout << "<pathentry excluding=\"" << excludeFromOut
        << "\" kind=\"out\" path=\"\"/>\n";
-  // add output entry for EXECUTABLE_OUTPUT_PATH and LIBRARY_OUTPUT_PATH
-  // - if it is a subdir of homeOutputDirectory, there is no need to add it
-  // - if it is not then create a linked resource and add the linked name
-  //   but check it doesn't conflict with other linked resources names
-  for (std::vector<std::string>::const_iterator
-       it = this->OutLinkedResources.begin();
-       it != this->OutLinkedResources.end();
-       ++it)
-    {
-    fout << "<pathentry kind=\"out\" path=\"" << this->EscapeForXML(*it)
-         << "\"/>\n";
-    }
 
   // add pre-processor definitions to allow eclipse to gray out sections
   emmited.clear();
@@ -1317,65 +1293,3 @@ void cmExtraEclipseCDT4Generator
     "\t\t</link>\n"
     ;
 }
-
-bool cmExtraEclipseCDT4Generator
-::AppendOutLinkedResource(cmGeneratedFileStream& fout,
-                          const std::string&     defname,
-                          const std::string&     altdefname)
-{
-  if (defname.empty() && altdefname.empty())
-    {
-    return false;
-    }
-
-  std::string outputPath = (defname.empty() ? altdefname : defname);
-
-  if (!cmSystemTools::FileIsFullPath(outputPath.c_str()))
-    {
-    outputPath = this->HomeOutputDirectory + "/" + outputPath;
-    }
-
-  // in this case it's not necessary:
-  if (cmSystemTools::IsSubDirectory(outputPath.c_str(),
-                                    this->HomeOutputDirectory.c_str()))
-    {
-    return false;
-    }
-
-  // in these two cases Eclipse would complain:
-  if (cmSystemTools::IsSubDirectory(this->HomeOutputDirectory.c_str(),
-                                    outputPath.c_str()))
-    {
-    return false;
-    }
-  if (cmSystemTools::GetRealPath(outputPath.c_str())
-              == cmSystemTools::GetRealPath(this->HomeOutputDirectory.c_str()))
-    {
-    return false;
-    }
-
-  std::string name = this->GetPathBasename(outputPath);
-
-  // make sure linked resource name is unique
-  while (this->GlobalGenerator->GetProjectMap().find(name)
-      != this->GlobalGenerator->GetProjectMap().end())
-    {
-    name += "_";
-    }
-
-  if (std::find(this->OutLinkedResources.begin(),
-                this->OutLinkedResources.end(),
-                name)
-      != this->OutLinkedResources.end())
-    {
-    return false;
-    }
-  else
-    {
-    this->AppendLinkedResource(fout, name,
-                               this->GetEclipsePath(outputPath), LinkToFolder);
-    this->OutLinkedResources.push_back(name);
-    return true;
-    }
-}
-

+ 0 - 5
Source/cmExtraEclipseCDT4Generator.h

@@ -93,10 +93,6 @@ private:
                                     const std::string&     path,
                                     LinkType linkType);
 
-  bool AppendOutLinkedResource(cmGeneratedFileStream& fout,
-                               const std::string&     defname,
-                               const std::string&     altdefname);
-
   static void AppendIncludeDirectories(cmGeneratedFileStream& fout,
                                    const std::vector<std::string>& includeDirs,
                                    std::set<std::string>& emittedDirs);
@@ -109,7 +105,6 @@ private:
   void CreateLinksForTargets(cmGeneratedFileStream& fout);
 
   std::vector<std::string> SrcLinkedResources;
-  std::vector<std::string> OutLinkedResources;
   std::string HomeDirectory;
   std::string HomeOutputDirectory;
   bool IsOutOfSourceBuild;