[Cmake-commits] CMake branch, next, updated. v3.2.1-1637-ge830e12

Brad King brad.king at kitware.com
Wed Apr 8 13:09:53 EDT 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  e830e12572e5e2e617bca1b849992d1016bb262f (commit)
       via  a2df4a3f769a63822144c874660eb9461f233c22 (commit)
      from  dbdae3b67ad5ad036750d0e31f48d9514a1c5c6a (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=e830e12572e5e2e617bca1b849992d1016bb262f
commit e830e12572e5e2e617bca1b849992d1016bb262f
Merge: dbdae3b a2df4a3
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Apr 8 13:09:53 2015 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Apr 8 13:09:53 2015 -0400

    Merge topic 'fix-liblzma-XL-optimize' into next
    
    a2df4a3f liblzma: Disable XL compiler optimizations altogether


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a2df4a3f769a63822144c874660eb9461f233c22
commit a2df4a3f769a63822144c874660eb9461f233c22
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Apr 8 13:07:44 2015 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Apr 8 13:08:53 2015 -0400

    liblzma: Disable XL compiler optimizations altogether
    
    Revert commit 82c51a8a (liblzma: Disable XL compiler optimizations in
    one source to avoid crash, 2015-04-02) and instead add a compiler flag
    to disable optimizations in every source of liblzma.  Somehow the XL
    compiler optimizations create incorrect behavior in liblzma and lead
    to crashes or truncated output during compression.

diff --git a/Utilities/cmliblzma/CMakeLists.txt b/Utilities/cmliblzma/CMakeLists.txt
index d991438..991c699 100644
--- a/Utilities/cmliblzma/CMakeLists.txt
+++ b/Utilities/cmliblzma/CMakeLists.txt
@@ -211,4 +211,10 @@ ENDIF()
 
 ADD_LIBRARY(cmliblzma ${LZMA_SRCS})
 
+IF(CMAKE_C_COMPILER_ID STREQUAL "XL")
+  # Disable the XL compiler optimizer because it causes crashes
+  # and other bad behavior in liblzma code.
+  SET_PROPERTY(TARGET cmliblzma PROPERTY COMPILE_FLAGS "-qnooptimize")
+ENDIF()
+
 INSTALL(FILES COPYING DESTINATION ${CMAKE_DOC_DIR}/cmliblzma)
diff --git a/Utilities/cmliblzma/liblzma/lzma/lzma_encoder_optimum_normal.c b/Utilities/cmliblzma/liblzma/lzma/lzma_encoder_optimum_normal.c
index fc54d8d..d3a6348 100644
--- a/Utilities/cmliblzma/liblzma/lzma/lzma_encoder_optimum_normal.c
+++ b/Utilities/cmliblzma/liblzma/lzma/lzma_encoder_optimum_normal.c
@@ -8,9 +8,6 @@
 //  You can do whatever you want with this file.
 //
 ///////////////////////////////////////////////////////////////////////////////
-#if defined(__IBMC__)
-# pragma options optimize=0
-#endif
 
 #include "lzma_encoder_private.h"
 #include "fastpos.h"

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

Summary of changes:
 Utilities/cmliblzma/CMakeLists.txt                             |    6 ++++++
 Utilities/cmliblzma/liblzma/lzma/lzma_encoder_optimum_normal.c |    3 ---
 2 files changed, 6 insertions(+), 3 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list