diff --git a/Help/policy/CMP0047.rst b/Help/policy/CMP0047.rst index e82d72cfc7..e890260d11 100644 --- a/Help/policy/CMP0047.rst +++ b/Help/policy/CMP0047.rst @@ -1,6 +1,9 @@ CMP0047 ------- +.. |REMOVED_IN_CMAKE_VERSION| replace:: 4.0 +.. include:: REMOVED_PROLOGUE.txt + Use ``QCC`` compiler id for the qcc drivers on QNX. CMake 3.0 and above recognize that the QNX qcc compiler driver is @@ -20,11 +23,9 @@ for the qcc and QCC compiler drivers. The ``NEW`` behavior for this policy is to use the ``QCC`` compiler id for those drivers. .. |INTRODUCED_IN_CMAKE_VERSION| replace:: 3.0 -.. |WARNS_OR_DOES_NOT_WARN| replace:: does *not* warn by default -.. include:: STANDARD_ADVICE.txt +.. |WARNED_OR_DID_NOT_WARN| replace:: did *not* warn by default +.. include:: REMOVED_EPILOGUE.txt See documentation of the :variable:`CMAKE_POLICY_WARNING_CMP0047 >` -variable to control the warning. - -.. include:: DEPRECATED.txt +variable to control the warning in CMake versions before 4.0. diff --git a/Help/variable/CMAKE_POLICY_WARNING_CMPNNNN.rst b/Help/variable/CMAKE_POLICY_WARNING_CMPNNNN.rst index 8668505bb4..81978c1f42 100644 --- a/Help/variable/CMAKE_POLICY_WARNING_CMPNNNN.rst +++ b/Help/variable/CMAKE_POLICY_WARNING_CMPNNNN.rst @@ -8,8 +8,8 @@ only for the policies that do not warn by default: * ``CMAKE_POLICY_WARNING_CMP0025`` controlled the warning for policy :policy:`CMP0025` in CMake versions before 4.0. -* ``CMAKE_POLICY_WARNING_CMP0047`` controls the warning for - policy :policy:`CMP0047`. +* ``CMAKE_POLICY_WARNING_CMP0047`` controlled the warning for + policy :policy:`CMP0047` in CMake versions before 4.0. * ``CMAKE_POLICY_WARNING_CMP0056`` controls the warning for policy :policy:`CMP0056`. * ``CMAKE_POLICY_WARNING_CMP0060`` controls the warning for diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx index 082045dadc..c3c4837089 100644 --- a/Source/cmGlobalGenerator.cxx +++ b/Source/cmGlobalGenerator.cxx @@ -1010,36 +1010,6 @@ void cmGlobalGenerator::CheckCompilerIdCompatibility( std::string compilerIdVar = cmStrCat("CMAKE_", lang, "_COMPILER_ID"); std::string const compilerId = mf->GetSafeDefinition(compilerIdVar); - if (compilerId == "QCC") { - switch (mf->GetPolicyStatus(cmPolicies::CMP0047)) { - case cmPolicies::WARN: - if (!this->CMakeInstance->GetIsInTryCompile() && - mf->PolicyOptionalWarningEnabled("CMAKE_POLICY_WARNING_CMP0047")) { - std::ostringstream w; - /* clang-format off */ - w << cmPolicies::GetPolicyWarning(cmPolicies::CMP0047) << "\n" - "Converting " << lang << - R"( compiler id "QCC" to "GNU" for compatibility.)" - ; - /* clang-format on */ - mf->IssueMessage(MessageType::AUTHOR_WARNING, w.str()); - } - CM_FALLTHROUGH; - case cmPolicies::OLD: - // OLD behavior is to convert QCC to GNU. - mf->AddDefinition(compilerIdVar, "GNU"); - if (lang == "C") { - mf->AddDefinition("CMAKE_COMPILER_IS_GNUCC", "1"); - } else if (lang == "CXX") { - mf->AddDefinition("CMAKE_COMPILER_IS_GNUCXX", "1"); - } - break; - case cmPolicies::NEW: - // NEW behavior is to keep QCC. - break; - } - } - if (compilerId == "XLClang") { switch (mf->GetPolicyStatus(cmPolicies::CMP0089)) { case cmPolicies::WARN: diff --git a/Source/cmPolicies.h b/Source/cmPolicies.h index 8901277a2b..88f3633f97 100644 --- a/Source/cmPolicies.h +++ b/Source/cmPolicies.h @@ -143,7 +143,7 @@ class cmMakefile; "Error on non-existent dependency in add_dependencies.", 3, 0, 0, \ NEW) \ SELECT(POLICY, CMP0047, "Use QCC compiler id for the qcc drivers on QNX.", \ - 3, 0, 0, WARN) \ + 3, 0, 0, NEW) \ SELECT(POLICY, CMP0048, "project() command manages VERSION variables.", 3, \ 0, 0, WARN) \ SELECT(POLICY, CMP0049, \