summary refs log tree commit diff
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
parent4018b1dd39f66b36d14cd3644c95bd90899e5454 (diff)
downloadnixpkgs-5029db216055b351dc8107eaf0178bb540b22549.tar
nixpkgs-5029db216055b351dc8107eaf0178bb540b22549.tar.gz
nixpkgs-5029db216055b351dc8107eaf0178bb540b22549.tar.bz2
nixpkgs-5029db216055b351dc8107eaf0178bb540b22549.tar.lz
nixpkgs-5029db216055b351dc8107eaf0178bb540b22549.tar.xz
nixpkgs-5029db216055b351dc8107eaf0178bb540b22549.tar.zst
nixpkgs-5029db216055b351dc8107eaf0178bb540b22549.zip
Spring RTS: packaged along with its deps and utils: libDevIL, libtorrent-rasterbar, spring-lobby.
svn path=/nixpkgs/trunk/; revision=24681
-rw-r--r--pkgs/development/libraries/libdevil/default.nix23
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/default.nix22
-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
-rw-r--r--pkgs/top-level/all-packages.nix12
6 files changed, 133 insertions, 0 deletions
diff --git a/pkgs/development/libraries/libdevil/default.nix b/pkgs/development/libraries/libdevil/default.nix
new file mode 100644
index 00000000000..a67dc71f699
--- /dev/null
+++ b/pkgs/development/libraries/libdevil/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl
+, libjpeg ? null, libpng ? null, libmng ? null, lcms1 ? null, libtiff ? null, openexr ? null, mesa ? null, xlibs ? null }:
+stdenv.mkDerivation rec {
+
+  name ="libdevil-${version}";
+  version = "1.7.8";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/openil/DevIL-${version}.tar.gz";
+    sha256 = "1zd850nn7nvkkhasrv7kn17kzgslr5ry933v6db62s4lr0zzlbv8";
+  };
+
+  buildInputs = [ libjpeg libpng libmng lcms1 libtiff openexr mesa xlibs.libX11 ];
+  configureFlags = [ "--enable-ILU" "--enable-ILUT" ];
+
+  meta = with stdenv.lib; {
+    homepage = http://openil.sourceforge.net/;
+    description = "An image library which can can load, save, convert, manipulate,
+      filter and display a wide variety of image formats.";
+    license = licenses.lgpl2;
+    maintainers = [ maintainers.phreedom ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
new file mode 100644
index 00000000000..23cbaa2f97b
--- /dev/null
+++ b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, boost, openssl, pkgconfig, zlib }:
+
+stdenv.mkDerivation rec {
+  name = "libtorrent-rasterbar-${version}";
+  version = "0.15.4";
+  
+  src = fetchurl {
+    url = "http://libtorrent.googlecode.com/files/${name}.tar.gz";
+    sha256 = "1pjdn0as4h71bhm0fbjqsh1y10fbifn2hfrkhkgdsdqhz7vdbfwy";
+  };
+
+  buildInputs = [ boost pkgconfig openssl zlib ];
+
+  configureFlags = [ "--with-boost=${boost}/include/boost" "--with-boost-libdir=${boost}/lib" ];
+  
+  meta = with stdenv.lib; {
+    homepage = http://www.rasterbar.com/products/libtorrent/;
+    description = "A C++ BitTorrent implementation focusing on efficiency and scalability";
+    license = licenses.bsd;
+    maintainers = [ maintainers.phreedom ];
+  };
+}
diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix
new file mode 100644
index 00000000000..1308d93c672
--- /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 00000000000..4df1e6e825f
--- /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 00000000000..9365f2e6585
--- /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
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 82a309a407b..4ddad02ac30 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3220,6 +3220,8 @@ let
     inherit sqlite mysql;
   };
 
+  libdevil = callPackage ../development/libraries/libdevil { };
+
   libdiscid = callPackage ../development/libraries/libdiscid { };
 
   libdv = callPackage ../development/libraries/libdv { };
@@ -3435,6 +3437,8 @@ let
 
   libtommath = callPackage ../development/libraries/libtommath { };
 
+  libtorrentRasterbar = callPackage ../development/libraries/libtorrent-rasterbar { };
+
   libtunepimp = callPackage ../development/libraries/libtunepimp { };
 
   libgeotiff = callPackage ../development/libraries/libgeotiff { };
@@ -6630,6 +6634,14 @@ let
   spaceOrbit = callPackage ../games/orbit {
     inherit (gnome) esound;  };
 
+  spring = callPackage ../games/spring {
+    stdenv = stdenv2;
+  };
+
+  springLobby = callPackage ../games/spring/spring-lobby.nix { 
+    stdenv = stdenv2;
+  };
+
   superTux = callPackage ../games/super-tux { };
 
   superTuxKart = callPackage ../games/super-tux-kart { };