mirror of
https://gitlab.freedesktop.org/uchardet/uchardet.git
synced 2025-12-06 16:56:40 +08:00
CMake: do not check/set SSE and float-store options on non-x86 targets.
Not sure if that's right. I guess we might also find non-x86 machines where floating point computation won't follow IEEE standard as well. But let's do this for now to prevent from useless performance hit.
This commit is contained in:
parent
939482ab2b
commit
cd617d181d
@ -44,15 +44,18 @@ if (BUILD_SHARED_LIBS)
|
||||
option(BUILD_STATIC "Build static library" ON)
|
||||
endif (BUILD_SHARED_LIBS)
|
||||
|
||||
CHECK_C_COMPILER_FLAG(-msse2 SUPPORTS_CFLAG_SSE2)
|
||||
CHECK_C_COMPILER_FLAG(-mfpmath=sse SUPPORTS_CFLAG_SSE_MATH)
|
||||
if (CHECK_SSE2 AND SUPPORTS_CFLAG_SSE2 AND SUPPORTS_CFLAG_SSE_MATH)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -msse2 -mfpmath=sse")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse2 -mfpmath=sse")
|
||||
else (CHECK_SSE2 AND SUPPORTS_CFLAG_SSE2 AND SUPPORTS_CFLAG_SSE_MATH)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffloat-store")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ffloat-store")
|
||||
endif (CHECK_SSE2 AND SUPPORTS_CFLAG_SSE2 AND SUPPORTS_CFLAG_SSE_MATH)
|
||||
string(TOLOWER ${CMAKE_SYSTEM_PROCESSOR} TARGET_ARCHITECTURE)
|
||||
if (TARGET_ARCHITECTURE MATCHES ".*(x86)|(amd).*")
|
||||
CHECK_C_COMPILER_FLAG(-msse2 SUPPORTS_CFLAG_SSE2)
|
||||
CHECK_C_COMPILER_FLAG(-mfpmath=sse SUPPORTS_CFLAG_SSE_MATH)
|
||||
if (CHECK_SSE2 AND SUPPORTS_CFLAG_SSE2 AND SUPPORTS_CFLAG_SSE_MATH)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -msse2 -mfpmath=sse")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse2 -mfpmath=sse")
|
||||
else (CHECK_SSE2 AND SUPPORTS_CFLAG_SSE2 AND SUPPORTS_CFLAG_SSE_MATH)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffloat-store")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ffloat-store")
|
||||
endif (CHECK_SSE2 AND SUPPORTS_CFLAG_SSE2 AND SUPPORTS_CFLAG_SSE_MATH)
|
||||
endif (TARGET_ARCHITECTURE MATCHES ".*(x86)|(amd).*")
|
||||
|
||||
configure_file(
|
||||
uchardet.pc.in
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user