<pre style='margin:0'>
David B. Evans (dbevans) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/df778af4f3507461b691c787ad00235adf5843b7">https://github.com/macports/macports-ports/commit/df778af4f3507461b691c787ad00235adf5843b7</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 df778af gobject-introspection: update to 1.60.2
</span>df778af is described below
<span style='display:block; white-space:pre;color:#808000;'>commit df778af4f3507461b691c787ad00235adf5843b7
</span>Author: Michael Dickens <michaelld@macports.org>
AuthorDate: Mon Mar 9 16:55:11 2020 -0400
<span style='display:block; white-space:pre;color:#404040;'> gobject-introspection: update to 1.60.2
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Add patch to minimally address @rpath introspection issue from https://trac.macports.org/ticket/60149 . It's a bit of a hack, but it will generally work for MacPorts needs.
</span>---
gnome/gobject-introspection/Portfile | 13 ++---
.../files/no-env-shebang.patch | 4 +-
.../files/patch-fix-rpath-gir-typelib.diff | 61 ++++++++++++++++++++++
.../files/patch-girscanner-tiger-no-rpath.diff | 4 +-
4 files changed, 72 insertions(+), 10 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gobject-introspection/Portfile b/gnome/gobject-introspection/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 32421f7..31f704d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/gnome/gobject-introspection/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gobject-introspection/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,8 +4,8 @@ PortSystem 1.0
</span> PortGroup active_variants 1.1
name gobject-introspection
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 1.58.3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 1.60.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span> set branch [join [lrange [split ${version} .] 0 1] .]
categories gnome
platforms darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -20,9 +20,9 @@ homepage https://wiki.gnome.org/Projects/GObjectIntrospection
</span> master_sites gnome:sources/${name}/${branch}/
use_xz yes
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 0c443e36b5860278de2bb77fa99997aabbda3513 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 025b632bbd944dcf11fc50d19a0ca086b83baf92b3e34936d008180d28cdc3c8 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 1378068
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 6455f1b5e4427b8f0a26efb94597a476ed9ca96e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 ffdfe2368fb2e34a547898b01aac0520d52d8627fdeb1c306559bcb503ab5e9c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 1285000
</span>
depends_build port:pkgconfig \
port:autoconf-archive
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -35,7 +35,8 @@ depends_lib path:lib/pkgconfig/cairo.pc:cairo \
</span>
depends_run bin:glibtool:libtool
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles no-env-shebang.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles no-env-shebang.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-fix-rpath-gir-typelib.diff
</span>
post-patch {
reinplace "s|libcairo-gobject.2.dylib|${prefix}/lib/libcairo-gobject.2.dylib|g" ${worksrcpath}/configure.ac
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gobject-introspection/files/no-env-shebang.patch b/gnome/gobject-introspection/files/no-env-shebang.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 2848cdf..79ad321 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/gnome/gobject-introspection/files/no-env-shebang.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gobject-introspection/files/no-env-shebang.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,8 +4,8 @@
</span> tools/g-ir-tool-template.in \
tools/meson.build
<span style='display:block; white-space:pre;background:#ffe0e0;'>--TOOL_SUBSTITUTIONS = -e s,@libdir\@,$(libdir), -e s,@datarootdir\@,$(datarootdir), -e s,@PYTHON_CMD\@,\/usr\/bin\/env\ $(PYTHON),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+TOOL_SUBSTITUTIONS = -e s,@libdir\@,$(libdir), -e s,@datarootdir\@,$(datarootdir), -e s,@PYTHON_CMD\@,$(PYTHON),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-TOOL_SUBSTITUTIONS = -e s,@libdir\@,$(libdir), -e s,@datarootdir\@,$(datarootdir), -e s,@PYTHON_CMD\@,\/usr\/bin\/env\ $(PYTHON), -e s,@GIR_DIR\@,$(GIR_DIR),g
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++TOOL_SUBSTITUTIONS = -e s,@libdir\@,$(libdir), -e s,@datarootdir\@,$(datarootdir), -e s,@PYTHON_CMD\@,$(PYTHON), -e s,@GIR_DIR\@,$(GIR_DIR),g
</span>
g-ir-scanner: tools/g-ir-tool-template.in _giscanner.la Makefile
$(AM_V_GEN) sed $(TOOL_SUBSTITUTIONS) -e s,@TOOL_MODULE\@,scannermain, -e s,@TOOL_FUNCTION\@,scanner_main, $< > $@.tmp && mv $@.tmp $@
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gobject-introspection/files/patch-fix-rpath-gir-typelib.diff b/gnome/gobject-introspection/files/patch-fix-rpath-gir-typelib.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..a93ec74
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gobject-introspection/files/patch-fix-rpath-gir-typelib.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,61 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- giscanner/shlibs.py.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ giscanner/shlibs.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19,7 +19,6 @@
</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;'>+ import os
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-import sys
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ import platform
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ import re
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ import subprocess
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -104,24 +103,40 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ output = subprocess.check_output(args)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if isinstance(output, bytes):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ output = output.decode("utf-8", "replace")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ shlibs = resolve_from_ldd_output(libraries, output)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return list(map(sanitize_shlib_path, shlibs))
</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 sanitize_shlib_path(lib):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ libdir = ''
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # for Darwin purposes, assume libraries get installed into
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # the first non-build library path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if platform.system() == 'Darwin':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ for lpath in options.library_paths:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if not lpath.startswith (os.getcwd()):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ libdir = lpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if libdir == '':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # no way to resolve @rpath and the like, since we can't
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # make a reasonable assumpion of the install libdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ print("warning: unknown install library directory! GObject Introspection GIR and TYPELIB files might not work!")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ libdir = libdir + '/'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ outlibs = []
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ for lib in shlibs:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ outlibs.append(sanitize_shlib_path(lib,libdir))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return list (outlibs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def sanitize_shlib_path(lib,libdir):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Use absolute paths on OS X to conform to how libraries are usually
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # referenced on OS X systems, and file names everywhere else.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # In case we get relative paths on macOS (like @rpath) then we fall
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # back to the basename as well:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://gitlab.gnome.org/GNOME/gobject-introspection/issues/222
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if sys.platform == "darwin":
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if platform.system() == 'Darwin':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if not os.path.isabs(lib):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return os.path.basename(lib)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ lib = os.path.basename(lib)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # prepend the libdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ lib = libdir + lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return os.path.basename(lib)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ lib = os.path.basename(lib)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ def resolve_from_ldd_output(libraries, output):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patterns = {}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gobject-introspection/files/patch-girscanner-tiger-no-rpath.diff b/gnome/gobject-introspection/files/patch-girscanner-tiger-no-rpath.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 61480f1..4d906ac 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/gnome/gobject-introspection/files/patch-girscanner-tiger-no-rpath.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gobject-introspection/files/patch-girscanner-tiger-no-rpath.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -2,7 +2,7 @@ diff --git giscanner/ccompiler.py giscanner/ccompiler.py
</span> index c003828..87f98d2 100644
--- giscanner/ccompiler.py
+++ giscanner/ccompiler.py
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -126,7 +126,7 @@ class CCompiler(object):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -191,7 +191,7 @@ class CCompiler(object):
</span>
if not libtool:
# https://bugzilla.gnome.org/show_bug.cgi?id=625195
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -11,7 +11,7 @@ index c003828..87f98d2 100644
</span>
# Ensure libraries are always linked as we are going to use ldd to work
# out their names later
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -152,12 +152,12 @@ class CCompiler(object):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -206,12 +206,12 @@ class CCompiler(object):
</span> args.append('-libpath:' + library_path)
else:
args.append('-L' + library_path)
</pre><pre style='margin:0'>
</pre>