2021-01-15 04:31:39 +00:00
|
|
|
{ lib, stdenv, fetchurl, SDL, SDL_mixer, SDL_net
|
2019-11-10 16:44:34 +00:00
|
|
|
, libGLU ? null
|
|
|
|
, libGL ? null
|
2018-07-23 22:27:03 +01:00
|
|
|
, useOpenGL ? stdenv.hostPlatform == stdenv.buildPlatform
|
|
|
|
}:
|
2010-08-11 21:14:25 +01:00
|
|
|
|
2019-11-10 16:44:34 +00:00
|
|
|
assert useOpenGL -> libGL != null && libGLU != null;
|
|
|
|
|
2018-07-23 22:27:03 +01:00
|
|
|
stdenv.mkDerivation rec {
|
2021-06-22 22:44:58 +01:00
|
|
|
pname = "prboom";
|
|
|
|
version = "2.5.0";
|
2010-08-11 21:14:25 +01:00
|
|
|
src = fetchurl {
|
2021-06-22 22:44:58 +01:00
|
|
|
url = "mirror://sourceforge/prboom/prboom-${version}.tar.gz";
|
2010-08-11 21:14:25 +01:00
|
|
|
sha256 = "1bjb04q8dk232956k30qlpq6q0hxb904yh1nflr87jcc1x3iqv12";
|
|
|
|
};
|
|
|
|
|
2018-07-23 22:27:03 +01:00
|
|
|
buildInputs = [ SDL SDL_mixer SDL_net ]
|
2021-01-15 04:31:39 +00:00
|
|
|
++ lib.optionals useOpenGL [ libGL libGLU ];
|
2010-08-11 21:14:25 +01:00
|
|
|
|
2018-07-23 22:27:03 +01:00
|
|
|
doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
|
|
|
|
|
|
|
|
configureFlags = [
|
2021-01-15 04:31:39 +00:00
|
|
|
(lib.enableFeature useOpenGL "gl")
|
|
|
|
(lib.enableFeature doCheck "sdltest")
|
|
|
|
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
2018-07-23 22:27:03 +01:00
|
|
|
"--disable-cpu-opt"
|
|
|
|
"--without-x"
|
|
|
|
"ac_cv_type_uid_t=yes"
|
|
|
|
"ac_cv_type_gid_t=yes"
|
|
|
|
];
|
|
|
|
|
2021-01-15 04:31:39 +00:00
|
|
|
postInstall = lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
|
2018-07-23 22:27:03 +01:00
|
|
|
mv $out/games/ $out/bin
|
|
|
|
'';
|
2010-08-11 21:14:25 +01:00
|
|
|
}
|