فهرست منبع

BUG: Moved definition of CMAKE_SOURCE_DIR and CMAKE_BINARY_DIR to be as soon as their information is known.

Brad King 24 سال پیش
والد
کامیت
f84972610e
2فایلهای تغییر یافته به همراه3 افزوده شده و 5 حذف شده
  1. 1 5
      Source/cmMakefile.cxx
  2. 2 0
      Source/cmMakefile.h

+ 1 - 5
Source/cmMakefile.cxx

@@ -388,11 +388,7 @@ std::string cmMakefile::GetParentListFileName(const char *currentFileName)
 
 void cmMakefile::ExpandVariables()
 {
-  // make sure binary and source dir are defined
-  this->AddDefinition("CMAKE_BINARY_DIR", this->GetHomeOutputDirectory());
-  this->AddDefinition("CMAKE_SOURCE_DIR", this->GetHomeDirectory());
-
-   // Now expand varibles in the include and link strings
+  // Now expand varibles in the include and link strings
   std::vector<std::string>::iterator j, begin, end;
   begin = m_IncludeDirectories.begin();
   end = m_IncludeDirectories.end();

+ 2 - 0
Source/cmMakefile.h

@@ -173,6 +173,7 @@ public:
     {
     m_cmHomeDirectory = dir;
     cmSystemTools::ConvertToUnixSlashes(m_cmHomeDirectory);
+    this->AddDefinition("CMAKE_SOURCE_DIR", this->GetHomeDirectory());
     }
   const char* GetHomeDirectory() 
     {
@@ -182,6 +183,7 @@ public:
     {
     m_HomeOutputDirectory = lib;
     cmSystemTools::ConvertToUnixSlashes(m_HomeOutputDirectory);
+    this->AddDefinition("CMAKE_BINARY_DIR", this->GetHomeOutputDirectory());
     }
   const char* GetHomeOutputDirectory()
     {