[Cmake-commits] CMake branch, next, updated. v2.8.7-2818-g17e0e47
David Cole
david.cole at kitware.com
Wed Feb 22 16:33:58 EST 2012
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via 17e0e47fc2726ae19b44d13d3e74e9617e8906f7 (commit)
via 9d548711901998c0b4d2b9003f3a8977e5aa4f2f (commit)
via e5eda9edff3f859e6180631e14d44f7aa7d50d69 (commit)
via ae41323bda6815f9198b3f14a0ab3bc4aac84412 (commit)
from 52d9d34ad13bf52ec3ce790823c1f7460a600e62 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=17e0e47fc2726ae19b44d13d3e74e9617e8906f7
commit 17e0e47fc2726ae19b44d13d3e74e9617e8906f7
Merge: 52d9d34 9d54871
Author: David Cole <david.cole at kitware.com>
AuthorDate: Wed Feb 22 16:33:55 2012 -0500
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Feb 22 16:33:55 2012 -0500
Merge topic 'ninja-generator' into next
9d54871 CMake: Adapt Ninja generator for per-target include dirs
e5eda9e Merge branch 'target-include-directories' into ninja-generator
ae41323 windows msvc: create for each target a .pdb file
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9d548711901998c0b4d2b9003f3a8977e5aa4f2f
commit 9d548711901998c0b4d2b9003f3a8977e5aa4f2f
Author: David Cole <david.cole at kitware.com>
AuthorDate: Wed Feb 22 16:31:00 2012 -0500
Commit: David Cole <david.cole at kitware.com>
CommitDate: Wed Feb 22 16:31:00 2012 -0500
CMake: Adapt Ninja generator for per-target include dirs
The confluence of the ninja-generator and target-include-directories
branches conspired to produce a nice little compiler error when
they were both merged into 'next'...
Yay for Continuous dashboards!
diff --git a/Source/cmNinjaTargetGenerator.cxx b/Source/cmNinjaTargetGenerator.cxx
index 7b1c7d9..c776fcf 100644
--- a/Source/cmNinjaTargetGenerator.cxx
+++ b/Source/cmNinjaTargetGenerator.cxx
@@ -145,8 +145,11 @@ cmNinjaTargetGenerator::ComputeFlagsForObject(cmSourceFile *source,
// TODO: Handle response file.
// Add include directory flags.
{
+ std::vector<std::string> includes;
+ this->LocalGenerator->GetIncludeDirectories(includes, this->Target,
+ language.c_str());
std::string includeFlags =
- this->LocalGenerator->GetIncludeFlags(language.c_str(), false);
+ this->LocalGenerator->GetIncludeFlags(includes, language.c_str(), false);
this->LocalGenerator->AppendFlags(flags, includeFlags.c_str());
}
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e5eda9edff3f859e6180631e14d44f7aa7d50d69
commit e5eda9edff3f859e6180631e14d44f7aa7d50d69
Merge: ae41323 8233636
Author: David Cole <david.cole at kitware.com>
AuthorDate: Wed Feb 22 16:21:48 2012 -0500
Commit: David Cole <david.cole at kitware.com>
CommitDate: Wed Feb 22 16:21:48 2012 -0500
Merge branch 'target-include-directories' into ninja-generator
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ae41323bda6815f9198b3f14a0ab3bc4aac84412
commit ae41323bda6815f9198b3f14a0ab3bc4aac84412
Author: Peter Kuemmel <syntheticpp at gmx.net>
AuthorDate: Tue Feb 21 21:18:05 2012 +0100
Commit: Peter Kuemmel <syntheticpp at gmx.net>
CommitDate: Tue Feb 21 21:18:05 2012 +0100
windows msvc: create for each target a .pdb file
diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx
index 9294a01..6e08bca 100644
--- a/Source/cmNinjaNormalTargetGenerator.cxx
+++ b/Source/cmNinjaNormalTargetGenerator.cxx
@@ -136,6 +136,7 @@ cmNinjaNormalTargetGenerator
vars.Target = "$out";
vars.TargetSOName = "$SONAME";
vars.TargetInstallNameDir = "$INSTALLNAME_DIR";
+ vars.TargetPDB = "$TARGET_PDB";
// Setup the target version.
std::string targetVersionMajor;
@@ -361,6 +362,8 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement()
targetOutputImplib.c_str(), cmLocalGenerator::SHELL);
}
+ vars["TARGET_PDB"] = this->GetTargetPDB();
+
std::vector<cmCustomCommand> *cmdLists[3] = {
&this->GetTarget()->GetPreBuildCommands(),
&this->GetTarget()->GetPreLinkCommands(),
diff --git a/Source/cmNinjaTargetGenerator.cxx b/Source/cmNinjaTargetGenerator.cxx
index 8a563b6..7b1c7d9 100644
--- a/Source/cmNinjaTargetGenerator.cxx
+++ b/Source/cmNinjaTargetGenerator.cxx
@@ -270,6 +270,23 @@ std::string cmNinjaTargetGenerator::GetTargetName() const
return this->Target->GetName();
}
+std::string cmNinjaTargetGenerator::GetTargetPDB() const
+{
+ std::string targetFullPathPDB;
+ if(this->Target->GetType() == cmTarget::EXECUTABLE ||
+ this->Target->GetType() == cmTarget::STATIC_LIBRARY ||
+ this->Target->GetType() == cmTarget::SHARED_LIBRARY ||
+ this->Target->GetType() == cmTarget::MODULE_LIBRARY)
+ {
+ targetFullPathPDB = this->Target->GetDirectory(this->GetConfigName());
+ targetFullPathPDB += "/";
+ targetFullPathPDB += this->Target->GetPDBName(this->GetConfigName());
+ }
+
+ return ConvertToNinjaPath(targetFullPathPDB.c_str());
+}
+
+
void
cmNinjaTargetGenerator
::WriteLanguageRules(const std::string& language)
@@ -293,6 +310,7 @@ cmNinjaTargetGenerator
vars.Object = "$out";
std::string flags = "$FLAGS";
vars.Defines = "$DEFINES";
+ vars.TargetPDB = "$TARGET_PDB";
std::string depfile;
std::string depfileFlagsName = "CMAKE_DEPFILE_FLAGS_" + language;
@@ -426,6 +444,7 @@ cmNinjaTargetGenerator
cmNinjaVars vars;
vars["FLAGS"] = this->ComputeFlagsForObject(source, language);
vars["DEFINES"] = this->ComputeDefines(source, language);
+ vars["TARGET_PDB"] = this->GetTargetPDB();
cmGlobalNinjaGenerator::WriteBuild(this->GetBuildFileStream(),
comment,
diff --git a/Source/cmNinjaTargetGenerator.h b/Source/cmNinjaTargetGenerator.h
index 2986844..f9270a2 100644
--- a/Source/cmNinjaTargetGenerator.h
+++ b/Source/cmNinjaTargetGenerator.h
@@ -38,6 +38,7 @@ public:
virtual void Generate() = 0;
+ std::string GetTargetPDB() const;
std::string GetTargetName() const;
protected:
-----------------------------------------------------------------------
Summary of changes:
Source/cmNinjaNormalTargetGenerator.cxx | 3 +++
Source/cmNinjaTargetGenerator.cxx | 24 +++++++++++++++++++++++-
Source/cmNinjaTargetGenerator.h | 1 +
3 files changed, 27 insertions(+), 1 deletions(-)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list