diff options
author | gnidorah <gnidorah@users.noreply.github.com> | 2020-05-20 20:25:36 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-20 13:25:36 -0400 |
commit | 6405edf2dca7f6faaa29266136dfa7f8f969b511 (patch) | |
tree | fc7a1d1872a94c9d3abc324689442986498e05ca /pkgs/games/openmw | |
parent | 48f0d8b3c8678185420231e8cda1139794325dee (diff) |
tes3mp: fix working (#88061)
Diffstat (limited to 'pkgs/games/openmw')
-rw-r--r-- | pkgs/games/openmw/tes3mp.nix | 6 | ||||
-rw-r--r-- | pkgs/games/openmw/tes3mp.patch | 13 |
2 files changed, 19 insertions, 0 deletions
diff --git a/pkgs/games/openmw/tes3mp.nix b/pkgs/games/openmw/tes3mp.nix index 222aa68dba243..59bdc69010787 100644 --- a/pkgs/games/openmw/tes3mp.nix +++ b/pkgs/games/openmw/tes3mp.nix @@ -50,6 +50,12 @@ in openmw.overrideAttrs (oldAttrs: rec { "-DRakNet_LIBRARY_DEBUG=${rakNetLibrary}/lib/libRakNetLibStatic.a" ]; + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95175 + patches = [ + ./tes3mp.patch + ]; + NIX_CFLAGS_COMPILE = "-fpermissive"; + preConfigure = '' substituteInPlace files/version.in \ --subst-var-by OPENMW_VERSION_COMMITHASH ${compatHash} diff --git a/pkgs/games/openmw/tes3mp.patch b/pkgs/games/openmw/tes3mp.patch new file mode 100644 index 0000000000000..c2a78f9db9b02 --- /dev/null +++ b/pkgs/games/openmw/tes3mp.patch @@ -0,0 +1,13 @@ +diff --git a/apps/openmw-mp/Script/Types.hpp b/apps/openmw-mp/Script/Types.hpp +index be365cfb8..204dcdc7b 100644 +--- a/apps/openmw-mp/Script/Types.hpp ++++ b/apps/openmw-mp/Script/Types.hpp +@@ -105,7 +105,7 @@ struct ScriptFunctionPointer : public ScriptIdentity + void *addr; + #if (!defined(__clang__) && defined(__GNUC__)) + template<typename R, typename... Types> +- constexpr ScriptFunctionPointer(Function<R, Types...> addr) : ScriptIdentity(addr), addr((void*)(addr)) {} ++ constexpr ScriptFunctionPointer(Function<R, Types...> addr) : ScriptIdentity(addr), addr(addr) {} + #else + template<typename R, typename... Types> + constexpr ScriptFunctionPointer(Function<R, Types...> addr) : ScriptIdentity(addr), addr(addr) {} |