gnu: wesnoth: Fix building with newer boost.
authorEfraim Flashner <efraim@flashner.co.il>
Mon, 31 Dec 2018 08:26:16 +0000 (10:26 +0200)
committerEfraim Flashner <efraim@flashner.co.il>
Mon, 31 Dec 2018 08:26:32 +0000 (10:26 +0200)
* gnu/packages/games.scm (wesnoth)[source]: Add patch.
* gnu/packages/patches/wenoth-newer-boost.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.

gnu/local.mk
gnu/packages/games.scm
gnu/packages/patches/wesnoth-newer-boost.patch [new file with mode: 0644]

index 5b11759..050d174 100644 (file)
@@ -1237,6 +1237,7 @@ dist_patch_DATA =                                         \
   %D%/packages/patches/wavpack-CVE-2018-7253.patch             \
   %D%/packages/patches/wavpack-CVE-2018-7254.patch             \
   %D%/packages/patches/weechat-python.patch                    \
+  %D%/packages/patches/wesnoth-newer-boost.patch               \
   %D%/packages/patches/wicd-bitrate-none-fix.patch             \
   %D%/packages/patches/wicd-get-selected-profile-fix.patch     \
   %D%/packages/patches/wicd-urwid-1.3.patch                    \
index 7896c9c..423c977 100644 (file)
@@ -2141,7 +2141,8 @@ falling, themeable graphics and sounds, and replays.")
                                   name "-" version ".tar.bz2"))
               (sha256
                (base32
-                "1kgpj2f22nnx4mwd1zis3s5ny2983aasgqsmz7wnqaq7n6a7ac85"))))
+                "1kgpj2f22nnx4mwd1zis3s5ny2983aasgqsmz7wnqaq7n6a7ac85"))
+              (patches (search-patches "wesnoth-newer-boost.patch"))))
     (build-system cmake-build-system)
     (arguments
      `(#:tests? #f)) ; no check target
diff --git a/gnu/packages/patches/wesnoth-newer-boost.patch b/gnu/packages/patches/wesnoth-newer-boost.patch
new file mode 100644 (file)
index 0000000..d48a48e
--- /dev/null
@@ -0,0 +1,46 @@
+https://github.com/wesnoth/wesnoth/commit/f6a32792d023d182d350b5a2ed9e469ad67484c8.patch
+This should be able to be removed with wesnoth@1.14.6
+
+From f6a32792d023d182d350b5a2ed9e469ad67484c8 Mon Sep 17 00:00:00 2001
+From: Wedge009 <wedge009@wedge009.net>
+Date: Thu, 27 Dec 2018 08:15:10 +1100
+Subject: [PATCH] Use explicit casts to accommodate changes to boost's tribool
+ in 1.69.
+
+(fixes #3646)
+---
+ src/units/frame.cpp | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/units/frame.cpp b/src/units/frame.cpp
+index 3215fa4fa79d..6370ad69566b 100644
+--- a/src/units/frame.cpp
++++ b/src/units/frame.cpp
+@@ -460,15 +460,15 @@ std::vector<std::string> frame_parsed_parameters::debug_strings() const
+       }
+       if(!boost::indeterminate(auto_vflip_)) {
+-              v.emplace_back("auto_vflip=" + utils::bool_string(auto_vflip_));
++              v.emplace_back("auto_vflip=" + utils::bool_string(static_cast<bool>(auto_vflip_)));
+       }
+       if(!boost::indeterminate(auto_hflip_)) {
+-              v.emplace_back("auto_hflip=" + utils::bool_string(auto_hflip_));
++              v.emplace_back("auto_hflip=" + utils::bool_string(static_cast<bool>(auto_hflip_)));
+       }
+       if(!boost::indeterminate(primary_frame_)) {
+-              v.emplace_back("primary_frame=" + utils::bool_string(primary_frame_));
++              v.emplace_back("primary_frame=" + utils::bool_string(static_cast<bool>(primary_frame_)));
+       }
+       if(!drawing_layer_.get_original().empty()) {
+@@ -768,7 +768,7 @@ const frame_parameters unit_frame::merge_parameters(int current_time, const fram
+       }
+       // Convert the tribool to bool
+-      const bool primary = result.primary_frame == true || boost::logic::indeterminate(result.primary_frame);
++      const bool primary = static_cast<bool>(result.primary_frame) || boost::logic::indeterminate(result.primary_frame);
+       /** The engine provides a default image to use for the unit when none is available */
+       result.image = current_val.image.is_void() || current_val.image.get_filename().empty()