mirror of
https://github.com/SoftEtherVPN/SoftEtherVPN.git
synced 2025-09-19 17:59:19 +03:00
Merge pull request #2092 from metalefty/cpu_features
cpu_features improvements
This commit is contained in:
@ -127,6 +127,9 @@ if(UNIX)
|
||||
if(SE_PIDDIR)
|
||||
add_definitions(-DSE_PIDDIR="${SE_PIDDIR}")
|
||||
endif()
|
||||
|
||||
# Use system libraries instead of bundled
|
||||
set(USE_SYSTEM_CPU_FEATURES false CACHE BOOL "Use system cpu_features")
|
||||
endif()
|
||||
|
||||
# Cedar communication module
|
||||
|
2
src/Mayaqua/3rdparty/cpu_features
vendored
2
src/Mayaqua/3rdparty/cpu_features
vendored
Submodule src/Mayaqua/3rdparty/cpu_features updated: 26133d3b62...ba4bffa86c
@ -109,8 +109,21 @@ if(UNIX)
|
||||
$<$<BOOL:${LIB_RT}>:${LIB_RT}>
|
||||
)
|
||||
|
||||
if (CMAKE_SYSTEM_PROCESSOR MATCHES "^(armv7l|aarch64|s390x)$" OR NOT HAVE_SYS_AUXV OR SKIP_CPU_FEATURES)
|
||||
if (NOT HAVE_SYS_AUXV OR SKIP_CPU_FEATURES)
|
||||
add_definitions(-DSKIP_CPU_FEATURES)
|
||||
elseif(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD" AND NOT CMAKE_SYSTEM_PROCESSOR MATCHES "^(amd64|i386)")
|
||||
message("cpu_features is not available on FreeBSD/${CMAKE_SYSTEM_PROCESSOR}")
|
||||
add_definitions(-DSKIP_CPU_FEATURES)
|
||||
elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" AND NOT CMAKE_SYSTEM_NAME MATCHES "^(arm64|x86_64)")
|
||||
# macOS runs only on Intel or ARM architecrues, should not reach here
|
||||
add_definitions(-DSKIP_CPU_FEATURES)
|
||||
elseif(${CMAKE_SYSTEM_NAME} STREQUAL "SunOS" OR ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
|
||||
message("cpu_features is not available on ${CMAKE_SYSTEM_NAME}")
|
||||
add_definitions(-DSKIP_CPU_FEATURES)
|
||||
elseif(USE_SYSTEM_CPU_FEATURES)
|
||||
CHECK_INCLUDE_FILE(cpu_features_macros.h HAVE_CPU_FEATURES)
|
||||
message("-- Using system's cpu_features")
|
||||
target_link_libraries(mayaqua PRIVATE cpu_features)
|
||||
else()
|
||||
add_subdirectory(3rdparty/cpu_features)
|
||||
set_property(TARGET cpu_features PROPERTY POSITION_INDEPENDENT_CODE ON)
|
||||
|
Reference in New Issue
Block a user