summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Auxiliary/cmake-indent.vim2
-rw-r--r--Auxiliary/cmake-syntax.vim2
-rw-r--r--Help/manual/LINKS.txt4
-rw-r--r--Modules/CMakeCCompilerId.c.in2
-rw-r--r--Modules/CMakeCXXCompilerId.cpp.in2
-rw-r--r--Modules/CMakeDetermineCompilerId.cmake2
-rw-r--r--Source/cmExtraEclipseCDT4Generator.cxx1
-rw-r--r--Source/cmGeneratorExpressionEvaluator.cxx9
-rw-r--r--Source/cmMakefile.cxx11
-rw-r--r--Source/cmMakefile.h6
10 files changed, 25 insertions, 16 deletions
diff --git a/Auxiliary/cmake-indent.vim b/Auxiliary/cmake-indent.vim
index a26dd06..6cee9c8 100644
--- a/Auxiliary/cmake-indent.vim
+++ b/Auxiliary/cmake-indent.vim
@@ -16,7 +16,7 @@
" Version: $Revision$
"
" Licence: The CMake license applies to this file. See
-" http://www.cmake.org/HTML/Copyright.html
+" http://www.cmake.org/licensing
" This implies that distribution with Vim is allowed
if exists("b:did_indent")
diff --git a/Auxiliary/cmake-syntax.vim b/Auxiliary/cmake-syntax.vim
index 782130d..3e4a122 100644
--- a/Auxiliary/cmake-syntax.vim
+++ b/Auxiliary/cmake-syntax.vim
@@ -16,7 +16,7 @@
" Version: $Revision$
"
" Licence: The CMake license applies to this file. See
-" http://www.cmake.org/HTML/Copyright.html
+" http://www.cmake.org/licensing
" This implies that distribution with Vim is allowed
" For version 5.x: Clear all syntax items
diff --git a/Help/manual/LINKS.txt b/Help/manual/LINKS.txt
index f6f707d..38fd151 100644
--- a/Help/manual/LINKS.txt
+++ b/Help/manual/LINKS.txt
@@ -11,12 +11,12 @@ Frequently Asked Questions
A Wiki is provided containing answers to frequently asked questions.
Online Documentation
- http://www.cmake.org/HTML/Documentation.html
+ http://www.cmake.org/documentation
Links to available documentation may be found on this web page.
Mailing List
- http://www.cmake.org/HTML/MailingLists.html
+ http://www.cmake.org/mailing-lists
For help and discussion about using cmake, a mailing list is
provided at cmake@cmake.org. The list is member-post-only but one
diff --git a/Modules/CMakeCCompilerId.c.in b/Modules/CMakeCCompilerId.c.in
index 0221cbd..09ae509 100644
--- a/Modules/CMakeCCompilerId.c.in
+++ b/Modules/CMakeCCompilerId.c.in
@@ -18,7 +18,7 @@ char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
#endif
#ifdef __QNXNTO__
-char const* qnxnto = "INFO" ":" "qnxnto";
+char const* qnxnto = "INFO" ":" "qnxnto[]";
#endif
@CMAKE_C_COMPILER_ID_PLATFORM_CONTENT@
diff --git a/Modules/CMakeCXXCompilerId.cpp.in b/Modules/CMakeCXXCompilerId.cpp.in
index 9ece26d..cc3ab49 100644
--- a/Modules/CMakeCXXCompilerId.cpp.in
+++ b/Modules/CMakeCXXCompilerId.cpp.in
@@ -17,7 +17,7 @@ char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
#endif
#ifdef __QNXNTO__
-char const* qnxnto = "INFO" ":" "qnxnto";
+char const* qnxnto = "INFO" ":" "qnxnto[]";
#endif
@CMAKE_CXX_COMPILER_ID_PLATFORM_CONTENT@
diff --git a/Modules/CMakeDetermineCompilerId.cmake b/Modules/CMakeDetermineCompilerId.cmake
index 47d351a..8702138 100644
--- a/Modules/CMakeDetermineCompilerId.cmake
+++ b/Modules/CMakeDetermineCompilerId.cmake
@@ -440,7 +440,7 @@ function(CMAKE_DETERMINE_COMPILER_ID_CHECK lang file)
string(REGEX REPLACE "^0+([0-9])" "\\1" SIMULATE_VERSION "${CMAKE_MATCH_1}")
string(REGEX REPLACE "\\.0+([0-9])" ".\\1" SIMULATE_VERSION "${SIMULATE_VERSION}")
endif()
- if("${info}" MATCHES "INFO:qnxnto")
+ if("${info}" MATCHES "INFO:qnxnto\\[\\]")
set(COMPILER_QNXNTO 1)
endif()
endforeach()
diff --git a/Source/cmExtraEclipseCDT4Generator.cxx b/Source/cmExtraEclipseCDT4Generator.cxx
index 1beb3fd..7867ad6 100644
--- a/Source/cmExtraEclipseCDT4Generator.cxx
+++ b/Source/cmExtraEclipseCDT4Generator.cxx
@@ -62,6 +62,7 @@ void cmExtraEclipseCDT4Generator
if (*lit == "CXX")
{
this->Natures.insert("org.eclipse.cdt.core.ccnature");
+ this->Natures.insert("org.eclipse.cdt.core.cnature");
}
else if (*lit == "C")
{
diff --git a/Source/cmGeneratorExpressionEvaluator.cxx b/Source/cmGeneratorExpressionEvaluator.cxx
index 84a4daa..d5d78d5 100644
--- a/Source/cmGeneratorExpressionEvaluator.cxx
+++ b/Source/cmGeneratorExpressionEvaluator.cxx
@@ -1373,10 +1373,17 @@ static const struct CompileFeaturesNode : public cmGeneratorExpressionNode
for (LangMap::const_iterator lit = testedFeatures.begin();
lit != testedFeatures.end(); ++lit)
{
+ std::vector<std::string> const& langAvailable
+ = availableFeatures[lit->first];
for (std::vector<std::string>::const_iterator it = lit->second.begin();
it != lit->second.end(); ++it)
{
- if (!context->Makefile->HaveFeatureAvailable(target,
+ if (std::find(langAvailable.begin(), langAvailable.end(), *it)
+ == langAvailable.end())
+ {
+ return "0";
+ }
+ if (!context->Makefile->HaveStandardAvailable(target,
lit->first, *it))
{
if (evalLL)
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index b7e89b8..ab77e4a 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -5130,18 +5130,19 @@ CompileFeaturesAvailable(const std::string& lang, std::string *error) const
}
//----------------------------------------------------------------------------
-bool cmMakefile::HaveFeatureAvailable(cmTarget const* target,
+bool cmMakefile::HaveStandardAvailable(cmTarget const* target,
std::string const& lang,
const std::string& feature) const
{
return lang == "C"
- ? this->HaveCFeatureAvailable(target, feature)
- : this->HaveCxxFeatureAvailable(target, feature);
+ ? this->HaveCStandardAvailable(target, feature)
+ : this->HaveCxxStandardAvailable(target, feature);
}
//----------------------------------------------------------------------------
bool cmMakefile::
-HaveCFeatureAvailable(cmTarget const* target, const std::string& feature) const
+HaveCStandardAvailable(cmTarget const* target,
+ const std::string& feature) const
{
bool needC90 = false;
bool needC99 = false;
@@ -5218,7 +5219,7 @@ bool cmMakefile::IsLaterStandard(std::string const& lang,
}
//----------------------------------------------------------------------------
-bool cmMakefile::HaveCxxFeatureAvailable(cmTarget const* target,
+bool cmMakefile::HaveCxxStandardAvailable(cmTarget const* target,
const std::string& feature) const
{
bool needCxx98 = false;
diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h
index 28f8686..24a4f00 100644
--- a/Source/cmMakefile.h
+++ b/Source/cmMakefile.h
@@ -935,7 +935,7 @@ public:
const char* CompileFeaturesAvailable(const std::string& lang,
std::string *error) const;
- bool HaveFeatureAvailable(cmTarget const* target, std::string const& lang,
+ bool HaveStandardAvailable(cmTarget const* target, std::string const& lang,
const std::string& feature) const;
bool IsLaterStandard(std::string const& lang,
@@ -1158,9 +1158,9 @@ private:
void CheckNeededCxxLanguage(const std::string& feature, bool& needCxx98,
bool& needCxx11, bool& needCxx14) const;
- bool HaveCFeatureAvailable(cmTarget const* target,
+ bool HaveCStandardAvailable(cmTarget const* target,
const std::string& feature) const;
- bool HaveCxxFeatureAvailable(cmTarget const* target,
+ bool HaveCxxStandardAvailable(cmTarget const* target,
const std::string& feature) const;
mutable bool SuppressWatches;