diff options
author | Brad King <brad.king@kitware.com> | 2019-02-25 12:48:38 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2019-02-25 12:51:01 (GMT) |
commit | c068236bb9d003c43856dd2bc2052605d4377982 (patch) | |
tree | 0d7b9ffc006bb9f85581237d58f3e607a0c12d42 | |
parent | 90323ff0513c8291bc36ea9b84a55eeebbf00329 (diff) | |
parent | 98a2d42301ec9ba0cd1c69b0a05351039bc69dc8 (diff) | |
download | CMake-c068236bb9d003c43856dd2bc2052605d4377982.zip CMake-c068236bb9d003c43856dd2bc2052605d4377982.tar.gz CMake-c068236bb9d003c43856dd2bc2052605d4377982.tar.bz2 |
Merge topic 'link-options'
98a2d42301 PIE link options: No warning when policy CMP0083 is not set.
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2996
-rw-r--r-- | Help/policy/CMP0083.rst | 7 | ||||
-rw-r--r-- | Source/cmGeneratorTarget.cxx | 19 |
2 files changed, 8 insertions, 18 deletions
diff --git a/Help/policy/CMP0083.rst b/Help/policy/CMP0083.rst index b26d6c8..32acf1f 100644 --- a/Help/policy/CMP0083.rst +++ b/Help/policy/CMP0083.rst @@ -23,9 +23,10 @@ which it is used, it is the project's responsibility to use the :prop_tgt:`POSITION_INDEPENDENT_CODE` target property for executables will be honored at link time. -This policy was introduced in CMake version 3.14. CMake version -|release| warns when the policy is not set and uses ``OLD`` behavior. Use -the :command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly. +This policy was introduced in CMake version 3.14. Use the +:command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly. +Unlike most policies, CMake version |release| does not warn when this policy is +not set and simply uses ``OLD`` behavior. .. include:: DEPRECATED.txt diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx index 6f5e9bd..3f23e5a 100644 --- a/Source/cmGeneratorTarget.cxx +++ b/Source/cmGeneratorTarget.cxx @@ -510,21 +510,10 @@ const char* cmGeneratorTarget::GetLinkPIEProperty( return nullptr; } - switch (this->GetPolicyStatusCMP0083()) { - case cmPolicies::WARN: { - std::ostringstream e; - e << cmPolicies::GetPolicyWarning(cmPolicies::CMP0083); - this->LocalGenerator->IssueMessage(MessageType::AUTHOR_WARNING, e.str()); - CM_FALLTHROUGH; - } - case cmPolicies::OLD: - return nullptr; - default: - // nothing to do - break; - } - - return PICValue.c_str(); + auto status = this->GetPolicyStatusCMP0083(); + return (status != cmPolicies::WARN && status != cmPolicies::OLD) + ? PICValue.c_str() + : nullptr; } bool cmGeneratorTarget::IsIPOEnabled(std::string const& lang, |