diff options
| author | crueter <crueter@eden-emu.dev> | 2025-07-30 07:06:50 +0200 |
|---|---|---|
| committer | crueter <crueter@eden-emu.dev> | 2025-07-30 07:06:50 +0200 |
| commit | 43f450499ca0824dc0b4ee2ebba4415b9e982432 (patch) | |
| tree | 4a55a9f3b43ece82282be291ebf1776b62322cfe | |
| parent | dee960ccd9a02862583263a23da7e0db2a66566b (diff) | |
[cmake] ffmpeg: use CPM and source archive (#155)
Cherry-picked from refactor/cpm. Dramatically reduces download time
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/155
| -rw-r--r-- | .gitmodules | 3 | ||||
| -rw-r--r-- | CMakeLists.txt | 2 | ||||
| -rw-r--r-- | externals/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | externals/ffmpeg/CMakeLists.txt | 13 | ||||
| m--------- | externals/ffmpeg/ffmpeg | 0 | ||||
| -rw-r--r-- | src/yuzu/externals/CMakeLists.txt | 1 |
6 files changed, 13 insertions, 8 deletions
diff --git a/.gitmodules b/.gitmodules index c8fcad98ec..10f9f7de96 100644 --- a/.gitmodules +++ b/.gitmodules @@ -19,9 +19,6 @@ [submodule "cpp-httplib"] path = externals/cpp-httplib url = https://github.com/yhirose/cpp-httplib.git -[submodule "ffmpeg"] - path = externals/ffmpeg/ffmpeg - url = https://github.com/FFmpeg/FFmpeg.git [submodule "vcpkg"] path = externals/vcpkg url = https://github.com/microsoft/vcpkg.git diff --git a/CMakeLists.txt b/CMakeLists.txt index b9d19b3c1b..0c2a880ae0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -491,6 +491,8 @@ set(FFmpeg_COMPONENTS avutil swscale) +set(CPM_SOURCE_CACHE ${CMAKE_SOURCE_DIR}/.cache/cpm) + add_subdirectory(externals) if (ENABLE_QT) diff --git a/externals/CMakeLists.txt b/externals/CMakeLists.txt index ecc6d9dbab..cd7b80a33c 100644 --- a/externals/CMakeLists.txt +++ b/externals/CMakeLists.txt @@ -83,8 +83,6 @@ if (YUZU_USE_EXTERNAL_SDL2) set(SDL_FILE ON) endif() - set(CPM_SOURCE_CACHE ${CMAKE_SOURCE_DIR}/.cache/cpm) - include(CPM) set(CPM_USE_LOCAL_PACKAGES OFF) diff --git a/externals/ffmpeg/CMakeLists.txt b/externals/ffmpeg/CMakeLists.txt index 9eb71418a0..3222efba70 100644 --- a/externals/ffmpeg/CMakeLists.txt +++ b/externals/ffmpeg/CMakeLists.txt @@ -19,8 +19,17 @@ if (NOT WIN32 AND NOT ANDROID) message(FATAL_ERROR "Required program `autoconf` not found.") endif() - set(FFmpeg_PREFIX ${PROJECT_SOURCE_DIR}/externals/ffmpeg/ffmpeg) - set(FFmpeg_BUILD_DIR ${PROJECT_BINARY_DIR}/externals/ffmpeg-build) + include(CPM) + set(CPM_USE_LOCAL_PACKAGES OFF) + + CPMAddPackage( + NAME ffmpeg + URL "https://github.com/ffmpeg/ffmpeg/archive/9c1294eadd.zip" + URL_HASH SHA512=2076e4cb843787c44718c70c4452517273dbc963ef98442f343762ade6c7b9f78555ae9b50a7c628844a15d8cb5e866c04e2f1acfb77093cea4fbc9edf3ad21a + ) + + set(FFmpeg_PREFIX ${ffmpeg_SOURCE_DIR}) + set(FFmpeg_BUILD_DIR ${ffmpeg_BINARY_DIR}) set(FFmpeg_MAKEFILE ${FFmpeg_BUILD_DIR}/Makefile) make_directory(${FFmpeg_BUILD_DIR}) diff --git a/externals/ffmpeg/ffmpeg b/externals/ffmpeg/ffmpeg deleted file mode 160000 -Subproject 9c1294eaddb88cb0e044c675ccae059a85fc9c6 diff --git a/src/yuzu/externals/CMakeLists.txt b/src/yuzu/externals/CMakeLists.txt index d606e27108..23ddbfa6be 100644 --- a/src/yuzu/externals/CMakeLists.txt +++ b/src/yuzu/externals/CMakeLists.txt @@ -6,7 +6,6 @@ set(BUILD_SHARED_LIBS OFF) # QuaZip include(CPM) -set(CPM_SOURCE_CACHE ${CMAKE_SOURCE_DIR}/.cache/cpm) set(CPM_USE_LOCAL_PACKAGES ON) CPMAddPackage( |
