[Cmake-commits] CMake branch, next, updated. v3.4.1-1796-g9c8fbca

Chuck Atkins chuck.atkins at kitware.com
Fri Dec 18 10:51:35 EST 2015


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  9c8fbca2ea642d32ba3a6e4e0324c2d9874c0baa (commit)
       via  928d2085d8ebeadc498e9e9f884b8adabf3346c3 (commit)
      from  7dc60bb47e942f702680217d4e5bf5ed34b06902 (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 -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9c8fbca2ea642d32ba3a6e4e0324c2d9874c0baa
commit 9c8fbca2ea642d32ba3a6e4e0324c2d9874c0baa
Merge: 7dc60bb 928d208
Author:     Chuck Atkins <chuck.atkins at kitware.com>
AuthorDate: Fri Dec 18 10:51:34 2015 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Fri Dec 18 10:51:34 2015 -0500

    Merge topic 'fix-absolute-libs-for-cray-wrappers' into next
    
    928d2085 CrayPrgEnv: Don't use absolute paths for imlicit libraries


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=928d2085d8ebeadc498e9e9f884b8adabf3346c3
commit 928d2085d8ebeadc498e9e9f884b8adabf3346c3
Author:     Chuck Atkins <chuck.atkins at kitware.com>
AuthorDate: Fri Dec 18 09:27:55 2015 -0600
Commit:     Chuck Atkins <chuck.atkins at kitware.com>
CommitDate: Fri Dec 18 09:27:55 2015 -0600

    CrayPrgEnv: Don't use absolute paths for imlicit libraries
    
    When parsing implicit include dirs, link dirs, and link libs, all
    arguments are resolved to absolute paths instead of relative paths.
    This is correct for link and include directories but link libraries
    should only include the library name, not it's path.

diff --git a/Modules/Compiler/CrayPrgEnv.cmake b/Modules/Compiler/CrayPrgEnv.cmake
index c3e7b73..61daa0f 100644
--- a/Modules/Compiler/CrayPrgEnv.cmake
+++ b/Modules/Compiler/CrayPrgEnv.cmake
@@ -4,12 +4,14 @@ if(__craylinux_crayprgenv)
 endif()
 set(__craylinux_crayprgenv 1)
 
-macro(__cray_extract_args cmd tag_regex out_var)
+macro(__cray_extract_args cmd tag_regex out_var make_absolute)
   string(REGEX MATCHALL "${tag_regex}" args "${cmd}")
   foreach(arg IN LISTS args)
     string(REGEX REPLACE "^${tag_regex}$" "\\2" param "${arg}")
-    get_filename_component(param_abs "${param}" ABSOLUTE)
-    list(APPEND ${out_var} ${param_abs})
+    if(make_absolute)
+      get_filename_component(param "${param}" ABSOLUTE)
+    endif()
+    list(APPEND ${out_var} ${param})
   endforeach()
 endmacro()
 
@@ -21,15 +23,18 @@ function(__cray_extract_implicit src compiler_cmd link_cmd lang include_dirs_var
     OUTPUT_VARIABLE output
     ERROR_VARIABLE error
     )
+  set(include_dirs)
+  set(link_dirs)
+  set(link_libs)
   string(REGEX REPLACE "\r?\n" ";" output_lines "${output}\n${error}")
   foreach(line IN LISTS output_lines)
     if("${line}" MATCHES "${compiler_cmd}")
-      __cray_extract_args("${line}" " -(I ?|isystem )([^ ]*)" include_dirs)
+      __cray_extract_args("${line}" " -(I ?|isystem )([^ ]*)" include_dirs 1)
       set(processed_include 1)
     endif()
     if("${line}" MATCHES "${link_cmd}")
-      __cray_extract_args("${line}" " -(L ?)([^ ]*)" link_dirs)
-      __cray_extract_args("${line}" " -(l ?)([^ ]*)" link_libs)
+      __cray_extract_args("${line}" " -(L ?)([^ ]*)" link_dirs 1)
+      __cray_extract_args("${line}" " -(l ?)([^ ]*)" link_libs 0)
       set(processed_link 1)
     endif()
     if(processed_include AND processed_link)

-----------------------------------------------------------------------

Summary of changes:
 Modules/Compiler/CrayPrgEnv.cmake |   17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list