<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/384e7502afd4cd07760715f2b16a810849d5ad66">https://github.com/macports/macports-ports/commit/384e7502afd4cd07760715f2b16a810849d5ad66</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 384e7502afd4cd07760715f2b16a810849d5ad66
</span>Author: Ken Cunningham <kencu@macports.org>
AuthorDate: Sun Oct 18 14:57:25 2020 -0700

<span style='display:block; white-space:pre;color:#404040;'>    meson: add workaround for Tiger
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    and peg meson at 55.3 on Tiger  as updates are likely fragile
</span><span style='display:block; white-space:pre;color:#404040;'>    will update meson occasionally, as we do for libuv on Tiger
</span>---
 devel/meson/Portfile                               | 14 ++++
 .../files/patch-meson55-tiger-no-rpath-fix.diff    | 91 ++++++++++++++++++++++
 2 files changed, 105 insertions(+)

<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 f8702a69b9b..1710f0c7e05 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;'>@@ -55,6 +55,20 @@ if {${os.platform} eq "darwin" && ${os.major} <= 10} {
</span> # https://github.com/mesonbuild/meson/issues/6187
 patchfiles-append   patch-meson-32bit-apple.diff
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin 8 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # this meson is modified for systems without @rpath support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # and is therefore fragile. Keep pegged, and update occasionally
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    github.setup        mesonbuild meson 0.55.3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    checksums           rmd160  b1e7f12184a7a61ae8bfa7ed210af8020d531009 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        sha256  6bed2a25a128bbabe97cf40f63165ebe800e4fcb46db8ab7ef5c2b5789f092a5 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        size    1740465
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles-append patch-meson55-tiger-no-rpath-fix.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # add a search path for crossfiles in our prefix
 patchfiles-append   patch-meson-search-prefix-for-cross-files.diff
 post-patch {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/meson/files/patch-meson55-tiger-no-rpath-fix.diff b/devel/meson/files/patch-meson55-tiger-no-rpath-fix.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..3de6a467655
</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-meson55-tiger-no-rpath-fix.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,91 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git mesonbuild/build.py mesonbuild/build.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a06979c..8b8d6ca 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- mesonbuild/build.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ mesonbuild/build.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -103,7 +103,7 @@ known_jar_kwargs = known_exe_kwargs | {'main_class'}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @lru_cache(maxsize=None)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ def get_target_macos_dylib_install_name(ld) -> str:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    name = ['@rpath/', ld.prefix, ld.name]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    name = ['@loader_path/', ld.prefix, ld.name]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if ld.soversion is not None:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         name.append('.' + ld.soversion)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     name.append('.dylib')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git mesonbuild/linkers.py mesonbuild/linkers.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fe1441e..841fafa 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- mesonbuild/linkers.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ mesonbuild/linkers.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -678,7 +678,7 @@ class AppleDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         is_shared_module: bool) -> T.List[str]:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if is_shared_module:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return []
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        install_name = ['@rpath/', prefix, shlib_name]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        install_name = ['@loader_path/', prefix, shlib_name]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if soversion is not None:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             install_name.append('.' + soversion)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         install_name.append('.dylib')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -701,8 +701,8 @@ class AppleDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         all_paths = mesonlib.OrderedSet([os.path.join(origin_placeholder, p) for p in processed_rpaths])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if build_rpath != '':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             all_paths.add(build_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        for rp in all_paths:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            args.extend(self._apply_prefix('-rpath,' + rp))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        #KEN for rp in all_paths:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        #KEN    args.extend(self._apply_prefix('-rpath,' + rp))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return (args, set())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git mesonbuild/modules/gnome.py mesonbuild/modules/gnome.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1faa128..4ef1b07 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- mesonbuild/modules/gnome.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ mesonbuild/modules/gnome.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -277,8 +277,8 @@ class GnomeModule(ExtensionModule):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if isinstance(lib, build.SharedLibrary):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             libdir = os.path.join(state.environment.get_build_dir(), state.backend.get_target_dir(lib))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             link_command.append('-L' + libdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            if include_rpath:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                link_command.append('-Wl,-rpath,' + libdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            #KEN if include_rpath:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            #KEN    link_command.append('-Wl,-rpath,' + libdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             depends.append(lib)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # Needed for the following binutils bug:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # https://github.com/mesonbuild/meson/issues/1911
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -287,8 +287,8 @@ class GnomeModule(ExtensionModule):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             for d in state.backend.determine_rpath_dirs(lib):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 d = os.path.join(state.environment.get_build_dir(), d)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 link_command.append('-L' + d)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                if include_rpath:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    link_command.append('-Wl,-rpath,' + d)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                #KEN if include_rpath:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                #KEN    link_command.append('-Wl,-rpath,' + d)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if use_gir_args and self._gir_has_option('--extra-library'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             link_command.append('--extra-library=' + lib.name)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -345,8 +345,8 @@ class GnomeModule(ExtensionModule):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                             getattr(dep, 'is_libtool', False)):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         lib_dir = os.path.dirname(lib)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         external_ldflags.update(["-L%s" % lib_dir])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                        if include_rpath:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                            external_ldflags.update(['-Wl,-rpath {}'.format(lib_dir)])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        #KEN if include_rpath:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        #KEN    external_ldflags.update(['-Wl,-rpath {}'.format(lib_dir)])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         libname = os.path.basename(lib)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         if libname.startswith("lib"):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                             libname = libname[3:]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git mesonbuild/scripts/depfixer.py mesonbuild/scripts/depfixer.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f927693..c1e4541 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- mesonbuild/scripts/depfixer.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ mesonbuild/scripts/depfixer.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -424,9 +424,9 @@ def fix_darwin(fname, new_rpath, final_path, install_name_mappings):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   stdout=subprocess.DEVNULL,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   stderr=subprocess.DEVNULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         args = []
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        if new_rpath:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            args += ['-add_rpath', new_rpath]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        # Rewrite -install_name @rpath/libfoo.dylib to /path/to/libfoo.dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        #KEN if new_rpath:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        #KEN    args += ['-add_rpath', new_rpath]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # Rewrite -install_name @loader_path/libfoo.dylib to /path/to/libfoo.dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if fname.endswith('dylib'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             args += ['-id', final_path]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if install_name_mappings:
</span></pre><pre style='margin:0'>

</pre>