python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / games / warsow / engine.nix
blob51974034b3f08d4f42011a59046552885e04f8ec
1 { stdenv, lib, substituteAll, fetchurl, cmake, libogg, libvorbis, libtheora, curl, freetype
2 , libjpeg, libpng, SDL2, libGL, openal, zlib
3 }:
5 stdenv.mkDerivation rec {
6   pname = "warsow-engine";
7   version = "2.1.0";
9   src = fetchurl {
10     url = "http://slice.sh/warsow/warsow_21_sdk.tar.gz";
11     sha256 = "0fj5k7qpf6far8i1xhqxlpfjch10zj26xpilhp95aq2yiz08pj4r";
12   };
14   patches = [
15     (substituteAll {
16       src = ./libpath.patch;
17       inherit zlib curl libpng libjpeg libogg libvorbis libtheora freetype;
18     })
19   ];
21   nativeBuildInputs = [ cmake ];
23   buildInputs = [
24     libogg libvorbis libtheora curl freetype libjpeg SDL2 libGL openal zlib
25     libpng
26   ];
28   # Workaround build failure on -fno-common toolchains:
29   #   ld: CMakeFiles/wswtv_server.dir/__/unix/unix_time.c.o:(.bss+0x8): multiple definition of
30   #     `c_pointcontents'; CMakeFiles/wswtv_server.dir/__/null/ascript_null.c.o:(.bss+0x8): first defined here
31   NIX_CFLAGS_COMPILE = "-fcommon";
33   cmakeFlags = [ "-DQFUSION_GAME=Warsow" ];
35   preConfigure = ''
36     cd source/source
37   '';
39   installPhase = ''
40     runHook preInstall
42     mkdir -p $out/lib
43     cp -r libs $out/lib/warsow
44     for i in warsow.* wsw_server.* wswtv_server.*; do
45       install -Dm755 "$i" "$out/bin/''${i%.*}"
46     done
48     runHook postInstall
49   '';
51   meta = with lib; {
52     description = "Multiplayer FPS game designed for competitive gaming (engine only)";
53     homepage = "http://www.warsow.net";
54     license = licenses.gpl2Plus;
55     maintainers = with maintainers; [ astsmtl abbradar ];
56     platforms = platforms.linux;
57     broken = stdenv.isAarch64;
58   };