summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIonen Wolkens <ionen@gentoo.org>2024-05-27 11:30:44 -0400
committerIonen Wolkens <ionen@gentoo.org>2024-05-27 11:51:46 -0400
commit998fae593fd83b10e798c8fd9bbbad5b73ed7ac0 (patch)
treebf98e6fabd7779601cfe79824d22d07f014888b4 /games-strategy
parentapp-admin/conky: drop 1.20.2 (diff)
downloadgentoo-998fae593fd83b10e798c8fd9bbbad5b73ed7ac0.tar.gz
gentoo-998fae593fd83b10e798c8fd9bbbad5b73ed7ac0.tar.bz2
gentoo-998fae593fd83b10e798c8fd9bbbad5b73ed7ac0.zip
games-strategy/freeorion: fix build+runtime w/ boost-1.85
Re-tested in a clean env and seems fine. Hoping -fno-sa won't be permanent, but it'll do better than an upper bound. Closes: https://bugs.gentoo.org/932780 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'games-strategy')
-rw-r--r--games-strategy/freeorion/files/freeorion-0.5.0.1-boost1.85.patch57
-rw-r--r--games-strategy/freeorion/freeorion-0.5.0.1-r1.ebuild (renamed from games-strategy/freeorion/freeorion-0.5.0.1.ebuild)8
2 files changed, 63 insertions, 2 deletions
diff --git a/games-strategy/freeorion/files/freeorion-0.5.0.1-boost1.85.patch b/games-strategy/freeorion/files/freeorion-0.5.0.1-boost1.85.patch
new file mode 100644
index 000000000000..cb7f450ffc37
--- /dev/null
+++ b/games-strategy/freeorion/files/freeorion-0.5.0.1-boost1.85.patch
@@ -0,0 +1,57 @@
+https://bugs.gentoo.org/932780
+https://github.com/freeorion/freeorion/issues/4897
+
+Backport of: https://github.com/freeorion/freeorion/pull/4899/commits
+--- a/GG/src/dialogs/FileDlg.cpp
++++ b/GG/src/dialogs/FileDlg.cpp
+@@ -11,3 +11,3 @@
+ #include <boost/algorithm/string/predicate.hpp>
+-#include <boost/filesystem/operations.hpp>
++#include <boost/filesystem.hpp>
+ #include <boost/format.hpp>
+@@ -217,3 +217,3 @@
+ fs::path filename_path = fs::system_complete(fs::path(m_init_filename));
+- m_files_edit->SetText(filename_path.leaf().string());
++ m_files_edit->SetText(filename_path.filename().string());
+ }
+@@ -550,3 +550,3 @@
+ if ((s_working_dir.string() != s_working_dir.root_path().string() &&
+- !s_working_dir.branch_path().string().empty()) ||
++ !s_working_dir.parent_path().string().empty()) ||
+ Win32Paths())
+@@ -696,6 +696,6 @@
+ if (s_working_dir.string() != s_working_dir.root_path().string() &&
+- !s_working_dir.branch_path().string().empty())
++ !s_working_dir.parent_path().string().empty())
+ {
+ // move to new directory
+- SetWorkingDirectory(s_working_dir.branch_path());
++ SetWorkingDirectory(s_working_dir.parent_path());
+
+--- a/util/Directories.cpp
++++ b/util/Directories.cpp
+@@ -6,5 +6,4 @@
+ #include <boost/algorithm/string/trim.hpp>
+-#include <boost/filesystem/convenience.hpp>
+-#include <boost/filesystem/operations.hpp>
+ #include <boost/date_time/posix_time/posix_time.hpp>
++#include <boost/filesystem.hpp>
+
+@@ -268,3 +267,3 @@
+ fs::path binary_file = fs::system_complete(FilenameToPath(argv0));
+- bin_dir = binary_file.branch_path();
++ bin_dir = binary_file.parent_path();
+ } catch (const fs::filesystem_error &) {
+@@ -317,3 +316,3 @@
+ fs::path binary_file = fs::system_complete(fs::path(path_text));
+- bin_dir = binary_file.branch_path();
++ bin_dir = binary_file.parent_path();
+
+--- a/util/OptionsDB.cpp
++++ b/util/OptionsDB.cpp
+@@ -16,4 +16,3 @@
+ #include <boost/algorithm/string/predicate.hpp>
+-#include <boost/filesystem/fstream.hpp>
+-#include <boost/filesystem/operations.hpp>
++#include <boost/filesystem.hpp>
+ #include <boost/range/algorithm_ext/erase.hpp>
diff --git a/games-strategy/freeorion/freeorion-0.5.0.1.ebuild b/games-strategy/freeorion/freeorion-0.5.0.1-r1.ebuild
index 7f69517f40d8..60ff58559cb2 100644
--- a/games-strategy/freeorion/freeorion-0.5.0.1.ebuild
+++ b/games-strategy/freeorion/freeorion-0.5.0.1-r1.ebuild
@@ -18,10 +18,9 @@ IUSE="+client doc test"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RESTRICT="!test? ( test )"
-# bug #932780 wrt boost upper bound
DEPEND="
${PYTHON_DEPS}
- $(python_gen_cond_dep '<dev-libs/boost-1.85:=[${PYTHON_USEDEP},nls,python]')
+ $(python_gen_cond_dep 'dev-libs/boost:=[${PYTHON_USEDEP},nls,python]')
sys-libs/zlib:=
client? (
media-libs/freetype
@@ -50,6 +49,10 @@ BDEPEND="
test? ( $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]') )
"
+PATCHES=(
+ "${FILESDIR}"/${P}-boost1.85.patch
+)
+
freeorion_check-reqs() {
# cc1plus processes may suddenly use ~1.5GB all at once early on (2+GB
# if debug symbols) then far less for the rest, check minimal jobs*1.5
@@ -75,6 +78,7 @@ src_prepare() {
}
src_configure() {
+ append-flags -fno-strict-aliasing #932780
filter-lto # -Werror=odr issues
local mycmakeargs=(