nixpkgs/pkgs/development/libraries/SDL2_mixer/2_0.nix
Randy Eckenrode e71cd2ed38
SDL2_mixer_2_0: fix build with clang 16
Backport patches to fix incompatible pointer conversion errors.
2023-09-06 16:07:29 -04:00

35 lines
1.0 KiB
Nix

{ fetchurl
, fetchpatch
, lzwolf
, SDL2_mixer
, timidity
}:
SDL2_mixer.overrideAttrs(oa: rec {
version = "2.0.4";
src = fetchurl {
url = "https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-${version}.tar.gz";
sha256 = "0694vsz5bjkcdgfdra6x9fq8vpzrl8m6q96gh58df7065hw5mkxl";
};
patches = [
# These patches fix incompatible function pointer conversion errors with clang 16.
(fetchpatch {
url = "https://github.com/libsdl-org/SDL_mixer/commit/4119ec3fe838d38d2433f4432cd18926bda5d093.patch";
stripLen = 2;
hash = "sha256-Ug1EEZIRcV8+e1MeMsGHuTW7Zn6j4szqujP8IkIq2VM=";
})
# Based on https://github.com/libsdl-org/SDL_mixer/commit/64ab759111ddb1b033bcce64e1a04e0cba6e498f
./SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch
];
# fix default path to timidity.cfg so MIDI files could be played
postPatch = ''
substituteInPlace timidity/options.h \
--replace "/usr/share/timidity" "${timidity}/share/timidity"
'';
passthru.tests.lzwolf = lzwolf;
})