about summary refs log tree commit diff
path: root/pkgs/games
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2019-01-10 13:07:21 +0100
committerVladimír Čunát <vcunat@gmail.com>2019-01-10 13:07:21 +0100
commit287144e34258f353425ba78817439df1f2c9e80d (patch)
treeec96c46c08855adc24b3664395b20974bd6923ea /pkgs/games
parent528664e3bb33bae66d4ce41877fe573395010dd9 (diff)
parente0fd84cf439f39d31e2c317b228b0c035cc6211d (diff)
Merge branch 'master' into staging-next
Diffstat (limited to 'pkgs/games')
-rw-r--r--pkgs/games/airstrike/default.nix4
-rw-r--r--pkgs/games/btanks/default.nix4
-rw-r--r--pkgs/games/eboard/default.nix4
-rw-r--r--pkgs/games/egoboo/default.nix4
-rw-r--r--pkgs/games/globulation/default.nix8
-rw-r--r--pkgs/games/gnujump/default.nix4
-rw-r--r--pkgs/games/minetest/default.nix124
-rw-r--r--pkgs/games/opendungeons/default.nix3
8 files changed, 105 insertions, 50 deletions
diff --git a/pkgs/games/airstrike/default.nix b/pkgs/games/airstrike/default.nix
index a0bbd3b1c6717..02ea6f6880692 100644
--- a/pkgs/games/airstrike/default.nix
+++ b/pkgs/games/airstrike/default.nix
@@ -11,6 +11,10 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ makeWrapper SDL SDL_image ];
 
+  NIX_LDFLAGS = [
+    "-lm"
+  ];
+
   installPhase = ''
     ls -l
     mkdir -p $out/bin
diff --git a/pkgs/games/btanks/default.nix b/pkgs/games/btanks/default.nix
index b1c20d72520e6..9de90069a3759 100644
--- a/pkgs/games/btanks/default.nix
+++ b/pkgs/games/btanks/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, scons, pkgconfig, SDL, libGLU_combined, zlib, smpeg
+{ stdenv, fetchurl, fetchpatch, sconsPackages, pkgconfig, SDL, libGLU_combined, zlib, smpeg
 , SDL_image, libvorbis, expat, zip, lua5_1 }:
 
 stdenv.mkDerivation rec {
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "0ha35kxc8xlbg74wsrbapfgxvcrwy6psjkqi7c6adxs55dmcxliz";
   };
 
-  nativeBuildInputs = [ scons pkgconfig ];
+  nativeBuildInputs = [ sconsPackages.scons_3_0_1 pkgconfig ];
   buildInputs = [ SDL libGLU_combined zlib smpeg SDL_image libvorbis expat zip lua5_1 ];
 
   NIX_CFLAGS_COMPILE = "-I${SDL_image}/include/SDL";
diff --git a/pkgs/games/eboard/default.nix b/pkgs/games/eboard/default.nix
index bed3abccf9b4b..206ed02e69ce0 100644
--- a/pkgs/games/eboard/default.nix
+++ b/pkgs/games/eboard/default.nix
@@ -21,6 +21,10 @@ stdenv.mkDerivation {
 
   NIX_CFLAGS_COMPILE = [ "-fpermissive" ];
 
+  NIX_LDFLAGS = [
+    "-ldl"
+  ];
+
   meta = {
     homepage = http://www.bergo.eng.br/eboard/;
     description = "Chess interface for Unix-like systems";
diff --git a/pkgs/games/egoboo/default.nix b/pkgs/games/egoboo/default.nix
index 29ad352c31686..98ab4d27d5f59 100644
--- a/pkgs/games/egoboo/default.nix
+++ b/pkgs/games/egoboo/default.nix
@@ -44,6 +44,10 @@ stdenv.mkDerivation rec {
     '';
   */
 
+  NIX_LDFLAGS = [
+    "-lm"
+  ];
+
   meta = {
     description = "3D dungeon crawling adventure";
 
diff --git a/pkgs/games/globulation/default.nix b/pkgs/games/globulation/default.nix
index 0c3b184b49524..edfb05d237cd3 100644
--- a/pkgs/games/globulation/default.nix
+++ b/pkgs/games/globulation/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, libGLU_combined, SDL, scons, SDL_ttf, SDL_image, zlib, SDL_net
+{ stdenv, fetchurl, libGLU_combined, SDL, sconsPackages, SDL_ttf, SDL_image, zlib, SDL_net
 , speex, libvorbis, libogg, boost, fribidi, bsdiff
 , fetchpatch
 }:
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     sed -i -e "s@env = Environment()@env = Environment( ENV = os.environ )@" SConstruct
   '';
 
-  nativeBuildInputs = [ scons ];
+  nativeBuildInputs = [ sconsPackages.scons_3_0_1 ];
   buildInputs = [ libGLU_combined SDL SDL_ttf SDL_image zlib SDL_net speex libvorbis libogg boost fribidi bsdiff ];
 
   postConfigure = ''
@@ -41,6 +41,10 @@ stdenv.mkDerivation rec {
     sconsFlags+=" DATADIR=$out/share/globulation2/glob2"
   '';
 
+  NIX_LDFLAGS = [
+    "-lboost_system"
+  ];
+
   meta = with stdenv.lib; {
     description = "RTS without micromanagement";
     maintainers = with maintainers; [ raskin ];
diff --git a/pkgs/games/gnujump/default.nix b/pkgs/games/gnujump/default.nix
index ae2cbd818417c..d4cbb04f39b84 100644
--- a/pkgs/games/gnujump/default.nix
+++ b/pkgs/games/gnujump/default.nix
@@ -9,6 +9,10 @@ stdenv.mkDerivation rec {
   };
   buildInputs = [ SDL SDL_image SDL_mixer ];
 
+  NIX_LDFLAGS = [
+    "-lm"
+  ];
+
   meta = with stdenv.lib; {
     homepage = "https://jump.gnu.sinusoid.es/";
     description = "A clone of the simple yet addictive game Xjump";
diff --git a/pkgs/games/minetest/default.nix b/pkgs/games/minetest/default.nix
index 379794c1f8630..110403af2ac70 100644
--- a/pkgs/games/minetest/default.nix
+++ b/pkgs/games/minetest/default.nix
@@ -1,56 +1,88 @@
 { stdenv, fetchFromGitHub, cmake, irrlicht, libpng, bzip2, curl, libogg, jsoncpp
 , libjpeg, libXxf86vm, libGLU_combined, openal, libvorbis, xlibsWrapper, sqlite, luajit
-, freetype, gettext, doxygen, ncurses, leveldb
+, freetype, gettext, doxygen, ncurses, graphviz, xorg
+, leveldb, postgresql, hiredis
 }:
 
+with stdenv.lib;
+
 let
-  version = "0.4.17.1";
-  sources = {
-    src = fetchFromGitHub {
-      owner = "minetest";
-      repo = "minetest";
-      rev = "${version}";
-      sha256 = "19sfblgh9mchkgw32n7gdvm7a8a9jxsl9cdlgmxn9bk9m939a2sg";
+  boolToCMake = b: if b then "ON" else "OFF";
+
+  generic = { version, rev ? version, sha256, dataRev ? version, dataSha256, buildClient ? true, buildServer ? false }: let
+    sources = {
+      src = fetchFromGitHub {
+        owner = "minetest";
+        repo = "minetest";
+        inherit rev sha256;
+      };
+      data = fetchFromGitHub {
+        owner = "minetest";
+        repo = "minetest_game";
+        rev = dataRev;
+        sha256 = dataSha256;
+      };
     };
-    data = fetchFromGitHub {
-      owner = "minetest";
-      repo = "minetest_game";
-      rev = "${version}";
-      sha256 = "1g8iw2pya32ifljbdx6z6rpcinmzm81i9minhi2bi1d500ailn7s";
+  in stdenv.mkDerivation {
+    name = "minetest-${version}";
+
+    src = sources.src;
+
+    cmakeFlags = [
+      "-DBUILD_CLIENT=${boolToCMake buildClient}"
+      "-DBUILD_SERVER=${boolToCMake buildServer}"
+      "-DENABLE_FREETYPE=1"
+      "-DENABLE_GETTEXT=1"
+      "-DENABLE_SYSTEM_JSONCPP=1"
+      "-DIRRLICHT_INCLUDE_DIR=${irrlicht}/include/irrlicht"
+    ] ++ optionals buildClient [
+      "-DOpenGL_GL_PREFERENCE=GLVND"
+    ];
+
+    NIX_CFLAGS_COMPILE = [ "-DluaL_reg=luaL_Reg" ]; # needed since luajit-2.1.0-beta3
+
+    nativeBuildInputs = [ cmake doxygen graphviz ];
+
+    buildInputs = [
+      irrlicht luajit jsoncpp gettext freetype sqlite curl bzip2 ncurses
+    ] ++ optionals buildClient [
+      libpng libjpeg libGLU_combined openal libogg libvorbis xorg.libX11 libXxf86vm
+    ] ++ optional buildServer [
+      leveldb postgresql hiredis
+    ];
+
+    postInstall = ''
+      mkdir -pv $out/share/minetest/games/minetest_game/
+      cp -rv ${sources.data}/* $out/share/minetest/games/minetest_game/
+    '';
+
+    meta = with stdenv.lib; {
+      homepage = http://minetest.net/;
+      description = "Infinite-world block sandbox game";
+      license = licenses.lgpl21Plus;
+      platforms = platforms.linux;
+      maintainers = with maintainers; [ jgeerds c0dehero fpletz ];
     };
   };
-in stdenv.mkDerivation {
-  name = "minetest-${version}";
-
-  src = sources.src;
-
-  cmakeFlags = [
-    "-DENABLE_FREETYPE=1"
-    "-DENABLE_GETTEXT=1"
-    "-DENABLE_SYSTEM_JSONCPP=1"
-    "-DGETTEXT_INCLUDE_DIR=${gettext}/include/gettext"
-    "-DCURL_INCLUDE_DIR=${curl.dev}/include/curl"
-    "-DIRRLICHT_INCLUDE_DIR=${irrlicht}/include/irrlicht"
-  ];
-
-  NIX_CFLAGS_COMPILE = [ "-DluaL_reg=luaL_Reg" ]; # needed since luajit-2.1.0-beta3
-
-  buildInputs = [
-    cmake irrlicht libpng bzip2 libjpeg curl libogg jsoncpp libXxf86vm libGLU_combined
-    openal libvorbis xlibsWrapper sqlite luajit freetype gettext doxygen ncurses
-    leveldb
-  ];
-
-  postInstall = ''
-    mkdir -pv $out/share/minetest/games/minetest_game/
-    cp -rv ${sources.data}/* $out/share/minetest/games/minetest_game/
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://minetest.net/;
-    description = "Infinite-world block sandbox game";
-    license = licenses.lgpl21Plus;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ jgeerds c0dehero ];
+
+  v4 = {
+    version = "0.4.17.1";
+    sha256 = "19sfblgh9mchkgw32n7gdvm7a8a9jxsl9cdlgmxn9bk9m939a2sg";
+    dataSha256 = "1g8iw2pya32ifljbdx6z6rpcinmzm81i9minhi2bi1d500ailn7s";
   };
+
+  v5 = {
+    version = "git-5.0.0-dev-2019-01-08";
+    rev = "95d4ff6d1b62945decc85003a99588bb0539c45b";
+    sha256 = "1qn42d2lfgwadb26mix6c7j457zsl8cqqjfwhaa8y34hii1q44bw";
+    dataRev = "a2c9523bce5bcefdc930ff6f14d6d94f57473be9";
+    dataSha256 = "1p26zvnmq99cqlrby4294mp2fmp8iqdcjld0ph39x41ifc50lfdf";
+  };
+
+in {
+  minetestclient_4 = generic (v4 // { buildClient = true; buildServer = false; });
+  minetestserver_4 = generic (v4 // { buildClient = false; buildServer = true; });
+
+  minetestclient_5 = generic (v5 // { buildClient = true; buildServer = false; });
+  minetestserver_5 = generic (v5 // { buildClient = false; buildServer = true; });
 }
diff --git a/pkgs/games/opendungeons/default.nix b/pkgs/games/opendungeons/default.nix
index 2a162525388f4..3c4e85a91e5a7 100644
--- a/pkgs/games/opendungeons/default.nix
+++ b/pkgs/games/opendungeons/default.nix
@@ -15,6 +15,9 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ cmake ogre cegui boost sfml openal ois ];
+  NIX_LDFLAGS = [
+    "-lpthread"
+  ];
 
   meta = with stdenv.lib; {
     description = "An open source, real time strategy game sharing game elements with the Dungeon Keeper series and Evil Genius.";