Răsfoiți Sursa

Merge branch 'tru64-make-includes'

Brad King 15 ani în urmă
părinte
comite
5444bd6ca3

+ 1 - 0
Modules/Platform/OSF1.cmake

@@ -25,6 +25,7 @@ IF(CMAKE_SYSTEM MATCHES "OSF1-V.*")
   SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":")
 ENDIF(CMAKE_SYSTEM MATCHES "OSF1-V.*")
 
+SET(CMAKE_MAKE_INCLUDE_FROM_ROOT 1) # include $(CMAKE_BINARY_DIR)/...
 
 IF(CMAKE_COMPILER_IS_GNUCXX)
   # include the gcc flags 

+ 2 - 0
Source/cmDocumentVariables.cxx

@@ -1400,4 +1400,6 @@ void cmDocumentVariables::DefineVariables(cmake* cm)
                      cmProperty::VARIABLE,0,0);
   cm->DefineProperty("CMAKE_LINK_DEPENDENT_LIBRARY_DIRS",
                      cmProperty::VARIABLE,0,0);
+  cm->DefineProperty("CMAKE_MAKE_INCLUDE_FROM_ROOT",
+                     cmProperty::VARIABLE,0,0);
 }

+ 6 - 3
Source/cmMakefileTargetGenerator.cxx

@@ -189,12 +189,15 @@ void cmMakefileTargetGenerator::WriteTargetBuildRules()
 //----------------------------------------------------------------------------
 void cmMakefileTargetGenerator::WriteCommonCodeRules()
 {
+  const char* root = (this->Makefile->IsOn("CMAKE_MAKE_INCLUDE_FROM_ROOT")?
+                      "$(CMAKE_BINARY_DIR)/" : "");
+
   // Include the dependencies for the target.
   std::string dependFileNameFull = this->TargetBuildDirectoryFull;
   dependFileNameFull += "/depend.make";
   *this->BuildFileStream
     << "# Include any dependencies generated for this target.\n"
-    << this->LocalGenerator->IncludeDirective << " "
+    << this->LocalGenerator->IncludeDirective << " " << root
     << this->Convert(dependFileNameFull.c_str(),
                      cmLocalGenerator::HOME_OUTPUT,
                      cmLocalGenerator::MAKEFILE)
@@ -205,7 +208,7 @@ void cmMakefileTargetGenerator::WriteCommonCodeRules()
     // Include the progress variables for the target.
     *this->BuildFileStream
       << "# Include the progress variables for this target.\n"
-      << this->LocalGenerator->IncludeDirective << " "
+      << this->LocalGenerator->IncludeDirective << " " << root
       << this->Convert(this->ProgressFileNameFull.c_str(),
                        cmLocalGenerator::HOME_OUTPUT,
                        cmLocalGenerator::MAKEFILE)
@@ -238,7 +241,7 @@ void cmMakefileTargetGenerator::WriteCommonCodeRules()
   // Include the flags for the target.
   *this->BuildFileStream
     << "# Include the compile flags for this target's objects.\n"
-    << this->LocalGenerator->IncludeDirective << " "
+    << this->LocalGenerator->IncludeDirective << " " << root
     << this->Convert(this->FlagFileNameFull.c_str(),
                                      cmLocalGenerator::HOME_OUTPUT,
                                      cmLocalGenerator::MAKEFILE)