diff options
author | Nikolay Amiantov <ab@fmap.me> | 2016-08-22 06:24:32 +0300 |
---|---|---|
committer | Nikolay Amiantov <ab@fmap.me> | 2016-08-22 06:30:01 +0300 |
commit | 7bf7f1976545666ba958034f7e61062595338f84 (patch) | |
tree | b25fa97cc48ae3d7d629ff1848584b48eb1b098e /pkgs/development/libraries/SDL2/default.nix | |
parent | b47327ebd535468f71bbf6a46366e0bd9357b599 (diff) | |
download | nixpkgs-7bf7f1976545666ba958034f7e61062595338f84.tar nixpkgs-7bf7f1976545666ba958034f7e61062595338f84.tar.gz nixpkgs-7bf7f1976545666ba958034f7e61062595338f84.tar.bz2 nixpkgs-7bf7f1976545666ba958034f7e61062595338f84.tar.lz nixpkgs-7bf7f1976545666ba958034f7e61062595338f84.tar.xz nixpkgs-7bf7f1976545666ba958034f7e61062595338f84.tar.zst nixpkgs-7bf7f1976545666ba958034f7e61062595338f84.zip |
SDL2: cleanup and add patch to discover extensions
Diffstat (limited to 'pkgs/development/libraries/SDL2/default.nix')
-rw-r--r-- | pkgs/development/libraries/SDL2/default.nix | 69 |
1 files changed, 39 insertions, 30 deletions
diff --git a/pkgs/development/libraries/SDL2/default.nix b/pkgs/development/libraries/SDL2/default.nix index 1c260c2ba91..16aa4f6c2f7 100644 --- a/pkgs/development/libraries/SDL2/default.nix +++ b/pkgs/development/libraries/SDL2/default.nix @@ -1,8 +1,11 @@ -{ stdenv, fetchurl, pkgconfig, audiofile -, openglSupport ? false, mesa ? null -, alsaSupport ? true, alsaLib ? null -, x11Support ? true, xlibsWrapper ? null, libXrandr ? null -, pulseaudioSupport ? true, libpulseaudio ? null +{ stdenv, lib, fetchurl, pkgconfig, audiofile +, openglSupport ? false, mesa_noglu +, alsaSupport ? true, alsaLib +, x11Support ? true, libICE, libXi, libXScrnSaver, libXcursor, libXinerama, libXext, libXxf86vm, libXrandr +, dbusSupport ? false, dbus +, udevSupport ? false, udev +, ibusSupport ? false, ibus +, pulseaudioSupport ? true, libpulseaudio , AudioUnit, Cocoa, CoreAudio, CoreServices, ForceFeedback, OpenGL }: @@ -10,35 +13,39 @@ # PulseAudio. assert !stdenv.isDarwin -> alsaSupport || pulseaudioSupport; -assert openglSupport -> (stdenv.isDarwin || mesa != null && x11Support); -assert x11Support -> (xlibsWrapper != null && libXrandr != null); -assert alsaSupport -> alsaLib != null; -assert pulseaudioSupport -> libpulseaudio != null; +assert openglSupport -> (stdenv.isDarwin || mesa_noglu != null && x11Support); let - configureFlagsFun = attrs: '' - --disable-oss --disable-x11-shared - --disable-pulseaudio-shared --disable-alsa-shared - ${if alsaSupport then "--with-alsa-prefix=${attrs.alsaLib.out}/lib" else ""} - ${if (!x11Support) then "--without-x" else ""} - ''; + configureFlagsFun = attrs: [ + "--disable-oss" "--disable-x11-shared" + "--disable-pulseaudio-shared" "--disable-alsa-shared" + ] ++ lib.optional alsaSupport "--with-alsa-prefix=${attrs.alsaLib.out}/lib" + ++ lib.optional (!x11Support) "--without-x"; in stdenv.mkDerivation rec { - name = "SDL2-2.0.3"; + name = "SDL2-${version}"; + version = "2.0.4"; src = fetchurl { url = "http://www.libsdl.org/release/${name}.tar.gz"; - sha256 = "0369ngvb46x6c26h8zva4x22ywgy6mvn0wx87xqwxg40pxm9m9m5"; + sha256 = "0jqp46mxxbh9lhpx1ih6sp93k752j2smhpc0ad0q4cb3px0famfs"; }; + patches = [ ./find-headers.patch ]; + + nativeBuildInputs = [ pkgconfig ]; + # Since `libpulse*.la' contain `-lgdbm', PulseAudio must be propagated. - propagatedBuildInputs = stdenv.lib.optionals x11Support [ xlibsWrapper libXrandr ] ++ - stdenv.lib.optional pulseaudioSupport libpulseaudio; + propagatedBuildInputs = lib.optionals x11Support [ libICE libXi libXScrnSaver libXcursor libXinerama libXext libXrandr libXxf86vm ] ++ + lib.optional pulseaudioSupport libpulseaudio; - buildInputs = [ pkgconfig audiofile ] ++ - stdenv.lib.optional openglSupport mesa ++ - stdenv.lib.optional alsaSupport alsaLib ++ - stdenv.lib.optionals stdenv.isDarwin [ AudioUnit Cocoa CoreAudio CoreServices ForceFeedback OpenGL ]; + buildInputs = [ audiofile ] ++ + lib.optional openglSupport mesa_noglu ++ + lib.optional alsaSupport alsaLib ++ + lib.optional dbusSupport dbus ++ + lib.optional udevSupport udev ++ + lib.optional ibusSupport ibus ++ + lib.optionals stdenv.isDarwin [ AudioUnit Cocoa CoreAudio CoreServices ForceFeedback OpenGL ]; # https://bugzilla.libsdl.org/show_bug.cgi?id=1431 dontDisableStatic = true; @@ -49,20 +56,22 @@ stdenv.mkDerivation rec { configureFlags = configureFlagsFun { inherit alsaLib; }; crossAttrs = { - configureFlags = configureFlagsFun { alsaLib = alsaLib.crossDrv; }; + configureFlags = configureFlagsFun { alsaLib = alsaLib.crossDrv; }; }; postInstall = '' rm $out/lib/*.a ''; - passthru = {inherit openglSupport;}; + setupHook = ./setup-hook.sh; + + passthru = { inherit openglSupport; }; - meta = { + meta = with stdenv.lib; { description = "A cross-platform multimedia library"; - homepage = http://www.libsdl.org/; - license = stdenv.lib.licenses.zlib; - platforms = stdenv.lib.platforms.all; - maintainers = [ stdenv.lib.maintainers.page ]; + homepage = "http://www.libsdl.org/"; + license = licenses.zlib; + platforms = platforms.all; + maintainers = with maintainers; [ page ]; }; } |