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  d7d3a5b134e890055a3cf79cb27df612eda6704f (commit)
       via  d1697625f8dd279ae5ebd8df887908f28c2f9f40 (commit)
       via  b17a6dd55b94179fb87f27255f918a7d82ea57e5 (commit)
       via  195ac0aac1a8e3e02f9951a4a3c0ea2d37a3f68a (commit)
      from  f6218b1f7f85bb3ad111ecf5c8ac831e54f19853 (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 -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d7d3a5b134e890055a3cf79cb27df612eda6704f
commit d7d3a5b134e890055a3cf79cb27df612eda6704f
Merge: f6218b1 d169762
Author:     Todd Gamblin <tgamb...@llnl.gov>
AuthorDate: Mon Aug 29 10:01:20 2011 -0400
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Mon Aug 29 10:01:20 2011 -0400

    Merge topic 'xl-CreateExportList-fix' into next
    
    d169762 Fix XL compilers on non-AIX machines.
    b17a6dd KWSys Nightly Date Stamp
    195ac0a KWSys Nightly Date Stamp


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d1697625f8dd279ae5ebd8df887908f28c2f9f40
commit d1697625f8dd279ae5ebd8df887908f28c2f9f40
Author:     Todd Gamblin <tgamb...@llnl.gov>
AuthorDate: Sun Aug 28 21:58:35 2011 -0700
Commit:     Todd Gamblin <tgamb...@llnl.gov>
CommitDate: Sun Aug 28 22:04:41 2011 -0700

    Fix XL compilers on non-AIX machines.
    
    Linking broken on non-AIX machines when using XL compilers due to those
    machines not using the CreateExportList tool.  Made use of this tool
    conditional on finding it.

diff --git a/Modules/Compiler/XL.cmake b/Modules/Compiler/XL.cmake
index d07890f..d2567d5 100644
--- a/Modules/Compiler/XL.cmake
+++ b/Modules/Compiler/XL.cmake
@@ -35,14 +35,19 @@ macro(__compiler_xl lang)
   set(CMAKE_${lang}_CREATE_PREPROCESSED_SOURCE "<CMAKE_${lang}_COMPILER> 
<DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
   set(CMAKE_${lang}_CREATE_ASSEMBLY_SOURCE     "<CMAKE_${lang}_COMPILER> 
<DEFINES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>")
 
-  # The compiler front-end passes all object files, archive files, and shared
-  # library files named on the command line to CreateExportList to create a
-  # list of all symbols to be exported from the shared library.  This causes
-  # all archive members to be copied into the shared library whether they are
-  # needed or not.  Instead we run the tool ourselves to pass only the object
-  # files so that we export only the symbols actually provided by the sources.
-  set(CMAKE_${lang}_CREATE_SHARED_LIBRARY
-    "${CMAKE_XL_CreateExportList} <OBJECT_DIR>/objects.exp <OBJECTS>"
-    "<CMAKE_${lang}_COMPILER> <CMAKE_SHARED_LIBRARY_${lang}_FLAGS> 
<LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> 
<CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS> -Wl,-bE:<OBJECT_DIR>/objects.exp 
<CMAKE_SHARED_LIBRARY_SONAME_${lang}_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> 
<LINK_LIBRARIES>"
-    )
+  # CMAKE_XL_CreateExportList is part of the AIX XL compilers but not the 
linux ones.
+  # If we found the tool, we'll use it to create exports, otherwise stick with 
the regular
+  # create shared library compile line.
+  if (CMAKE_XL_CreateExportList)
+    # The compiler front-end passes all object files, archive files, and shared
+    # library files named on the command line to CreateExportList to create a
+    # list of all symbols to be exported from the shared library.  This causes
+    # all archive members to be copied into the shared library whether they are
+    # needed or not.  Instead we run the tool ourselves to pass only the object
+    # files so that we export only the symbols actually provided by the 
sources.
+    set(CMAKE_${lang}_CREATE_SHARED_LIBRARY
+      "${CMAKE_XL_CreateExportList} <OBJECT_DIR>/objects.exp <OBJECTS>"
+      "<CMAKE_${lang}_COMPILER> <CMAKE_SHARED_LIBRARY_${lang}_FLAGS> 
<LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> 
<CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS> -Wl,-bE:<OBJECT_DIR>/objects.exp 
<CMAKE_SHARED_LIBRARY_SONAME_${lang}_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> 
<LINK_LIBRARIES>"
+      )
+  endif()
 endmacro()

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

Summary of changes:
 Modules/Compiler/XL.cmake         |   25 +++++++++++++++----------
 Source/kwsys/kwsysDateStamp.cmake |    2 +-
 2 files changed, 16 insertions(+), 11 deletions(-)


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits

Reply via email to