[DO-971] ffmpeg recipe with requirements (!9)

Co-authored-by: aleksandr.vodyanov <aleksandr.vodyanov@avroid.tech>
Reviewed-on: https://git.avroid.tech/Conan/conan_build/pulls/9
This commit is contained in:
Aleksandr Vodyanov
2024-12-25 17:47:28 +03:00
parent e58f90de0e
commit 39afe6a1dd
212 changed files with 9263 additions and 0 deletions

View File

@@ -0,0 +1,68 @@
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
$<TARGET_OBJECTS:ENCODER_ASM_AVX512>
$<TARGET_OBJECTS:ENCODER_GLOBALS>
$<TARGET_OBJECTS:ENCODER_CODEC>
- cpuinfo_public
+ $<IF:$<BOOL:${USE_EXTERNAL_CPUINFO}>,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()

View File

@@ -0,0 +1,68 @@
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 3ed7c05a28ad1b46f2a79e23630d6ad17e6c6741..251a592a46046ae1878e2913683f3417db0260ad 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -152,7 +152,7 @@ set(lib_list
$<TARGET_OBJECTS:ENCODER_ASM_AVX512>
$<TARGET_OBJECTS:ENCODER_GLOBALS>
$<TARGET_OBJECTS:ENCODER_CODEC>
- cpuinfo_public
+ $<IF:$<BOOL:${USE_EXTERNAL_CPUINFO}>,cpuinfo::cpuinfo,cpuinfo_public>
gtest_all)
if(UNIX)
# App Source Files
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 58642d108e2a4b042e2f7a66180e1ba2d06f043e..5b7d001473af01305d396b3d2f312adc0b3f5b81 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/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()
diff --git a/Source/Lib/Encoder/CMakeLists.txt b/Source/Lib/Encoder/CMakeLists.txt
index e2a1348aa2c07a7283266323bcf58d15dc278555..13be1227444afa74055cd5172ded084de4474b91 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()

View File

@@ -0,0 +1,21 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 25a40f09..9c861554 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -203,10 +203,12 @@ endif()
if(UNIX)
if(APPLE)
set(CMAKE_MACOSX_RPATH 1)
- set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> Scr <TARGET> <LINK_FLAGS> <OBJECTS>")
- set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> Scr <TARGET> <LINK_FLAGS> <OBJECTS>")
- set(CMAKE_C_ARCHIVE_FINISH "<CMAKE_RANLIB> -no_warning_for_no_symbols -c <TARGET>")
- set(CMAKE_CXX_ARCHIVE_FINISH "<CMAKE_RANLIB> -no_warning_for_no_symbols -c <TARGET>")
+ if(CMAKE_C_COMPILER_ID MATCHES "AppleClang")
+ set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> Scr <TARGET> <LINK_FLAGS> <OBJECTS>")
+ set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> Scr <TARGET> <LINK_FLAGS> <OBJECTS>")
+ set(CMAKE_C_ARCHIVE_FINISH "<CMAKE_RANLIB> -no_warning_for_no_symbols -c <TARGET>")
+ set(CMAKE_CXX_ARCHIVE_FINISH "<CMAKE_RANLIB> -no_warning_for_no_symbols -c <TARGET>")
+ endif()
else()
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -z noexecstack -z relro -z now")
endif()