summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2011-01-10 12:24:48 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2011-01-10 12:24:48 +0000
commit3792a1ec3770e04ab32abbe31a9bce49f3e02b46 (patch)
tree56b2fd21f90f72236be969d039a2fec0e983a290
parent0eaec55235cb6b13178459a209688bf41ca3c194 (diff)
downloadnixlib-3792a1ec3770e04ab32abbe31a9bce49f3e02b46.tar
nixlib-3792a1ec3770e04ab32abbe31a9bce49f3e02b46.tar.gz
nixlib-3792a1ec3770e04ab32abbe31a9bce49f3e02b46.tar.bz2
nixlib-3792a1ec3770e04ab32abbe31a9bce49f3e02b46.tar.lz
nixlib-3792a1ec3770e04ab32abbe31a9bce49f3e02b46.tar.xz
nixlib-3792a1ec3770e04ab32abbe31a9bce49f3e02b46.tar.zst
nixlib-3792a1ec3770e04ab32abbe31a9bce49f3e02b46.zip
* ioquake3 updated to 1.36. Also applied a hack to get better
  coverage data.
* Quake 3 wrapper: wrap the dedicated server.

svn path=/nixpkgs/trunk/; revision=25487
-rw-r--r--pkgs/games/quake3/game/default.nix10
-rw-r--r--pkgs/games/quake3/game/exit.patch12
-rw-r--r--pkgs/games/quake3/wrapper/builder.sh3
3 files changed, 22 insertions, 3 deletions
diff --git a/pkgs/games/quake3/game/default.nix b/pkgs/games/quake3/game/default.nix
index 292748c4546a..3b82ebb83a8d 100644
--- a/pkgs/games/quake3/game/default.nix
+++ b/pkgs/games/quake3/game/default.nix
@@ -1,10 +1,10 @@
-{stdenv, fetchurl, x11, SDL, mesa, openal}:
+{ stdenv, fetchurl, x11, SDL, mesa, openal }:
 
 stdenv.mkDerivation {
-  name = "ioquake3-1.34-pre-rc3";
+  name = "ioquake3-1.36";
   
   src = fetchurl {
-    url = http://ioquake3.org/files/ioquake3_1.34-rc3.tar.bz2;
+    url = http://ioquake3.org/files/1.36/ioquake3-1.36.tar.bz2; # calls itself "1.34-rc3"
     sha256 = "008vah60z0n9h1qp373xbqvhwfbyywbbhd1np0h0yw66g0qzchzv";
   };
 
@@ -16,6 +16,10 @@ stdenv.mkDerivation {
       url = "http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/games-fps/quake3/files/quake3-1.34_rc3-gcc42.patch?rev=1.1";
       sha256 = "06c9lxfczcby5q29pim231mr2wdkvbv36xp9zbxp9vk0dfs8rv9x";
     })
+
+    # Do an exit() instead of _exit().  This is nice for gcov.
+    # Upstream also seems to do this.
+    ./exit.patch    
   ];
   
   buildInputs = [x11 SDL mesa openal];
diff --git a/pkgs/games/quake3/game/exit.patch b/pkgs/games/quake3/game/exit.patch
new file mode 100644
index 000000000000..82785167a782
--- /dev/null
+++ b/pkgs/games/quake3/game/exit.patch
@@ -0,0 +1,12 @@
+diff -ru -x '*~' ioquake3_1.34-rc3-orig//code/unix/unix_main.c ioquake3_1.34-rc3//code/unix/unix_main.c
+--- code/unix/unix_main.c	2006-11-28 23:05:25.000000000 +0100
++++ code/unix/unix_main.c	2011-01-10 12:43:51.000000000 +0100
+@@ -341,7 +341,7 @@
+ void Sys_Exit( int ex ) {
+   Sys_ConsoleInputShutdown();
+ 
+-#ifdef NDEBUG // regular behavior
++#if 0
+ 
+   // We can't do this 
+   //  as long as GL DLL's keep installing with atexit...
diff --git a/pkgs/games/quake3/wrapper/builder.sh b/pkgs/games/quake3/wrapper/builder.sh
index f070973681ef..57d6bc6a5ba2 100644
--- a/pkgs/games/quake3/wrapper/builder.sh
+++ b/pkgs/games/quake3/wrapper/builder.sh
@@ -13,3 +13,6 @@ done
 makeWrapper $game/ioquake3.* $out/bin/quake3 \
     --suffix-each LD_LIBRARY_PATH ':' "$mesa/lib $gcc/lib" \
     --add-flags "+set fs_basepath $out +set r_allowSoftwareGL 1"
+
+makeWrapper $game/ioq3ded.* $out/bin/quake3-server \
+    --add-flags "+set fs_basepath $out"