Commit 3e5a7870 authored by OPNA2608's avatar OPNA2608
Browse files

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.
parent ccaa9c46
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -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 <libmodplug/modplug.h>'
  '';

  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")