commit: c7bcf6c8353d1fe5fe804467ffdabb9fa2a57fc1 Author: James Le Cuirot <chewi <AT> gentoo <DOT> org> AuthorDate: Sun Jul 20 14:40:04 2025 +0000 Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org> CommitDate: Sun Jul 20 14:40:04 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7bcf6c8
net-misc/sunshine: Fix building with USE=cuda I'm not sure whether I've chosen the most optimal approach here. nvidia-drivers is needed at runtime (only) for libcuda.so.1. nvidia-cuda-toolkit is not required by FFmpeg, but it does seem required by Sunshine itself. You can then use nvcc from the toolkit or clang directly. I have chosen the latter, because the logic needed to set up nvcc is complex (potential addition to cuda.eclass?) and both Gentoo and Sunshine upstream force FFmpeg to build with clang anyway. Closes: https://bugs.gentoo.org/959432 Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org> net-misc/sunshine/sunshine-2025.628.4510-r1.ebuild | 7 ++++++- net-misc/sunshine/sunshine-9999.ebuild | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/net-misc/sunshine/sunshine-2025.628.4510-r1.ebuild b/net-misc/sunshine/sunshine-2025.628.4510-r1.ebuild index c3de4a83ff0e..1d0915e4a4e6 100644 --- a/net-misc/sunshine/sunshine-2025.628.4510-r1.ebuild +++ b/net-misc/sunshine/sunshine-2025.628.4510-r1.ebuild @@ -163,6 +163,7 @@ CDEPEND=" RDEPEND=" ${CDEPEND} media-libs/mesa[vaapi?] + cuda? ( x11-drivers/nvidia-drivers ) X? ( x11-libs/libxcb x11-libs/libXfixes @@ -176,6 +177,7 @@ DEPEND=" dev-cpp/nlohmann_json media-libs/amf-headers <media-libs/nv-codec-headers-14 + cuda? ( dev-util/nvidia-cuda-toolkit ) wayland? ( dev-libs/wayland-protocols ) " @@ -183,7 +185,7 @@ BDEPEND=" net-libs/nodejs[npm] virtual/pkgconfig cpu_flags_x86_mmx? ( >=dev-lang/nasm-2.13 ) - cuda? ( dev-util/nvidia-cuda-toolkit ) + cuda? ( llvm-core/clang:*[llvm_targets_NVPTX] ) wayland? ( dev-util/wayland-scanner ) " @@ -286,6 +288,7 @@ src_configure() { --optflags="${CFLAGS}" --disable-all --disable-autodetect + --disable-cuda-nvcc --disable-error-resilience --disable-everything --disable-faan @@ -359,6 +362,8 @@ src_configure() { -DBUILD_DOCS=no -DBUILD_TESTS=no -DCCACHE_FOUND=no + -DCMAKE_CUDA_COMPILER=clang++ + -DCUDA_INHERIT_COMPILE_OPTIONS=no -DFFMPEG_PLATFORM_LIBRARIES="$(usex svt-av1 SvtAv1Enc '');$(usex vaapi 'va;va-drm' '');$(usev x264);$(usev x265)" -DFFMPEG_PREPARED_BINARIES="${S}"/third-party/build-deps/dist -DSUNSHINE_ASSETS_DIR=share/${PN} diff --git a/net-misc/sunshine/sunshine-9999.ebuild b/net-misc/sunshine/sunshine-9999.ebuild index f5a739571215..6ff49dcca394 100644 --- a/net-misc/sunshine/sunshine-9999.ebuild +++ b/net-misc/sunshine/sunshine-9999.ebuild @@ -163,6 +163,7 @@ CDEPEND=" RDEPEND=" ${CDEPEND} media-libs/mesa[vaapi?] + cuda? ( x11-drivers/nvidia-drivers ) X? ( x11-libs/libxcb x11-libs/libXfixes @@ -176,6 +177,7 @@ DEPEND=" dev-cpp/nlohmann_json media-libs/amf-headers <media-libs/nv-codec-headers-14 + cuda? ( dev-util/nvidia-cuda-toolkit ) wayland? ( dev-libs/wayland-protocols ) " @@ -183,7 +185,7 @@ BDEPEND=" net-libs/nodejs[npm] virtual/pkgconfig cpu_flags_x86_mmx? ( >=dev-lang/nasm-2.13 ) - cuda? ( dev-util/nvidia-cuda-toolkit ) + cuda? ( llvm-core/clang:*[llvm_targets_NVPTX] ) wayland? ( dev-util/wayland-scanner ) " @@ -283,6 +285,7 @@ src_configure() { --optflags="${CFLAGS}" --disable-all --disable-autodetect + --disable-cuda-nvcc --disable-error-resilience --disable-everything --disable-faan @@ -356,6 +359,8 @@ src_configure() { -DBUILD_DOCS=no -DBUILD_TESTS=no -DCCACHE_FOUND=no + -DCMAKE_CUDA_COMPILER=clang++ + -DCUDA_INHERIT_COMPILE_OPTIONS=no -DFFMPEG_PLATFORM_LIBRARIES="$(usex svt-av1 SvtAv1Enc '');$(usex vaapi 'va;va-drm' '');$(usev x264);$(usev x265)" -DFFMPEG_PREPARED_BINARIES="${S}"/third-party/build-deps/dist -DSUNSHINE_ASSETS_DIR=share/${PN}
