aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/patches/aegisub-boost81.patch
diff options
context:
space:
mode:
author宋文武 <iyzsong@member.fsf.org>2024-06-19 08:30:24 +0800
committerLudovic Courtès <ludo@gnu.org>2024-08-31 10:45:12 +0200
commit3266dbd3f05629c194280d6df800c49fa9d9862f (patch)
treeffde47a59bd0fb70d281327e0c9942b6fa89cf45 /gnu/packages/patches/aegisub-boost81.patch
parent22429545e7c8d472607594586fadbcfadcf75270 (diff)
downloadguix-3266dbd3f05629c194280d6df800c49fa9d9862f.tar.gz
guix-3266dbd3f05629c194280d6df800c49fa9d9862f.zip
gnu: aegisub: Fix build.
* gnu/packages/patches/aegisub-boost81.patch: New patch. * gnu/packages/video.scm (aegisub)[source]: Add it. * gnu/local.mk (dist_patch_DATA): Register patch. Change-Id: I0249944bf1bd9fc5a303c44c92b0b4c3e01da14b
Diffstat (limited to 'gnu/packages/patches/aegisub-boost81.patch')
-rw-r--r--gnu/packages/patches/aegisub-boost81.patch62
1 files changed, 62 insertions, 0 deletions
diff --git a/gnu/packages/patches/aegisub-boost81.patch b/gnu/packages/patches/aegisub-boost81.patch
new file mode 100644
index 0000000000..4b63fba9b7
--- /dev/null
+++ b/gnu/packages/patches/aegisub-boost81.patch
@@ -0,0 +1,62 @@
+Source: https://gitlab.archlinux.org/archlinux/packaging/packages/aegisub/-/blob/main/boost-1.81.0.patch
+From 12e1e5ee64afb7cfb5a43a998774642bc1eeede6 Mon Sep 17 00:00:00 2001
+From: Evangelos Foutras <foutrelis@archlinux.org>
+Date: Sat, 21 Jan 2023 18:00:10 +0000
+Subject: [PATCH] Fix build with boost 1.81.0
+---
+diff --git a/libaegisub/include/libaegisub/lua/utils.h b/libaegisub/include/libaegisub/lua/utils.h
+index c5a65d6e4..f4921d582 100644
+--- a/libaegisub/include/libaegisub/lua/utils.h
++++ b/libaegisub/include/libaegisub/lua/utils.h
+@@ -87,7 +87,10 @@ int exception_wrapper(lua_State *L) {
+
+ template<typename T>
+ void set_field(lua_State *L, const char *name, T value) {
+- push_value(L, value);
++ if constexpr(std::is_convertible<T, std::string>::value)
++ push_value(L, static_cast<std::string>(value));
++ else
++ push_value(L, value);
+ lua_setfield(L, -2, name);
+ }
+
+diff --git a/src/auto4_lua.cpp b/src/auto4_lua.cpp
+index 245689679..6d479b2c3 100644
+--- a/src/auto4_lua.cpp
++++ b/src/auto4_lua.cpp
+@@ -115,7 +115,8 @@ namespace {
+ int get_translation(lua_State *L)
+ {
+ wxString str(check_wxstring(L, 1));
+- push_value(L, _(str).utf8_str());
++ const char* val = static_cast<const char*>( _(str).utf8_str());
++ push_value(L, val);
+ return 1;
+ }
+
+diff --git a/src/command/video.cpp b/src/command/video.cpp
+index fb2bcb0ba..77e3e9ca7 100644
+--- a/src/command/video.cpp
++++ b/src/command/video.cpp
+@@ -475,7 +475,7 @@ static void save_snapshot(agi::Context *c, bool raw) {
+ // If where ever that is isn't defined, we can't save there
+ if ((basepath == "\\") || (basepath == "/")) {
+ // So save to the current user's home dir instead
+- basepath = wxGetHomeDir().c_str();
++ basepath = static_cast<const char*>(wxGetHomeDir().c_str());
+ }
+ }
+ // Actual fixed (possibly relative) path, decode it
+diff --git a/src/dialog_attachments.cpp b/src/dialog_attachments.cpp
+index 38ff53027..e30339f81 100644
+--- a/src/dialog_attachments.cpp
++++ b/src/dialog_attachments.cpp
+@@ -161,7 +161,7 @@ void DialogAttachments::OnExtract(wxCommandEvent &) {
+
+ // Multiple or single?
+ if (listView->GetNextSelected(i) != -1)
+- path = wxDirSelector(_("Select the path to save the files to:"), to_wx(OPT_GET("Path/Fonts Collector Destination")->GetString())).c_str();
++ path = static_cast<const char*>(wxDirSelector(_("Select the path to save the files to:"), to_wx(OPT_GET("Path/Fonts Collector Destination")->GetString())).c_str());
+ else {
+ path = SaveFileSelector(
+ _("Select the path to save the file to:"),