Bill Hoffman hace 25 años
padre
commit
21b18581bd
Se han modificado 2 ficheros con 8 adiciones y 1 borrados
  1. 7 0
      Source/cmConfigureFileNoAutoconf.cxx
  2. 1 1
      Source/cmMakefile.cxx

+ 7 - 0
Source/cmConfigureFileNoAutoconf.cxx

@@ -42,6 +42,13 @@ void cmConfigureFileNoAutoconf::FinalPass()
                          m_InputFile.c_str());
     return;
     }
+  cmSystemTools::ConvertToUnixSlashes(m_OuputFile);
+  std::string::size_type pos = m_OuputFile.rfind('/');
+  if(pos != std::string::npos)
+    {
+    std::string path = m_OuputFile.substr(0, pos);
+    cmSystemTools::MakeDirectory(path.c_str());
+    }
   std::ofstream fout(m_OuputFile.c_str());
   if(!fout)
     {

+ 1 - 1
Source/cmMakefile.cxx

@@ -327,7 +327,7 @@ void cmMakefile::ParseDirectory(const char* dir)
 void cmMakefile::ExpandVaribles()
 {
   // make sure binary and source dir are defined
-  this->AddDefinition("CMAKE_BINARY_DIR", this->GetOutputDirectory());
+  this->AddDefinition("CMAKE_BINARY_DIR", this->GetOutputHomeDirectory());
   this->AddDefinition("CMAKE_SOURCE_DIR", this->GetHomeDirectory());
 
    // Now expand varibles in the include and link strings