gnu: wesnoth: Fix building with newer boost.

* 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.
master
Efraim Flashner 2018-12-31 10:26:16 +02:00
parent 5dc5c5ea41
commit 47970cf66c
No known key found for this signature in database
GPG Key ID: 41AAE7DCCA3D8351
3 changed files with 49 additions and 1 deletions

View 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 \

View 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

View File

@ -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()