From fcd4772bbe87da747528aac8a84bbb199bcf98f5 Mon Sep 17 00:00:00 2001 From: Uyanide Date: Thu, 9 Apr 2026 07:21:09 +0200 Subject: [PATCH] enable cuda support for whisper --- 060-ffmpeg-whisper.cpp-fix-pkgconfig.patch | 2 +- PKGBUILD | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/060-ffmpeg-whisper.cpp-fix-pkgconfig.patch b/060-ffmpeg-whisper.cpp-fix-pkgconfig.patch index 435a880..ba3e7ba 100644 --- a/060-ffmpeg-whisper.cpp-fix-pkgconfig.patch +++ b/060-ffmpeg-whisper.cpp-fix-pkgconfig.patch @@ -6,5 +6,5 @@ Version: @PROJECT_VERSION@ -Libs: -L${libdir} -lggml -lggml-base -lwhisper -Cflags: -I${includedir} -+Libs: -L${libdir} -lwhisper -lggml -lggml-cpu -lggml-base -lstdc++ -lm -fopenmp -fPIC ++Libs: -L${libdir} -L/opt/cuda/lib64 -L/opt/cuda/lib64/stubs -lwhisper -lggml -lggml-cuda -lggml-cpu -lggml-base -lcudart -lcublas -lcuda -lstdc++ -lm -fopenmp -fPIC +Cflags: -I${includedir} -fopenmp -fPIC diff --git a/PKGBUILD b/PKGBUILD index db79f5d..e5ba053 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -3,7 +3,7 @@ pkgname=ffmpeg-full pkgver=8.1 -pkgrel=1.1 +pkgrel=1.2 _whispercpp_ver='1.8.3' pkgdesc='Complete solution to record, convert and stream audio and video (all possible features including libfdk-aac)' arch=('x86_64') @@ -128,7 +128,7 @@ sha256sums=('b072aed6871998cce9b36e7774033105ca29e33632be5b6347f3206898e0756a' '870ba21409cdf66697dc4db15ebdb13bc67037d76c7cc63756c81471d8f1731a' '95223dda645c15b3daf79cd4d55df5d4ac46207f749973396bb761b743586ed6' '1bbd783da8483e2cffe99715125dddbd88c81ae36f28eee5ae7df5705c448077' - '98b3d28cbd13bb575c602785f6b8cb0b66ea3128ab5a3a82fc1645822320c136' + '8d834668c277071dabe91db2a38bf2c02cd73cc5be0ceeb0ed1e176ab9525c68' '04a7176400907fd7db0d69116b99de49e582a6e176b3bfb36a03e50a4cb26a36') validpgpkeys=('FCF986EA15E6E293A5644F10B4322F04D67658D8') @@ -148,6 +148,7 @@ build() { '-DBUILD_SHARED_LIBS:BOOL=OFF' '-DCMAKE_BUILD_TYPE:STRING=None' "-DCMAKE_INSTALL_PREFIX:PATH=${_stagingdir}" + '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON' '-Wno-dev') # ffmpeg requires lensfun git master, but lensfun-git package wrongly installs its files to non-standard locations: @@ -169,7 +170,9 @@ build() { cmake -B build/whisper.cpp -S "whisper.cpp-${_whispercpp_ver}" \ "${_cmake_opts[@]}" \ -DWHISPER_BUILD_EXAMPLES:BOOL='OFF' \ - -DWHISPER_BUILD_TESTS:BOOL='OFF' + -DWHISPER_BUILD_TESTS:BOOL='OFF' \ + -DGGML_CUDA:BOOL='ON' \ + -DCMAKE_CUDA_ARCHITECTURES='89' cmake --build build/whisper.cpp --target install cd "ffmpeg-${pkgver}"