diff --git a/pkgs/games/freeorion/92455f9.patch b/pkgs/games/freeorion/92455f9.patch deleted file mode 100644 index e40ee78de6df..000000000000 --- a/pkgs/games/freeorion/92455f9.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -Naur GG/src/Font.cpp ---- /GG/src/Font.cpp -+++ /GG/src/Font.cpp -@@ -1586,8 +1586,13 @@ - using boost::lexical_cast; - FT_UInt index = FT_Get_Char_Index(face, ch); - if (index) { -- if (FT_Load_Glyph(face, index, FT_LOAD_DEFAULT)) -- ThrowBadGlyph("GG::Font::GetGlyphBitmap : Freetype could not load the glyph for character '%1%'", ch); -+ if (FT_Load_Glyph(face, index, FT_LOAD_DEFAULT)) { -+ // loading of a glpyh failed so we replace it with -+ // the 'Replacement Character' at codepoint 0xFFFD -+ FT_UInt tmp_index = FT_Get_Char_Index(face, 0xFFFD); -+ if (FT_Load_Glyph(face, tmp_index, FT_LOAD_DEFAULT)) -+ ThrowBadGlyph("GG::Font::GetGlyphBitmap : Freetype could not load the glyph for character '%1%'", ch); -+ } - - FT_GlyphSlot glyph = face->glyph; - diff --git a/pkgs/games/freeorion/default.nix b/pkgs/games/freeorion/default.nix index e143b6ebcf31..91d4db32b683 100644 --- a/pkgs/games/freeorion/default.nix +++ b/pkgs/games/freeorion/default.nix @@ -2,18 +2,19 @@ , libxslt, makeWrapper }: stdenv.mkDerivation rec { - version = "0.4.5"; + version = "0.4.6"; name = "freeorion-${version}"; src = fetchurl { - url = "https://github.com/freeorion/freeorion/releases/download/v0.4.5/FreeOrion_v0.4.5_2015-09-01.f203162_Source.tar.gz"; - sha256 = "3b99b92eeac72bd059566dbabfab54368989ba83f72e769bc94eb8dd4fe414c0"; + url = "https://github.com/freeorion/freeorion/releases/download/v0.4.6/FreeOrion_v0.4.6_2016-09-16.49f9123_Source.tar.gz"; + sha256 = "04g3x1cymf7mnmc2f5mm3c2r5izjmy7z3pvk2ykzz8f8b2kz6gry"; }; buildInputs = [ cmake boost SDL2 python2 freetype openal libogg libvorbis zlib libpng libtiff libjpeg mesa glew doxygen makeWrapper ]; - # cherry pick for acceptable performance https://github.com/freeorion/freeorion/commit/92455f97c28055e296718230d2e3744eccd738ec - patches = [ ./92455f9.patch ]; + patches = [ + ./fix_rpaths.patch + ]; enableParallelBuilding = true; diff --git a/pkgs/games/freeorion/fix_rpaths.patch b/pkgs/games/freeorion/fix_rpaths.patch new file mode 100644 index 000000000000..f53e9821e5dd --- /dev/null +++ b/pkgs/games/freeorion/fix_rpaths.patch @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -46,7 +46,7 @@ + set(FreeOrion_INSTALL_LIBDIR "${CMAKE_INSTALL_LIBDIR}/freeorion") + endif() + +-set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${FreeOrion_INSTALL_LIBDIR}") ++set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}/freeorion") + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) + + if (WIN32)