summary refs log blame commit diff
path: root/pkgs/games/prboom/default.nix
blob: ea6f8b01c71d94b0607629eca6ecca37625a5b72 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                           

               

                                                         
 

                                                    
                         





                                                                    
                                         
                                                       
 














                                                                                          
 
{ stdenv, fetchurl, SDL, SDL_mixer, SDL_net
, libGLU ? null
, libGL ? null
, useOpenGL ? stdenv.hostPlatform == stdenv.buildPlatform
}:

assert useOpenGL -> libGL != null && libGLU != null;

stdenv.mkDerivation rec {
  name = "prboom-2.5.0";
  src = fetchurl {
    url = mirror://sourceforge/prboom/prboom-2.5.0.tar.gz;
    sha256 = "1bjb04q8dk232956k30qlpq6q0hxb904yh1nflr87jcc1x3iqv12";
  };

  buildInputs = [ SDL SDL_mixer SDL_net ]
    ++ stdenv.lib.optionals useOpenGL [ libGL libGLU ];

  doCheck = stdenv.hostPlatform == stdenv.buildPlatform;

  configureFlags = [
    (stdenv.lib.enableFeature useOpenGL "gl")
    (stdenv.lib.enableFeature doCheck "sdltest")
  ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
    "--disable-cpu-opt"
    "--without-x"
    "ac_cv_type_uid_t=yes"
    "ac_cv_type_gid_t=yes"
  ];

  postInstall = stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
    mv $out/games/ $out/bin
  '';
}