about summary refs log tree commit diff
path: root/pkgs/games/super-tux-kart
diff options
context:
space:
mode:
authorOPNA2608 <christoph.neidahl@gmail.com>2021-10-07 08:30:10 +0200
committerOPNA2608 <christoph.neidahl@gmail.com>2021-10-07 16:42:11 +0200
commit23dab135572c6d4bfa3b11ca976f53e1a2f2fc31 (patch)
tree516264ee9311cb20c50b577392a08562170f5040 /pkgs/games/super-tux-kart
parent781972b22f25e721d745b712aff4ec1a2f9c64ac (diff)
superTuxKart: 1.2 -> 1.3
Diffstat (limited to 'pkgs/games/super-tux-kart')
-rw-r--r--pkgs/games/super-tux-kart/default.nix54
1 files changed, 25 insertions, 29 deletions
diff --git a/pkgs/games/super-tux-kart/default.nix b/pkgs/games/super-tux-kart/default.nix
index 3589e10e7a533..248db620fe118 100644
--- a/pkgs/games/super-tux-kart/default.nix
+++ b/pkgs/games/super-tux-kart/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , fetchsvn
 , cmake
 , pkg-config
@@ -20,15 +19,17 @@
 , mcpp
 , wiiuse
 , angelscript
+, libopenglrecorder
+, sqlite
 , Cocoa
 , IOKit
+, libsamplerate
 }:
 let
-  dir = "stk-code";
   assets = fetchsvn {
     url = "https://svn.code.sf.net/p/supertuxkart/code/stk-assets";
-    rev = "18218";
-    sha256 = "11iv3cqzvbjg33zz5i5gkl2syn6mlw9wqv0jc7h36vjnjqjv17xw";
+    rev = "18464";
+    sha256 = "1a84j3psl4cxzkn5ynakpjill7i2f9ki2p729bpmbrvg8fki95aa";
     name = "stk-assets";
   };
 
@@ -44,45 +45,35 @@ let
     # has been fixed to support it.
     "enet"
     # Internal library of STK, nothing to do about it
+    "graphics_engine"
+    # Internal library of STK, nothing to do about it
     "graphics_utils"
     # This irrlicht is bundled with cmake
     # whereas upstream irrlicht still uses
     # archaic Makefiles, too complicated to switch to.
     "irrlicht"
     # Not packaged to this date
-    "libraqm"
-    # Not packaged to this date
     "libsquish"
     # Not packaged to this date
     "sheenbidi"
-  ]
-  # Our system angelscript causes linking error on ARM
-  # ld: libangelscript.so: undefined reference to
-  # `CallSystemFunctionNative(asCContext*, asCScriptFunction*, void*, unsigned int*, void*, unsigned long&, void*)'
-  # Bundled angelscript compiles fine
-  ++ lib.optional stdenv.hostPlatform.isAarch64 "angelscript";
+    # Not packaged to this date
+    "tinygettext"
+    # Not packaged to this date (needed on Darwin)
+    "mojoal"
+  ];
 in
 stdenv.mkDerivation rec {
 
   pname = "supertuxkart";
-  version = "1.2";
+  version = "1.3";
 
   src = fetchFromGitHub {
     owner = "supertuxkart";
     repo = "stk-code";
     rev = version;
-    sha256 = "1f98whk0v45jgwcsbdsb1qfambvrnbbgwq0w28kjz4278hinwzq6";
-    name = dir;
+    sha256 = "1llyxkdc4m9gnjxqaxlpwvv3ayvpw2bfjzfkkrljaxhznq811g0l";
   };
 
-  patches = [
-    (fetchpatch {
-      # Fix build with SDL 2.0.14
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/games-action/supertuxkart/files/supertuxkart-1.2-new-sdl.patch?id=288360dc7ce2f968a2f12099edeace3f3ed1a705";
-      sha256 = "1jgab9393qan8qbqf5bf8cgw4mynlr5a6pggqhybzsmaczgnns3n";
-    })
-  ];
-
   postPatch = ''
     # Deletes all bundled libs in stk-code/lib except those
     # That couldn't be replaced with system packages
@@ -93,7 +84,11 @@ stdenv.mkDerivation rec {
       --replace 'NOT (APPLE OR HAIKU)) AND USE_SYSTEM_WIIUSE' 'NOT (HAIKU)) AND USE_SYSTEM_WIIUSE'
   '';
 
-  nativeBuildInputs = [ cmake pkg-config makeWrapper ];
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    makeWrapper
+  ];
 
   buildInputs = [
     SDL2
@@ -107,15 +102,16 @@ stdenv.mkDerivation rec {
     harfbuzz
     mcpp
     wiiuse
+    angelscript
+    sqlite
   ]
-  ++ lib.optional (!stdenv.hostPlatform.isAarch64) angelscript
+  ++ lib.optional (stdenv.hostPlatform.isWindows || stdenv.hostPlatform.isLinux) libopenglrecorder
   ++ lib.optional stdenv.hostPlatform.isLinux openal
-  ++ lib.optionals stdenv.hostPlatform.isDarwin [ OpenAL IOKit Cocoa ];
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [ OpenAL IOKit Cocoa libsamplerate ];
 
   cmakeFlags = [
-    "-DBUILD_RECORDER=OFF" # libopenglrecorder is not in nixpkgs
-    # doesn't work with our 2.35.0 on aarch64-linux
-    "-DUSE_SYSTEM_ANGELSCRIPT=${if !stdenv.hostPlatform.isAarch64 then "ON" else "OFF"}"
+    "-DBUILD_RECORDER=${if (stdenv.hostPlatform.isWindows || stdenv.hostPlatform.isLinux) then "ON" else "OFF"}"
+    "-DUSE_SYSTEM_ANGELSCRIPT=ON"
     "-DCHECK_ASSETS=OFF"
     "-DUSE_SYSTEM_WIIUSE=ON"
     "-DOpenGL_GL_PREFERENCE=GLVND"