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.
This commit is contained in:
Brad King 2015-04-08 13:07:44 -04:00
parent 82c51a8ac6
commit a2df4a3f76
2 changed files with 6 additions and 3 deletions

View File

@ -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)

View File

@ -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"