diff --git a/cmake/os/AIX.cmake b/cmake/os/AIX.cmake index 521f829e859..5ccc77c1606 100644 --- a/cmake/os/AIX.cmake +++ b/cmake/os/AIX.cmake @@ -16,6 +16,10 @@ #Enable 64 bit file offsets SET(_LARGE_FILES 1) +SET(CMAKE_C_ARCHIVE_CREATE " -X32_64 qc ") +SET(CMAKE_C_ARCHIVE_APPEND " -X32_64 q ") +SET(CMAKE_CXX_ARCHIVE_CREATE " -X32_64 qc ") +SET(CMAKE_CXX_ARCHIVE_APPEND " -X32_64 q ") IF(__AIX_COMPILER_XL) # Fix xlC oddity - it complains about same inline function defined multiple times @@ -25,4 +29,7 @@ INCLUDE(CheckCXXCompilerFlag) IF(HAVE_QSTATICINLINE) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -qstaticinline") ENDIF() +ELSE() + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -maix64 -pthread -mcmodel=large") + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -maix64 -pthread -mcmodel=large") ENDIF()