<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/82d45b48d7d394d69664aefd72fddf20d5e68297">https://github.com/macports/macports-ports/commit/82d45b48d7d394d69664aefd72fddf20d5e68297</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 82d45b48d7d qemu: build fixes for pre-10.12.4
</span>82d45b48d7d is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 82d45b48d7d394d69664aefd72fddf20d5e68297
</span>Author: Evan Miller <emmiller@gmail.com>
AuthorDate: Tue Nov 30 18:30:50 2021 -0500

<span style='display:block; white-space:pre;color:#404040;'>    qemu: build fixes for pre-10.12.4
</span>---
 emulators/qemu/Portfile                            | 30 +++++++++++++++++++---
 .../qemu/files/patch-qemu-include-qemu-osdep.diff  | 14 ++++++++++
 emulators/qemu/files/patch-qemu-net-colo.diff      | 23 +++++++++++++++++
 emulators/qemu/files/patch-qemu-punchhole.diff     | 13 ++++++++++
 .../files/patch-qemu-scripts-entitlements.diff     | 11 ++++++++
 emulators/qemu/files/patch-qemu-tcg-region.diff    | 11 ++++++++
 6 files changed, 98 insertions(+), 4 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/emulators/qemu/Portfile b/emulators/qemu/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 72f4a7a8a9a..a8d9f4b309a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/emulators/qemu/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/emulators/qemu/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -2,9 +2,10 @@
</span> 
 PortSystem 1.0
 PortGroup compiler_blacklist_versions 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup legacysupport 1.1
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://trac.macports.org/ticket/58700
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup legacysupport 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# fdopendir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+legacysupport.newest_darwin_requires_legacy 13
</span> 
 name                    qemu
 version                 6.1.0
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -46,11 +47,26 @@ depends_lib             path:lib/pkgconfig/glib-2.0.pc:glib2 \
</span>                         path:lib/pkgconfig/pixman-1.pc:libpixman
 
 # This patch sets the python interpreter from meson's shebang line
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles              patch-qemu-configure.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append       patch-qemu-configure.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# "error: unknown type name 'fpunchhole_t'" pre-10.12.4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append       patch-qemu-punchhole.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# "cp: illegal option -- a"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append       patch-qemu-scripts-entitlements.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# IPPROTO workarounds
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append       patch-qemu-net-colo.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# MADV_DONTNEED workaround
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append       patch-qemu-include-qemu-osdep.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# MAP_JIT workaround
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append       patch-qemu-tcg-region.diff
</span> 
 # "ERROR: You need at least GCC v7.5 or Clang v6.0 (or XCode Clang v10.0)"
 compiler.blacklist      {clang < 1000} {macports-clang-[3-5].*} {macports-gcc-[56]} {*gcc-[34].*}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11 && [string match *clang* ${configure.compiler}]} {
</span>     # Emulated TLS needed, which was added in LLVM 3.8
     configure.cflags-append     -femulated-tls
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -81,6 +97,7 @@ configure.args-append   --disable-cocoa \
</span>                         --disable-gtk \
                         --disable-opengl \
                         --enable-bzip2 \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                        --enable-hvf \
</span>                         --disable-curl \
                         --disable-attr \
                         --disable-vde \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -108,6 +125,11 @@ configure.args-append   --disable-cocoa \
</span>                         --disable-lzfse \
                         --disable-zstd
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# Hypervisor.framework introduced in 10.10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 14} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-replace --enable-hvf --disable-hvf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # libtool: unknown option character `-' in: --mode=compile
 configure.env-append   LIBTOOL=${prefix}/bin/glibtool
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/emulators/qemu/files/patch-qemu-include-qemu-osdep.diff b/emulators/qemu/files/patch-qemu-include-qemu-osdep.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..c81cb4f43bd
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/emulators/qemu/files/patch-qemu-include-qemu-osdep.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- include/qemu/osdep.h.orig      2021-11-28 17:26:47.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ include/qemu/osdep.h   2021-11-28 17:27:26.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -430,7 +430,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(CONFIG_MADVISE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define QEMU_MADV_WILLNEED  MADV_WILLNEED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef MADV_DONTNEED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define QEMU_MADV_DONTNEED  MADV_DONTNEED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define QEMU_MADV_DONTNEED  QEMU_MADV_INVALID
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef MADV_DONTFORK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define QEMU_MADV_DONTFORK  MADV_DONTFORK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/emulators/qemu/files/patch-qemu-net-colo.diff b/emulators/qemu/files/patch-qemu-net-colo.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..3a917e96054
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/emulators/qemu/files/patch-qemu-net-colo.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,23 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- net/colo.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ net/colo.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -102,16 +102,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case IPPROTO_TCP:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case IPPROTO_UDP:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case IPPROTO_DCCP:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef IPPROTO_ESP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case IPPROTO_ESP:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case IPPROTO_SCTP:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case IPPROTO_UDPLITE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         tmp_ports = *(uint32_t *)(pkt->transport_header);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         extract_ip_and_port(tmp_ports, key, pkt);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef IPPROTO_AH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case IPPROTO_AH:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         tmp_ports = *(uint32_t *)(pkt->transport_header + 4);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         extract_ip_and_port(tmp_ports, key, pkt);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     default:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/emulators/qemu/files/patch-qemu-punchhole.diff b/emulators/qemu/files/patch-qemu-punchhole.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..15c7891ca53
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/emulators/qemu/files/patch-qemu-punchhole.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- block/file-posix.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ block/file-posix.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1830,7 +1830,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         ret = do_fallocate(s->fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            aiocb->aio_offset, aiocb->aio_nbytes);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         ret = translate_err(-errno);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#elif defined(__APPLE__) && (__MACH__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif defined(__APPLE__) && (__MACH__) && \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      defined(__MAC_OS_X_VERSION_MAX_ALLOWED) && \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      __MAC_OS_X_VERSION_MAX_ALLOWED >= 101204
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         fpunchhole_t fpunchhole;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         fpunchhole.fp_flags = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         fpunchhole.reserved = 0;
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/emulators/qemu/files/patch-qemu-scripts-entitlements.diff b/emulators/qemu/files/patch-qemu-scripts-entitlements.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..38af47d7166
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/emulators/qemu/files/patch-qemu-scripts-entitlements.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- scripts/entitlement.sh.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ scripts/entitlement.sh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,7 +15,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if $in_place; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   trap 'rm "$DST.tmp"' exit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  cp -af "$SRC" "$DST.tmp"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  cp -pPRf "$SRC" "$DST.tmp"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SRC="$DST.tmp"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cd "$MESON_INSTALL_DESTDIR_PREFIX"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/emulators/qemu/files/patch-qemu-tcg-region.diff b/emulators/qemu/files/patch-qemu-tcg-region.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..406d9affae0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/emulators/qemu/files/patch-qemu-tcg-region.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- tcg/region.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ tcg/region.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -775,7 +775,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     prot = PROT_NONE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     flags = MAP_PRIVATE | MAP_ANONYMOUS;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef CONFIG_DARWIN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(CONFIG_DARWIN) && defined(MAP_JIT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* Applicable to both iOS and macOS (Apple Silicon). */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (!splitwx) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         flags |= MAP_JIT;
</span></pre><pre style='margin:0'>

</pre>