diff options
-rw-r--r-- | PKGBUILD | 20 | ||||
-rw-r--r-- | boost-1.85.patch | 71 | ||||
-rw-r--r-- | boost-1.86.patch | 33 |
3 files changed, 120 insertions, 4 deletions
@@ -9,7 +9,7 @@ _isaarch64=0 pkgname=freeorion pkgver=0.5.0.1 -pkgrel=1 +pkgrel=2 pkgdesc='A turn-based space empire and galactic conquest game' url='https://www.freeorion.org' arch=('x86_64' 'i686' 'aarch64') @@ -30,9 +30,21 @@ makedepends=( 'boost' ) conflicts=('freeorion-git' 'freeorion-bin') -source=("${pkgname}-${pkgver}.tar.gz::https://github.com/freeorion/freeorion/archive/v${pkgver}.tar.gz") -sha512sums=('1c772b10e0f92d80b005fdb626d004cedb7039a8d1a75c85c8c97ad31fb315ce23b070a110036cfa98b6305a67b936b34fedd251e22e965b7067055c7d9b77e0') -b2sums=('855ee3d6aa6b3cb181c4c0575fe12cf7627f03c1a0d02d40e111d4a6bae3da78be9c44776070837faaf2edda19f2f128b57d61de53407196187279e67e0d9f3c') +source=("${pkgname}-${pkgver}.tar.gz::https://github.com/freeorion/freeorion/archive/v${pkgver}.tar.gz" + boost-1.85.patch + boost-1.86.patch) +sha512sums=('1c772b10e0f92d80b005fdb626d004cedb7039a8d1a75c85c8c97ad31fb315ce23b070a110036cfa98b6305a67b936b34fedd251e22e965b7067055c7d9b77e0' + 'f72fedd390849f1924f135b063e9e0e18de7a021b6c86cdf82476c0025b62a769596c4165e1df0de003ba4d6375dfc507da76356e04e89afd3226aebbbd02f34' + 'f19c455c04965e48da916dc41d4870a2bf05da0e5a94fe8c4cf0376812382a8410a1a4de8760807ede78c3485fecd3a04c4879bf246b9b88be58e749bd5071b8') +b2sums=('855ee3d6aa6b3cb181c4c0575fe12cf7627f03c1a0d02d40e111d4a6bae3da78be9c44776070837faaf2edda19f2f128b57d61de53407196187279e67e0d9f3c' + 'a332597a766a6965d5b1abff734beb944d443d5f1971d199fda6d75a5b0bc2c8ef3b7a0f961c4290a7e0dc14248152abcf93d1941d2451db21dd1191eff399b9' + '47008e31a9b35cbc28a3f6a3b606bc8aa3d6096ac3e1339aec39e6e27c7d99e4c0fd3a8eb997f9276b02218d1cb0d0cd0ef2edbaf1e0f0a71430e0110a991d84') + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i ../boost-1.85.patch # Fix build with boost 1.85 + patch -p1 -i ../boost-1.86.patch # Fix build with boost 1.86 +} build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/boost-1.85.patch b/boost-1.85.patch new file mode 100644 index 0000000..09914ba --- /dev/null +++ b/boost-1.85.patch @@ -0,0 +1,71 @@ +From cf8a986abca996a8e5b251b270541cacbc7b405c Mon Sep 17 00:00:00 2001 +From: Geoff <geoffthemedio@users.noreply.github.com> +Date: Mon, 1 Apr 2024 21:31:21 +0200 +Subject: [PATCH] updates for Boost 1.85 (#4908) + +--- + GG/src/dialogs/FileDlg.cpp | 2 +- + util/Directories.cpp | 6 +++--- + util/OptionsDB.cpp | 3 +-- + 3 files changed, 5 insertions(+), 6 deletions(-) + +diff --git a/GG/src/dialogs/FileDlg.cpp b/GG/src/dialogs/FileDlg.cpp +index 3b6701e892b..01a385e4d06 100644 +--- a/GG/src/dialogs/FileDlg.cpp ++++ b/GG/src/dialogs/FileDlg.cpp +@@ -9,7 +9,7 @@ + + #include <boost/cast.hpp> + #include <boost/algorithm/string/predicate.hpp> +-#include <boost/filesystem/operations.hpp> ++#include <boost/filesystem.hpp> + #include <boost/format.hpp> + // boost::spirit::classic pulls in windows.h which in turn defines macro + // versions of min and max. Defining NOMINMAX disables the creation of those +diff --git a/util/Directories.cpp b/util/Directories.cpp +index 6e1c9b1e844..1216a351b22 100644 +--- a/util/Directories.cpp ++++ b/util/Directories.cpp +@@ -4,9 +4,8 @@ + #include "i18n.h" + + #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> + + #include <cstdlib> + #include <mutex> +@@ -265,7 +265,7 @@ void InitBinDir(std::string const& argv0) + #if defined(FREEORION_WIN32) + try { + 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 &) { + bin_dir = fs::initial_path(); + } +@@ -314,7 +314,7 @@ void InitBinDir(std::string const& argv0) + std::string path_text(buf); + + fs::path binary_file = fs::system_complete(fs::path(path_text)); +- bin_dir = binary_file.branch_path(); ++ bin_dir = binary_file.parent_path(); + + // check that a "freeoriond" file (hopefully the freeorion server binary) exists in the found directory + fs::path p(bin_dir); +diff --git a/util/OptionsDB.cpp b/util/OptionsDB.cpp +index 8ce452de599..759c4d72372 100644 +--- a/util/OptionsDB.cpp ++++ b/util/OptionsDB.cpp +@@ -22,8 +22,7 @@ namespace std { + #include <boost/algorithm/string/classification.hpp> + #include <boost/algorithm/string/erase.hpp> + #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> + #include <boost/tokenizer.hpp> + diff --git a/boost-1.86.patch b/boost-1.86.patch new file mode 100644 index 0000000..f4a5c4a --- /dev/null +++ b/boost-1.86.patch @@ -0,0 +1,33 @@ +--- a/GG/src/dialogs/FileDlg.cpp ++++ b/GG/src/dialogs/FileDlg.cpp +@@ -215,7 +215,7 @@ void FileDlg::CompleteConstruction() + + if (!m_init_filename.empty()) { + 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()); + } + } + +@@ -548,7 +548,7 @@ void FileDlg::UpdateList() + if (!m_in_win32_drive_selection) { + // parent directory selector + 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()) + { + auto row = Wnd::Create<ListBox::Row>(); +@@ -694,10 +694,10 @@ void FileDlg::OpenDirectory() + } else if (directory == "..") { + // move to parent directory of current directory + 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()); + + } else { + // switch to drive selection mode |