[Cmake-commits] [cmake-commits] hoffman committed cmake.h 1.114 1.115 cmake.cxx 1.387 1.388
cmake-commits at cmake.org
cmake-commits at cmake.org
Fri Jun 20 16:25:05 EDT 2008
Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv12363
Modified Files:
cmake.h cmake.cxx
Log Message:
BUG: fix for bug 7222 manifest:no not working for makefiles
Index: cmake.h
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmake.h,v
retrieving revision 1.114
retrieving revision 1.115
diff -C 2 -d -r1.114 -r1.115
*** cmake.h 30 Apr 2008 17:42:40 -0000 1.114
--- cmake.h 20 Jun 2008 20:25:01 -0000 1.115
***************
*** 417,420 ****
--- 417,421 ----
static int VisualStudioLinkNonIncremental(std::vector<std::string>& args,
int type,
+ bool hasManifest,
bool verbose);
static int ParseVisualStudioLinkCommand(std::vector<std::string>& args,
***************
*** 429,433 ****
///! Find the full path to one of the cmake programs like ctest, cpack, etc.
std::string FindCMakeProgram(const char* name) const;
! private:
ProgressCallbackType ProgressCallback;
void* ProgressCallbackClientData;
--- 430,436 ----
///! Find the full path to one of the cmake programs like ctest, cpack, etc.
std::string FindCMakeProgram(const char* name) const;
! private:
! cmake(const cmake&); // Not implemented.
! void operator=(const cmake&); // Not implemented.
ProgressCallbackType ProgressCallback;
void* ProgressCallbackClientData;
Index: cmake.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmake.cxx,v
retrieving revision 1.387
retrieving revision 1.388
diff -C 2 -d -r1.387 -r1.388
*** cmake.cxx 18 Jun 2008 17:28:24 -0000 1.387
--- cmake.cxx 20 Jun 2008 20:25:02 -0000 1.388
***************
*** 3891,3896 ****
}
}
! // figure out if this is an incremental link or not and run the correct
! // link function.
for(std::vector<std::string>::iterator i = expandedArgs.begin();
i != expandedArgs.end(); ++i)
--- 3891,3896 ----
}
}
! bool hasIncremental = false;
! bool hasManifest = true;
for(std::vector<std::string>::iterator i = expandedArgs.begin();
i != expandedArgs.end(); ++i)
***************
*** 3898,3913 ****
if(cmSystemTools::Strucmp(i->c_str(), "/INCREMENTAL:YES") == 0)
{
! if(verbose)
! {
! std::cout << "Visual Studio Incremental Link\n";
! }
! return cmake::VisualStudioLinkIncremental(expandedArgs, type, verbose);
}
}
if(verbose)
{
! std::cout << "Visual Studio Non-Incremental Link\n";
}
! return cmake::VisualStudioLinkNonIncremental(expandedArgs, type, verbose);
}
--- 3898,3928 ----
if(cmSystemTools::Strucmp(i->c_str(), "/INCREMENTAL:YES") == 0)
{
! hasIncremental = true;
! }
! if(cmSystemTools::Strucmp(i->c_str(), "/MANIFEST:NO") == 0)
! {
! hasManifest = false;
! }
! }
! if(hasIncremental && hasManifest)
! {
! if(verbose)
! {
! std::cout << "Visual Studio Incremental Link with embeded manifests\n";
}
+ return cmake::VisualStudioLinkIncremental(expandedArgs, type, verbose);
}
if(verbose)
{
! if(!hasIncremental)
! {
! std::cout << "Visual Studio Non-Incremental Link\n";
! }
! else
! {
! std::cout << "Visual Studio Incremental Link without manifests\n";
! }
}
! return cmake::VisualStudioLinkNonIncremental(expandedArgs, type, hasManifest, verbose);
}
***************
*** 4114,4117 ****
--- 4129,4133 ----
int cmake::VisualStudioLinkNonIncremental(std::vector<std::string>& args,
int type,
+ bool hasManifest,
bool verbose)
{
***************
*** 4127,4130 ****
--- 4143,4150 ----
return -1;
}
+ if(!hasManifest)
+ {
+ return 0;
+ }
std::vector<cmStdString> mtCommand;
mtCommand.push_back(cmSystemTools::FindProgram("mt.exe"));
More information about the Cmake-commits
mailing list