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

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/0fe753d502ba552202f43e3301d9e95694245c13">https://github.com/macports/macports-ports/commit/0fe753d502ba552202f43e3301d9e95694245c13</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 0fe753d  meson: bump to 0.52.1
</span>0fe753d is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 0fe753d502ba552202f43e3301d9e95694245c13
</span>Author: kencu <ken.cunningham.webuse@gmail.com>
AuthorDate: Sat Dec 28 11:30:16 2019 -0800

<span style='display:block; white-space:pre;color:#404040;'>    meson: bump to 0.52.1
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    apply upstream patch to fix 64bit macs w 32bit kernels
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    this patch is presently a WIP upstream, but appears to fix meson for
</span><span style='display:block; white-space:pre;color:#404040;'>    32bit macs, at least in the general use case of targeting the
</span><span style='display:block; white-space:pre;color:#404040;'>    build machine
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    see https://github.com/mesonbuild/meson/issues/6187
</span>---
 devel/meson/Portfile                           | 13 +++++--
 devel/meson/files/patch-meson-32bit-apple.diff | 53 ++++++++++++++++++++++++++
 2 files changed, 62 insertions(+), 4 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/meson/Portfile b/devel/meson/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4487053..c3bd2b2 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/meson/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/meson/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,7 +4,9 @@ PortSystem          1.0
</span> PortGroup           python 1.0
 PortGroup           github 1.0
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-github.setup        mesonbuild meson 0.52.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        mesonbuild meson 0.52.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> github.tarball_from releases
 license             Apache-2
 categories          devel python
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -21,9 +23,9 @@ long_description    Meson is a build system designed to optimize programmer prod
</span>                     Valgrind, CCache and the like. It is both extremely fast, and, even more importantly, \
                     as user friendly as possible.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  56bb1bb93794c5715dfdfac41a88363351514f14 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  d60f75f0dedcc4fd249dbc7519d6f3ce6df490033d276ef1cf27453ef4938d32 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    1507110
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  23a70a0fdcfc66d060ac8f8b413fa160aae8287b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  0c277472e49950a5537e3de3e60c57b80dbf425788470a1a8ed27446128fc035 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1507726
</span> 
 # as of verison 0.45.0,requires python 3.5 or better
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -45,6 +47,9 @@ if {${os.platform} eq "darwin" && ${os.major} <= 9} {
</span> 
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/mesonbuild/meson/issues/6187
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-meson-32bit-apple.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-destroot {
     set python_prefix ${frameworks_dir}/Python.framework/Versions/${python.branch}
     ln -s  ${python_prefix}/bin/meson ${destroot}${prefix}/bin/meson
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/meson/files/patch-meson-32bit-apple.diff b/devel/meson/files/patch-meson-32bit-apple.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..aab443a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/meson/files/patch-meson-32bit-apple.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,53 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/mesonbuild/meson/issues/6187
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From c8bfa6b7485316505e294c42eccb691630c85d3d Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: "Michael Hirsch, Ph.D" <scivision@users.noreply.github.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sun, 17 Nov 2019 11:33:58 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] macos: detect old OS/cpu 64-bit CPU in 32-bit MacOS kernel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+intended to fix #6187 pending user verification
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mesonbuild/environment.py | 23 ++++++++++++++++++++++-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 22 insertions(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git mesonbuild/environment.py mesonbuild/environment.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f53f17fffe..247ab1f6ef 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- mesonbuild/environment.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ mesonbuild/environment.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -293,6 +293,23 @@ def detect_windows_arch(compilers: CompilersDict) -> str:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return 'x86'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return os_arch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def detect_osx_arch() -> str:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    """
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    per #6187, handle early Mac 64-bit Intel CPU with 64-bit OSX using a **32-bit kernel**
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    testing this requires old MacOS and hardware, not easily available for cloud CI,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    so users needing this functionality may kindly need to help with debugging info.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    """
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    try:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        ret = subprocess.run(['sysctl', '-n', 'hw.cpu64bit_capable'],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                             universal_newlines=True, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL).stdout
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        trial = 'x86_64' if ret.strip() == '1' else 'x86'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    except Exception:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # very old MacOS version with implicit 32-bit CPU due to calling if-elif stack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        trial = 'x86'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return trial
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ def any_compiler_has_define(compilers: CompilersDict, define):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     for c in compilers.values():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         try:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -317,7 +334,11 @@ def detect_cpu_family(compilers: CompilersDict) -> str:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         trial = platform.machine().lower()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if trial.startswith('i') and trial.endswith('86'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        trial = 'x86'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if mesonlib.is_osx():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            # handle corner case with early Mac 64-bit CPU and older OSX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            trial = detect_osx_arch()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            trial = 'x86'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     elif trial == 'bepc':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         trial = 'x86'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     elif trial.startswith('arm') or trial.startswith('earm'):
</span></pre><pre style='margin:0'>

</pre>