From 3e5a7870c17c2c4a16574002f5e2dac45fbf6acc Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Sun, 15 Dec 2024 18:34:13 +0100 Subject: [PATCH] SDL_mixer: Fix mod support mikmod flags are gathered via libmikmod-config, which isn't in PATH anymore due to strictDeps. modplug, an alternative library for mod support, is found via pkg-config, and libopenmpt-modplug is a compatibility library emulating modplug's API via the actively-maintained libopenmpt library. --- pkgs/by-name/sd/SDL_mixer/package.nix | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sd/SDL_mixer/package.nix b/pkgs/by-name/sd/SDL_mixer/package.nix index d1c96b7c0e11..e42592d5bc58 100644 --- a/pkgs/by-name/sd/SDL_mixer/package.nix +++ b/pkgs/by-name/sd/SDL_mixer/package.nix @@ -4,7 +4,7 @@ fetchpatch, fetchurl, fluidsynth, - libmikmod, + libopenmpt-modplug, libogg, libvorbis, pkg-config, @@ -63,6 +63,12 @@ stdenv.mkDerivation (finalAttrs: { }) ]; + # Fix location of modplug header + postPatch = '' + substituteInPlace music_modplug.h \ + --replace-fail '#include "modplug.h"' '#include ' + ''; + nativeBuildInputs = [ SDL pkg-config @@ -72,7 +78,7 @@ stdenv.mkDerivation (finalAttrs: { buildInputs = [ SDL fluidsynth - libmikmod + libopenmpt-modplug libogg libvorbis smpeg @@ -81,6 +87,7 @@ stdenv.mkDerivation (finalAttrs: { configureFlags = [ (lib.enableFeature false "music-ogg-shared") (lib.enableFeature false "music-mod-shared") + (lib.enableFeature true "music-mod-modplug") (lib.enableFeature enableNativeMidi "music-native-midi-gpl") (lib.enableFeature enableSdltest "sdltest") (lib.enableFeature enableSmpegtest "smpegtest")