Commit d911f8fc authored by Brad King's avatar Brad King

Merge branch 'CrayPrgEnv-update-link-type-detection' into release-3.15

Merge-request: !3716
parents 9182b3ce 971c7782
......@@ -369,3 +369,10 @@ Changes made since CMake 3.15.0 include the following.
* In CMake 3.15.0 and 3.15.1 the :variable:`CMAKE_FIND_PACKAGE_PREFER_CONFIG`
variable caused the :command:`find_package` command to fail on a missing
package even without the ``REQUIRED`` option. This has been fixed.
3.15.3
------
* ``CrayPrgEnv`` compiler wrapper support has been updated for the 19.06
release of the Cray Programming Environment for which the default linking
mode on XC Cray systems is now dynamic instead of static.
......@@ -69,13 +69,27 @@ endfunction()
# note that cmake applies both CMAKE_${lang}_FLAGS and CMAKE_EXE_LINKER_FLAGS
# (in that order) to the linking command, so -dynamic can appear in either
# variable.
#
# Note: As of CrayPE v19.06 (which translates to the craype/2.6.0 module)
# the default has changed and is now dynamic by default. This is handled
# accordingly
function(__cmake_craype_linktype lang rv)
# start with ENV, but allow flags to override
if("$ENV{CRAYPE_LINK_TYPE}" STREQUAL "dynamic")
set(linktype dynamic)
if(("$ENV{CRAYPE_VERSION}" STREQUAL "") OR
("$ENV{CRAYPE_VERSION}" VERSION_LESS "2.6"))
if("$ENV{CRAYPE_LINK_TYPE}" STREQUAL "dynamic")
set(linktype dynamic)
else()
set(linktype static)
endif()
else()
set(linktype static)
if("$ENV{CRAYPE_LINK_TYPE}" STREQUAL "static")
set(linktype static)
else()
set(linktype dynamic)
endif()
endif()
# combine flags and convert to a list so we can apply the flags in order
set(linkflags "${CMAKE_${lang}_FLAGS} ${CMAKE_EXE_LINKER_FLAGS}")
string(REPLACE " " ";" linkflags "${linkflags}")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment