From d33be52bb886488f23c8a6b5c3b81a8383b5bfce Mon Sep 17 00:00:00 2001 From: Marcin Serwin Date: Sun, 18 May 2025 16:06:32 +0200 Subject: [PATCH] cubeb: make derivation customizable Signed-off-by: Marcin Serwin --- pkgs/by-name/cu/cubeb/package.nix | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/cu/cubeb/package.nix b/pkgs/by-name/cu/cubeb/package.nix index a85f999bbdcd..1ed7df1635f9 100644 --- a/pkgs/by-name/cu/cubeb/package.nix +++ b/pkgs/by-name/cu/cubeb/package.nix @@ -10,6 +10,11 @@ sndio, speexdsp, lazyLoad ? !stdenv.hostPlatform.isDarwin, + alsaSupport ? !stdenv.hostPlatform.isDarwin, + pulseSupport ? !stdenv.hostPlatform.isDarwin, + jackSupport ? !stdenv.hostPlatform.isDarwin, + sndioSupport ? !stdenv.hostPlatform.isDarwin, + buildSharedLibs ? true, }: assert lib.assertMsg ( @@ -17,12 +22,11 @@ assert lib.assertMsg ( ) "cubeb: lazyLoad is inert on Darwin"; let - backendLibs = [ - alsa-lib - jack2 - libpulseaudio - sndio - ]; + backendLibs = + lib.optional alsaSupport alsa-lib + ++ lib.optional jackSupport jack2 + ++ lib.optional pulseSupport libpulseaudio + ++ lib.optional sndioSupport sndio; in stdenv.mkDerivation { @@ -44,7 +48,7 @@ stdenv.mkDerivation { buildInputs = [ speexdsp ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) backendLibs; cmakeFlags = [ - "-DBUILD_SHARED_LIBS=ON" + (lib.cmakeBool "BUILD_SHARED_LIBS" buildSharedLibs) "-DBUILD_TESTS=OFF" # tests require an audio server "-DBUNDLE_SPEEX=OFF" "-DUSE_SANITIZERS=OFF"