diff --git a/pkgs/development/libraries/SDL2_sound/default.nix b/pkgs/development/libraries/SDL2_sound/default.nix new file mode 100644 index 000000000000..3a2d05c31a10 --- /dev/null +++ b/pkgs/development/libraries/SDL2_sound/default.nix @@ -0,0 +1,48 @@ +{ stdenv +, lib +, fetchFromGitHub +, fetchpatch +, cmake +, SDL2 +, flac +, libmikmod +, libvorbis +, timidity +, AudioToolbox +, CoreAudio +}: + +stdenv.mkDerivation rec { + pname = "SDL2_sound"; + version = "2.0.1"; + + src = fetchFromGitHub { + owner = "icculus"; + repo = "SDL_sound"; + rev = "v${version}"; + sha256 = "sha256-N2znqy58tMHgYa07vEsSedWLRhoJzDoINcsUu0UYLnA="; + }; + + patches = [ + (fetchpatch { + # https://github.com/icculus/SDL_sound/pull/32 - fix build on darwin + # can be dropped on the next update + url = "https://github.com/icculus/SDL_sound/commit/c15d75b7720113b28639baad284f45f943846294.patch"; + sha256 = "sha256-4GL8unsZ7eNkzjLXq9QdaxFQMzX2tdP0cBR1jTaRLc0="; + }) + ]; + + nativeBuildInputs = [ cmake ]; + + cmakeFlags = [ "-DSDLSOUND_DECODER_MIDI=1" ]; + + buildInputs = [ SDL2 flac libmikmod libvorbis timidity ] + ++ lib.optionals stdenv.isDarwin [ AudioToolbox CoreAudio ]; + + meta = with lib; { + description = "SDL2 sound library"; + platforms = platforms.unix; + license = licenses.zlib; + homepage = "https://www.icculus.org/SDL_sound/"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d13066e27f35..327b931d2461 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20128,6 +20128,10 @@ with pkgs; SDL2_gfx = callPackage ../development/libraries/SDL2_gfx { }; + SDL2_sound = callPackage ../development/libraries/SDL2_sound { + inherit (darwin.apple_sdk.frameworks) AudioToolbox CoreAudio; + }; + SDL2_ttf = callPackage ../development/libraries/SDL2_ttf { }; SDL2_ttf_2_0_15 = callPackage ../development/libraries/SDL2_ttf/2.0.15.nix { };