mirror of
https://github.com/the-tcpdump-group/tcpdump.git
synced 2024-11-23 18:14:29 +08:00
CMake: give up on Clang on Haiku.
Haiku bug 18258 makes it too painful to beat the configuration process into submission.
This commit is contained in:
parent
f37c5e5639
commit
21f46b9600
@ -115,6 +115,20 @@ set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules)
|
||||
# C++ code in tcpdump.
|
||||
#
|
||||
project(tcpdump C)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Haiku")
|
||||
#
|
||||
# Due to Haiku bug 18258, it is difficult if not impossible
|
||||
# to get Clang to be usable as a compiler for CMake projects.
|
||||
#
|
||||
# If CMAKE_SIZEOF_VOID_P is undefined, we assume that means
|
||||
# that the attempt to determine the compiler ABI failed, due
|
||||
# the the consequences of that bug, and tell the user that
|
||||
# this compiler doesn't work wel with CMake on Haiku
|
||||
#
|
||||
if(NOT CMAKE_SIZEOF_VOID_P)
|
||||
message(FATAL_ERROR "${CMAKE_C_COMPILER} does not work well on Haiku for projects using CMake")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
#
|
||||
# For checking if a compiler flag works and adding it if it does.
|
||||
@ -278,23 +292,6 @@ if(MSVC)
|
||||
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
||||
endif(MSVC)
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Haiku")
|
||||
#
|
||||
# On Haiku, all executables are built as shared objects,
|
||||
# and must have their code build as PIC.
|
||||
#
|
||||
# At least some versions of Haiku's GCC default to PIC,
|
||||
# with a -fno-pic option for cases where that's not desired.
|
||||
#
|
||||
# Clang hasn't been modified in that fashion, so Clang
|
||||
# builds of tcpdump fail.
|
||||
#
|
||||
# Force the use of -fPIC (even for GCC; adding -fPIC for GCC
|
||||
# won't break anything).
|
||||
#
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC")
|
||||
endif(CMAKE_SYSTEM_NAME STREQUAL "Haiku")
|
||||
|
||||
if(MSVC)
|
||||
if (USE_STATIC_RT)
|
||||
MESSAGE(STATUS "Use STATIC runtime")
|
||||
|
Loading…
Reference in New Issue
Block a user