summaryrefslogtreecommitdiff
path: root/emulators/dosbox-x/patches
diff options
context:
space:
mode:
authornia <nia@pkgsrc.org>2022-03-07 16:37:51 +0000
committernia <nia@pkgsrc.org>2022-03-07 16:37:51 +0000
commit5f9e2d1ec367529f0a818879bdd78da275645975 (patch)
treec1f25ff639f935c69977322b768131181bfc5e99 /emulators/dosbox-x/patches
parentff90fd10df4eb67b9e42d7f33eb328540c4aec12 (diff)
downloadpkgsrc-5f9e2d1ec367529f0a818879bdd78da275645975.tar.gz
dosbox-x: do not lose constness of iconv arg on netbsd prior to current
Diffstat (limited to 'emulators/dosbox-x/patches')
-rw-r--r--emulators/dosbox-x/patches/patch-include_iconvpp.hpp34
-rw-r--r--emulators/dosbox-x/patches/patch-src_dos_dos__programs.cpp2
2 files changed, 35 insertions, 1 deletions
diff --git a/emulators/dosbox-x/patches/patch-include_iconvpp.hpp b/emulators/dosbox-x/patches/patch-include_iconvpp.hpp
new file mode 100644
index 00000000000..0c18e5e9cdf
--- /dev/null
+++ b/emulators/dosbox-x/patches/patch-include_iconvpp.hpp
@@ -0,0 +1,34 @@
+$NetBSD: patch-include_iconvpp.hpp,v 1.1 2022/03/07 16:37:52 nia Exp $
+
+Support NetBSD 9.x and earlier.
+
+--- include/iconvpp.hpp.orig 2022-03-07 16:24:10.486063951 +0000
++++ include/iconvpp.hpp
+@@ -31,6 +31,15 @@
+ # define ICONV_BIG_ENDIAN BIG_ENDIAN
+ #endif
+
++#if defined(__NetBSD__)
++#include <sys/param.h>
++#if __NetBSD_Prereq__(9,99,17)
++#define NETBSD_POSIX_ICONV 1
++#else
++#define NETBSD_POSIX_ICONV 0
++#endif
++#endif
++
+ #include <errno.h>
+ #include <stdio.h>
+ #include <string.h>
+@@ -247,7 +256,11 @@ public:
+ iconv(context,NULL,NULL,NULL,NULL);
+
+ /* Ref: [http://man7.org/linux/man-pages/man3/iconv.3.html] */
++#if defined(__sun) || (defined(__NetBSD__) && !defined(NETBSD_POSIX_ICONV))
++ int ret = iconv(context,(&(pclass::src_ptr)),&src_left,(char**)(&(pclass::dst_ptr)),&dst_left);
++#else
+ int ret = iconv(context,(char**)(&(pclass::src_ptr)),&src_left,(char**)(&(pclass::dst_ptr)),&dst_left);
++#endif
+
+ pclass::src_adv = (size_t)(pclass::src_ptr - i_src);
+ pclass::dst_adv = (size_t)(pclass::dst_ptr - i_dst);
diff --git a/emulators/dosbox-x/patches/patch-src_dos_dos__programs.cpp b/emulators/dosbox-x/patches/patch-src_dos_dos__programs.cpp
index 86b947a1c7f..fefc6eec488 100644
--- a/emulators/dosbox-x/patches/patch-src_dos_dos__programs.cpp
+++ b/emulators/dosbox-x/patches/patch-src_dos_dos__programs.cpp
@@ -1,4 +1,4 @@
-$NetBSD: patch-src_dos_dos__programs.cpp,v 1.3 2022/03/04 07:41:14 nia Exp $
+$NetBSD: patch-src_dos_dos__programs.cpp,v 1.4 2022/03/07 16:37:52 nia Exp $
dos_programs.cpp: In member function 'bool AUTOTYPE::ReadDoubleArg(const string&, const char*, const double&, const double&, const double&, double&)':
dos_programs.cpp:5556:12: error: expected unqualified-id before '(' token