summaryrefslogtreecommitdiffstats
path: root/pkgs/games
diff options
context:
space:
mode:
authorrardiol <ricardo.ardissone@gmail.com>2017-02-15 04:11:59 -0200
committerFranz Pletz <fpletz@fnordicwalking.de>2017-02-15 07:11:59 +0100
commit195ca7393c42a9d93d34ca8911082101cb8db642 (patch)
tree35f0dfdfb78b104c9074d924fb9c03e054f85f52 /pkgs/games
parent01e5b8527dacfb61319dcdc2178ec6aed7f7f3c5 (diff)
widelands: 18 -> 19 (#22796)
Diffstat (limited to 'pkgs/games')
-rw-r--r--pkgs/games/widelands/bincmake.patch21
-rw-r--r--pkgs/games/widelands/default.nix37
2 files changed, 46 insertions, 12 deletions
diff --git a/pkgs/games/widelands/bincmake.patch b/pkgs/games/widelands/bincmake.patch
new file mode 100644
index 000000000000..ed6a99125223
--- /dev/null
+++ b/pkgs/games/widelands/bincmake.patch
@@ -0,0 +1,21 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -25,6 +25,8 @@
+ # Packagers (or people using make install) have to set this variable to an absolute path.
+ wl_set_if_unset(WL_INSTALL_DATADIR "./data")
+
++wl_set_if_unset(WL_INSTALL_BINARY "./bin")
++
+ if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
+ if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.7)
+ message(FATAL_ERROR "Widelands needs GCC >= 4.7 to compile.")
+
+--- a/cmake/WlFunctions.cmake
++++ b/cmake/WlFunctions.cmake
+@@ -276,5 +276,5 @@
+
+ #Quoting the CMake documentation on DESTINATION:
+ #"If a relative path is given it is interpreted relative to the value of CMAKE_INSTALL_PREFIX"
+- install(TARGETS ${NAME} DESTINATION "." COMPONENT ExecutableFiles)
++ install(TARGETS ${NAME} DESTINATION ${WL_INSTALL_BINARY} COMPONENT ExecutableFiles)
+ endfunction()
diff --git a/pkgs/games/widelands/default.nix b/pkgs/games/widelands/default.nix
index b6008bd7e76a..94fd23cd8cbd 100644
--- a/pkgs/games/widelands/default.nix
+++ b/pkgs/games/widelands/default.nix
@@ -1,10 +1,11 @@
{ stdenv, fetchurl, cmake, python, gettext
-, boost, libpng, zlib, glew, lua
-, SDL, SDL_image, SDL_mixer, SDL_net, SDL_ttf, SDL_gfx
+, boost, libpng, zlib, glew, lua, doxygen, icu
+, SDL2, SDL2_image, SDL2_mixer, SDL2_net, SDL2_ttf, SDL2_gfx
}:
-stdenv.mkDerivation {
- name = "widelands-18";
+stdenv.mkDerivation rec {
+ name = "widelands-${version}";
+ version = "19";
meta = with stdenv.lib; {
description = "RTS with multiple-goods economy";
@@ -20,27 +21,39 @@ stdenv.mkDerivation {
hydraPlatforms = [];
};
+ patches = [
+ ./bincmake.patch
+ ];
src = fetchurl {
- url = "https://launchpad.net/widelands/build18/build-18/+download/"
- + "widelands-build18-src.tar.bz2";
- sha256 = "1qvx1cwkf61iwq0qkngvg460dsxqsfvk36qc7jf7mzwkiwbxkzvd";
+ url = "https://launchpad.net/widelands/build${version}/build${version}/+download/"
+ + "widelands-build${version}-src.tar.bz2";
+ sha256 = "19h1gina7k1ai2mn2fd75lxm8iz8wrs6dz6dchdvg8i8d39gj4g5";
};
preConfigure = ''
cmakeFlags="
- -DWL_INSTALL_PREFIX=$out
- -DWL_INSTALL_BINDIR=bin
- -DWL_INSTALL_DATADIR=share/widelands
+ -DWL_INSTALL_BASEDIR=$out
+ -DWL_INSTALL_DATADIR=$out/share/widelands
+ -DWL_INSTALL_BINARY=$out/bin
"
'';
nativeBuildInputs = [ cmake python gettext ];
buildInputs = [
- boost libpng zlib glew lua
- SDL SDL_image SDL_mixer SDL_net SDL_ttf SDL_gfx
+ boost libpng zlib glew lua doxygen icu
+ SDL2 SDL2_image SDL2_mixer SDL2_net SDL2_ttf
];
+ prePatch = ''
+ substituteInPlace ./debian/widelands.desktop --replace "/usr/share/games/widelands/data/" "$out/share/widelands/"
+ '';
+
+ postInstall = ''
+ mkdir -p "$out/share/applications/"
+ cp -v "../debian/widelands.desktop" "$out/share/applications/"
+ '';
+
enableParallelBuilding = true;
}