about summary refs log tree commit diff
path: root/pkgs/games/spring
diff options
context:
space:
mode:
authorEvgeny Egorochkin <phreedom.stdin@gmail.com>2010-11-13 07:47:04 +0000
committerEvgeny Egorochkin <phreedom.stdin@gmail.com>2010-11-13 07:47:04 +0000
commit5029db216055b351dc8107eaf0178bb540b22549 (patch)
tree77cbeafbafed4debc747d27dc53b213b397f1f32 /pkgs/games/spring
parent4018b1dd39f66b36d14cd3644c95bd90899e5454 (diff)
Spring RTS: packaged along with its deps and utils: libDevIL, libtorrent-rasterbar, spring-lobby.
svn path=/nixpkgs/trunk/; revision=24681
Diffstat (limited to 'pkgs/games/spring')
-rw-r--r--pkgs/games/spring/default.nix36
-rw-r--r--pkgs/games/spring/gcc44.patch10
-rw-r--r--pkgs/games/spring/spring-lobby.nix30
3 files changed, 76 insertions, 0 deletions
diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix
new file mode 100644
index 0000000000000..1308d93c6723a
--- /dev/null
+++ b/pkgs/games/spring/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, cmake, lzma, boost, libdevil, zlib, p7zip
+, openal, libvorbis, glew, freetype, xlibs, SDL, mesa
+, jdk ? null, python ? null
+, withAI ? true # support for AI Interfaces and Skirmish AIs
+}:
+stdenv.mkDerivation rec {
+
+  name = "spring-${version}";
+  version = "0.82.6.1";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/springrts/spring_${version}_src.tar.lzma";
+    sha256 = "1bi64jgc390sqc514scz80a0pdgc5n9kx45sppky2152y725900n";
+  };
+
+  buildInputs = [ cmake lzma boost libdevil zlib p7zip openal libvorbis freetype SDL
+    xlibs.libX11 xlibs.libXcursor mesa glew ]
+    ++ stdenv.lib.optional withAI jdk
+    ++ stdenv.lib.optional withAI python;
+
+  prePatch = ''
+    substituteInPlace cont/base/make_gamedata_arch.sh --replace "#!/bin/sh" "#!${stdenv.shell}/bin/sh" \
+      --replace "which" "type -p"    
+  '';
+
+  patches = [ ./gcc44.patch];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://springrts.com/;
+    description = "A powerful real-time strategy(RTS) game engine";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.phreedom ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/games/spring/gcc44.patch b/pkgs/games/spring/gcc44.patch
new file mode 100644
index 0000000000000..4df1e6e825ff0
--- /dev/null
+++ b/pkgs/games/spring/gcc44.patch
@@ -0,0 +1,10 @@
+--- spring_0.82.6.1-orig/rts/lib/lobby/Connection.h     2010-10-15 23:08:24.000000000 +0300
++++ spring_0.82.6.1/rts/lib/lobby/Connection.h  2010-11-11 14:48:55.000000000 +0200
+@@ -7,6 +7,7 @@
+ #include <boost/asio/deadline_timer.hpp>
+ #include <boost/asio/ip/tcp.hpp>
+ #include <string>
++#include <list>
+ 
+ struct ClientStatus
+ {
diff --git a/pkgs/games/spring/spring-lobby.nix b/pkgs/games/spring/spring-lobby.nix
new file mode 100644
index 0000000000000..9365f2e658588
--- /dev/null
+++ b/pkgs/games/spring/spring-lobby.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, cmake, wxGTK, openal, pkgconfig, curl, libtorrentRasterbar
+, gettext, bash, gawk, boost }:
+stdenv.mkDerivation rec {
+
+  name = "spring-lobby-${version}";
+  version = "0.116";
+
+  src = fetchurl {
+    url = "http://www.springlobby.info/tarballs/springlobby-${version}.tar.bz2";
+    sha256 = "04gb2dc2xc0lj2d14jzz330kn5faffdz3xph9bg2m68b28fv0xsk";
+  };
+
+  buildInputs = [ cmake wxGTK openal pkgconfig curl gettext libtorrentRasterbar boost ];
+
+  prePatch = ''
+    substituteInPlace tools/regen_config_header.sh --replace "#!/bin/bash" "#!${bash}/bin/bash"
+    substituteInPlace tools/test-susynclib.awk --replace "#!/usr/bin/awk" "#!${gawk}/bin/awk"
+    substituteInPlace CMakeLists.txt --replace "boost_system-mt" "boost_system"
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://springlobby.info/;
+    description = "A free cross-platform lobby client for the Spring RTS project.";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.phreedom ];
+    platforms = platforms.linux;
+  };
+}
\ No newline at end of file