python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / games / freeorion / default.nix
blob5b4407038015e9c7bd49ea63b3a77d12093cc41b
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , cmake
5 , doxygen
6 , graphviz
7 , makeWrapper
8 , cppcheck
9 , boost16x
10 , SDL2
11 , python3
12 , freetype
13 , openal
14 , libogg
15 , libvorbis
16 , zlib
17 , libpng
18 , libtiff
19 , libjpeg
20 , libGLU
21 , libGL
22 , glew
23 , libxslt
26 stdenv.mkDerivation rec {
27   version = "0.4.10.2";
28   pname = "freeorion";
30   src = fetchFromGitHub {
31     owner = "freeorion";
32     repo = "freeorion";
33     rev = "v${version}";
34     sha256 = "sha256-k/YwTg0N2b70igfqRuFl/zwxMQhD2QjbapsazYbi0Ik=";
35   };
37   buildInputs = [
38     (boost16x.override { enablePython = true; python = python3; })
39     (python3.withPackages (p: with p; [ pycodestyle ]))
40     SDL2
41     freetype
42     glew
43     libGL
44     libGLU
45     libjpeg
46     libogg
47     libpng
48     libtiff
49     libvorbis
50     openal
51     zlib
52   ];
54   nativeBuildInputs = [
55     cmake
56     cppcheck
57     doxygen
58     graphviz
59     makeWrapper
60   ];
62   # as of 0.4.10.2 FreeOrion doesn't work with "-DOpenGL_GL_PREFERENCE=GLVND"
63   cmakeFlags = [ "-DOpenGL_GL_PREFERENCE=LEGACY" ];
65   postInstall = ''
66     mkdir -p $out/libexec
67     # We need final slashes for XSLT replace to work properly
68     substitute ${./fix-paths.xslt} $out/share/freeorion/fix-paths.xslt \
69       --subst-var-by nixStore "$NIX_STORE/" \
70       --subst-var-by out "$out/"
71     substitute ${./fix-paths.sh} $out/libexec/fix-paths \
72       --subst-var-by libxsltBin ${libxslt.bin} \
73       --subst-var-by shell ${stdenv.shell} \
74       --subst-var out
75     chmod +x $out/libexec/fix-paths
77     wrapProgram $out/bin/freeorion \
78       --run $out/libexec/fix-paths \
79       --prefix LD_LIBRARY_PATH : $out/lib/freeorion
80   '';
82   meta = with lib; {
83     description = "A free, open source, turn-based space empire and galactic conquest (4X) computer game";
84     homepage = "http://www.freeorion.org";
85     license = with licenses; [ gpl2 cc-by-sa-30 ];
86     platforms = platforms.linux;
87     maintainers = with maintainers; [ tex ];
88   };