summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-08-04 18:37:46 (GMT)
committerBrad King <brad.king@kitware.com>2009-08-04 18:37:46 (GMT)
commit80c947b3975825f2a9a7b1ebdc285e6b0cf6ba02 (patch)
tree85d047b0e5023e668a4804833198d4dcf767a539 /Source
parentf3cd1e06f5a5fb092f249de3e1b582125d067daa (diff)
downloadCMake-80c947b3975825f2a9a7b1ebdc285e6b0cf6ba02.zip
CMake-80c947b3975825f2a9a7b1ebdc285e6b0cf6ba02.tar.gz
CMake-80c947b3975825f2a9a7b1ebdc285e6b0cf6ba02.tar.bz2
No /fast targets in try_compile project mode
The try_compile command builds the cmTryCompileExec executable using the cmTryCompileExec/fast target with Makefile generators in order to save time since dependencies are not needed. However, in project mode the command builds an entire source tree that may have dependencies. Therefore we can use the /fast target approach only in one-source mode.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmCoreTryCompile.cxx1
-rw-r--r--Source/cmGlobalGenerator.cxx4
-rw-r--r--Source/cmGlobalGenerator.h2
-rw-r--r--Source/cmMakefile.cxx2
-rw-r--r--Source/cmMakefile.h1
5 files changed, 7 insertions, 3 deletions
diff --git a/Source/cmCoreTryCompile.cxx b/Source/cmCoreTryCompile.cxx
index c45a806..02abf31 100644
--- a/Source/cmCoreTryCompile.cxx
+++ b/Source/cmCoreTryCompile.cxx
@@ -297,6 +297,7 @@ int cmCoreTryCompile::TryCompileCode(std::vector<std::string> const& argv)
this->BinaryDirectory.c_str(),
projectName,
targetName,
+ this->SrcFileSignature,
&cmakeFlags,
&output);
if ( erroroc )
diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx
index a798200..f4fa6f4 100644
--- a/Source/cmGlobalGenerator.cxx
+++ b/Source/cmGlobalGenerator.cxx
@@ -1026,7 +1026,7 @@ void cmGlobalGenerator::CheckLocalGenerators()
int cmGlobalGenerator::TryCompile(const char *srcdir, const char *bindir,
const char *projectName,
- const char *target,
+ const char *target, bool fast,
std::string *output, cmMakefile *mf)
{
// if this is not set, then this is a first time configure
@@ -1077,7 +1077,7 @@ int cmGlobalGenerator::TryCompile(const char *srcdir, const char *bindir,
const char* config = mf->GetDefinition("CMAKE_TRY_COMPILE_CONFIGURATION");
return this->Build(srcdir,bindir,projectName,
newTarget.c_str(),
- output,makeCommand.c_str(),config,false,true,
+ output,makeCommand.c_str(),config,false,fast,
this->TryCompileTimeout);
}
diff --git a/Source/cmGlobalGenerator.h b/Source/cmGlobalGenerator.h
index 4b60778..c2e410f 100644
--- a/Source/cmGlobalGenerator.h
+++ b/Source/cmGlobalGenerator.h
@@ -91,7 +91,7 @@ public:
*/
virtual int TryCompile(const char *srcdir, const char *bindir,
const char *projectName, const char *targetName,
- std::string *output, cmMakefile* mf);
+ bool fast, std::string *output, cmMakefile* mf);
/**
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 648639c..5057ef4 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -2728,6 +2728,7 @@ void cmMakefile::ExpandSourceListArguments(
int cmMakefile::TryCompile(const char *srcdir, const char *bindir,
const char *projectName, const char *targetName,
+ bool fast,
const std::vector<std::string> *cmakeArgs,
std::string *output)
{
@@ -2808,6 +2809,7 @@ int cmMakefile::TryCompile(const char *srcdir, const char *bindir,
this->LocalGenerator->GetGlobalGenerator()->TryCompile(srcdir,bindir,
projectName,
targetName,
+ fast,
output,
this);
diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h
index 5cd3587..7123eb5 100644
--- a/Source/cmMakefile.h
+++ b/Source/cmMakefile.h
@@ -121,6 +121,7 @@ public:
*/
int TryCompile(const char *srcdir, const char *bindir,
const char *projectName, const char *targetName,
+ bool fast,
const std::vector<std::string> *cmakeArgs,
std::string *output);