diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index f98c8675acc06b3c998f29fcc712ac8befcda129..f464ead3ea55bacd71451a24252cbaf33194292c 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -151,7 +151,7 @@ set(lib_list $ $ $ - cpuinfo_public + $,cpuinfo::cpuinfo,cpuinfo_public> gtest_all) if(UNIX) # App Source Files diff --git a/CMakeLists.txt b/CMakeLists.txt index b651306f208f2ff0e577e89ce37fed3e80eea0ce..25df70551b8db09becab23cfa5000f03b90a9c77 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -41,6 +41,11 @@ if(NOT CMAKE_SIZEOF_VOID_P EQUAL 8) endif() option(COMPILE_C_ONLY "Compile only C code with no simds (autodetect, default off for x86)" OFF) +option(USE_EXTERNAL_CPUINFO "Consume system cpuinfo library only" OFF) + +if(USE_EXTERNAL_CPUINFO) + find_package(cpuinfo CONFIG REQUIRED) +endif() include(CheckCSourceCompiles) @@ -590,7 +595,7 @@ endif() add_subdirectory(third_party/fastfeat) -if(NOT COMPILE_C_ONLY AND HAVE_X86_PLATFORM) +if(NOT USE_EXTERNAL_CPUINFO AND NOT COMPILE_C_ONLY AND HAVE_X86_PLATFORM) add_subdirectory(third_party/cpuinfo) endif() diff --git a/Source/Lib/Encoder/CMakeLists.txt b/Source/Lib/Encoder/CMakeLists.txt index 88553bfc4511ffcd5571300d1d45c9302d9316a6..a587e7c6ba15f7528482f476b46506b09c12cf2e 100644 --- a/Source/Lib/Encoder/CMakeLists.txt +++ b/Source/Lib/Encoder/CMakeLists.txt @@ -129,7 +129,9 @@ set_target_properties(SvtAv1Enc PROPERTIES VERSION ${ENC_VERSION}) set_target_properties(SvtAv1Enc PROPERTIES SOVERSION ${ENC_VERSION_MAJOR}) set_target_properties(SvtAv1Enc PROPERTIES C_VISIBILITY_PRESET hidden) target_link_libraries(SvtAv1Enc PUBLIC ${PLATFORM_LIBS}) -if(NOT COMPILE_C_ONLY AND HAVE_X86_PLATFORM) +if(USE_EXTERNAL_CPUINFO) + target_link_libraries(SvtAv1Enc PRIVATE cpuinfo::cpuinfo) +elseif(NOT COMPILE_C_ONLY AND HAVE_X86_PLATFORM) target_link_libraries(SvtAv1Enc PRIVATE cpuinfo_public) endif() diff --git a/Source/Lib/Decoder/CMakeLists.txt b/Source/Lib/Decoder/CMakeLists.txt index 0f220a78a6db783ef2b5d6dd6cc182766c4362a3..8fb88f1c958fa965bc8f9ed9c1d563ee3858baee 100644 --- a/Source/Lib/Decoder/CMakeLists.txt +++ b/Source/Lib/Decoder/CMakeLists.txt @@ -147,7 +147,9 @@ set_target_properties(SvtAv1Dec PROPERTIES SOVERSION ${DEC_VERSION_MAJOR}) set_target_properties(SvtAv1Dec PROPERTIES C_VISIBILITY_PRESET hidden) add_dependencies(SvtAv1Dec EbVersionHeaderGen) target_link_libraries(SvtAv1Dec PUBLIC ${PLATFORM_LIBS}) -if(NOT COMPILE_C_ONLY AND HAVE_X86_PLATFORM) +if(USE_EXTERNAL_CPUINFO) + target_link_libraries(SvtAv1Dec PRIVATE cpuinfo::cpuinfo) +elseif(NOT COMPILE_C_ONLY AND HAVE_X86_PLATFORM) target_link_libraries(SvtAv1Dec PRIVATE cpuinfo_public) endif()