sdrangel: fix build on x86_64-darwin
[NixPkgs.git] / pkgs / games / opendungeons / default.nix
blob8755a07169bf2448fde0491a308d8e9e7d96cc96
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , cmake
5 , pkg-config
6 , ogre_13
7 , cegui
8 , boost
9 , sfml
10 , openal
11 , ois
14 let
15   ogre' = ogre_13.overrideAttrs (old: {
16     cmakeFlags = old.cmakeFlags ++ [
17       "-DOGRE_RESOURCEMANAGER_STRICT=0"
18     ];
19   });
20   cegui' = cegui.override {
21     ogre = ogre';
22   };
24 stdenv.mkDerivation {
25   pname = "opendungeons";
26   version = "unstable-2023-03-18";
28   src = fetchFromGitHub {
29     owner = "paroj";
30     repo = "OpenDungeons";
31     rev = "974378d75591214dccbe0fb26e6ec8a40c2156e0";
32     hash = "sha256-vz9cT+rNcyKT3W9I9VRKcFol2SH1FhOhOALALjgKfIE=";
33   };
35   patches = [
36     ./cmakepaths.patch
37     ./fix_link_date_time.patch
38   ];
40   # source/utils/StackTraceUnix.cpp:122:2: error: #error Unsupported architecture.
41   postPatch = lib.optionalString (!stdenv.isx86_64) ''
42     cp source/utils/StackTrace{Stub,Unix}.cpp
43   '';
45   strictDeps = true;
47   nativeBuildInputs = [
48     cmake
49     pkg-config
50   ];
52   buildInputs = [
53     ogre'
54     cegui'
55     boost
56     sfml
57     openal
58     ois
59   ];
61   cmakeFlags = [
62     "-DOD_TREAT_WARNINGS_AS_ERRORS=FALSE"
63   ];
65   meta = with lib; {
66     description = "An open source, real time strategy game sharing game elements with the Dungeon Keeper series and Evil Genius";
67     mainProgram = "opendungeons";
68     homepage = "https://opendungeons.github.io";
69     license = with licenses; [ gpl3Plus zlib mit cc-by-sa-30 cc0 ofl cc-by-30 ];
70     platforms = platforms.linux;
71   };