mirror of
https://github.com/Kitware/CMake.git
synced 2026-05-07 22:59:56 -05:00
c7c3e39e4f
Compile some third-party libraries with preprocessor definitions that
activate POSIX APIs even when compiler extensions are not enabled.
We already do this in libuv, inherited from the upstream buildsystem.
This extends commit f034b0f663 (CMake compilation: do not use compiler
extensions, 2020-03-14, v3.18.0-rc1~494^2).
Issue: #20454
22 lines
701 B
CMake
22 lines
701 B
CMake
project(bzip2)
|
|
|
|
# Disable warnings to avoid changing 3rd party code.
|
|
if(CMAKE_C_COMPILER_ID MATCHES
|
|
"^(GNU|LCC|Clang|AppleClang|IBMClang|XLClang|XL|VisualAge|SunPro|HP|Intel|IntelLLVM|NVHPC)$")
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w")
|
|
elseif(CMAKE_C_COMPILER_ID STREQUAL "PathScale")
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -woffall")
|
|
endif()
|
|
|
|
# Activate POSIX APIs.
|
|
if(CMAKE_SYSTEM_NAME MATCHES "^(AIX|OS400)$")
|
|
add_definitions(-D_ALL_SOURCE)
|
|
endif()
|
|
if(NOT CMAKE_SYSTEM_NAME MATCHES "BSD|Darwin|Windows")
|
|
add_definitions(-D_XOPEN_SOURCE=600)
|
|
endif()
|
|
|
|
add_definitions(-D_FILE_OFFSET_BITS=64)
|
|
add_library(cmbzip2
|
|
blocksort.c huffman.c crctable.c randtable.c compress.c decompress.c bzlib.c)
|