diff options
author | Marcus Asteborg <maastebo@microsoft.com> | 2022-07-06 21:35:16 -0700 |
---|---|---|
committer | Mark Harris <mark.hsj@gmail.com> | 2022-07-07 22:07:33 -0700 |
commit | 510e1029b45aa01a7047e5b3b82169be40911b96 (patch) | |
tree | 862a8e1b774311edb4b2beab2ede4b400623896d /CMakeLists.txt | |
parent | a80e9e9533d4edeaae282b82f77b8bd8a4903eca (diff) | |
download | opus-510e1029b45aa01a7047e5b3b82169be40911b96.tar.gz |
cmake - fix rtcd detection on x86 non windows
Signed-off-by: Mark Harris <mark.hsj@gmail.com>
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 589d1794..75362ccf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -366,11 +366,21 @@ if(NOT OPUS_ENABLE_FLOAT_API) endif() if(NOT OPUS_DISABLE_INTRINSICS) - if((OPUS_X86_MAY_HAVE_SSE AND NOT OPUS_X86_PRESUME_SSE) OR + if(((OPUS_X86_MAY_HAVE_SSE AND NOT OPUS_X86_PRESUME_SSE) OR (OPUS_X86_MAY_HAVE_SSE2 AND NOT OPUS_X86_PRESUME_SSE2) OR (OPUS_X86_MAY_HAVE_SSE4_1 AND NOT OPUS_X86_PRESUME_SSE4_1) OR - (OPUS_X86_MAY_HAVE_AVX AND NOT OPUS_X86_PRESUME_AVX)) + (OPUS_X86_MAY_HAVE_AVX AND NOT OPUS_X86_PRESUME_AVX)) AND + RUNTIME_CPU_CAPABILITY_DETECTION) target_compile_definitions(opus PRIVATE OPUS_HAVE_RTCD) + if(NOT MSVC) + if(CPU_INFO_BY_ASM_SUPPORTED) + target_compile_definitions(opus PRIVATE CPU_INFO_BY_ASM) + elseif(CPU_INFO_BY_C_SUPPORTED) + target_compile_definitions(opus PRIVATE CPU_INFO_BY_C) + else() + message(ERROR "Runtime cpu capability detection is enabled while CPU_INFO is not supported") + endif() + endif() endif() if(SSE1_SUPPORTED) |