GNU bug report logs - #50465
Gobject-Introspection

Previous Next

Package: guix-patches;

Reported by: Raghav Gururajan <rg <at> raghavgururajan.name>

Date: Tue, 7 Sep 2021 21:34:01 UTC

Severity: normal

Done: Raghav Gururajan <rg <at> raghavgururajan.name>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 50465 in the body.
You can then email your comments to 50465 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#50465; Package guix-patches. (Tue, 07 Sep 2021 21:34:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Raghav Gururajan <rg <at> raghavgururajan.name>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Tue, 07 Sep 2021 21:34:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Raghav Gururajan <rg <at> raghavgururajan.name>
To: guix-patches <at> gnu.org
Subject: Gobject-Introspection
Date: Tue, 7 Sep 2021 17:32:58 -0400
[Message part 1 (text/plain, inline)]

[OpenPGP_0x5F5816647F8BE551.asc (application/pgp-keys, attachment)]
[OpenPGP_signature (application/pgp-signature, attachment)]

Information forwarded to guix-patches <at> gnu.org:
bug#50465; Package guix-patches. (Tue, 07 Sep 2021 21:36:01 GMT) Full text and rfc822 format available.

Message #8 received at 50465 <at> debbugs.gnu.org (full text, mbox):

From: Raghav Gururajan <rg <at> raghavgururajan.name>
To: 50465 <at> debbugs.gnu.org
Cc: Raghav Gururajan <rg <at> raghavgururajan.name>
Subject: [PATCH core-updates v1] gnu: gobject-introspection: Update to 1.68.0
 and adjust patches.
Date: Tue,  7 Sep 2021 17:35:17 -0400
* gnu/packages/glib.scm (gobject-introspection)[version]: Update to 1.68.0.
* gnu/packages/patches (gobject-introspection-absolute-shlib-path.patch,
gobject-introspection-cc.patch): Modify files.
---
 gnu/packages/glib.scm                         |  4 +-
 ...ct-introspection-absolute-shlib-path.patch | 57 ++++++++++++-------
 .../patches/gobject-introspection-cc.patch    | 23 ++++++--
 3 files changed, 57 insertions(+), 27 deletions(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index ae88dbe9e7..89eb354662 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -388,14 +388,14 @@ functions for strings and common data structures.")
 (define gobject-introspection
   (package
     (name "gobject-introspection")
-    (version "1.66.1")
+    (version "1.68.0")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnome/sources/"
                    "gobject-introspection/" (version-major+minor version)
                    "/gobject-introspection-" version ".tar.xz"))
              (sha256
-              (base32 "078n0q7b6z682mf4irclrksm73cyixq295mqnqifl9plwmgaai6x"))
+              (base32 "09sawnv3xj9pzgy2qrrk87dl3jibfphnswb61i5bh0d2h4j28afj"))
              (patches (search-patches
                        "gobject-introspection-cc.patch"
                        "gobject-introspection-girepository.patch"
diff --git a/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch b/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch
index 956fa617c3..6ca5d35e7c 100644
--- a/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch
+++ b/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch
@@ -1,11 +1,23 @@
-# Names of libraries included in typelib files are opened by dlopen.  Here we 
-# add the full path.
-#
-# This patch was provided by Luca Bruno <lucabru <at> src.gnome.org>  for 
-# 'gobject-introspection' 1.40.0 in Nix.
-#
-# It has since been updated to work with newer versions of
-# gobject-introspection.
+From 8471367e35e122fb6e661c243810df92c69440b4 Mon Sep 17 00:00:00 2001
+From: Raghav Gururajan <rg <at> raghavgururajan.name>
+Date: Tue, 7 Sep 2021 17:15:18 -0400
+Subject: [PATCH 2/2] Names of libraries included in typelib files are opened
+ by dlopen. Here we add the full path.
+
+This patch was provided by Luca Bruno <lucabru <at> src.gnome.org>,
+for 'gobject-introspection' 1.40.0 in Nix.
+
+It has since been updated to work with newer versions of
+gobject-introspection.
+---
+ giscanner/scannermain.py     | 37 ++++++++++++++++++++++++++++++++++++
+ giscanner/shlibs.py          | 30 ++++++++++++++++++++---------
+ giscanner/utils.py           | 15 +++++----------
+ tests/scanner/test_shlibs.py |  3 ++-
+ 4 files changed, 65 insertions(+), 20 deletions(-)
+
+diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
+index 957ba0b7..78f9b11b 100644
 --- a/giscanner/scannermain.py
 +++ b/giscanner/scannermain.py
 @@ -95,6 +95,39 @@ def get_windows_option_group(parser):
@@ -48,7 +60,7 @@
  def _get_option_parser():
      parser = optparse.OptionParser('%prog [options] sources',
                                     version='%prog ' + giscanner.__version__)
-@@ -205,6 +238,10 @@ match the namespace prefix.""")
+@@ -214,6 +247,10 @@ match the namespace prefix.""")
      parser.add_option("", "--filelist",
                        action="store", dest="filelist", default=[],
                        help="file containing headers and sources to be scanned")
@@ -59,6 +71,8 @@
  
      group = get_preprocessor_option_group(parser)
      parser.add_option_group(group)
+diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
+index 9f8ab5df..8aa37c99 100644
 --- a/giscanner/shlibs.py
 +++ b/giscanner/shlibs.py
 @@ -57,6 +57,14 @@ def _ldd_library_pattern(library_name):
@@ -76,7 +90,7 @@
  # This is a what we do for non-la files. We assume that we are on an
  # ELF-like system where ldd exists and the soname extracted with ldd is
  # a filename that can be opened with dlopen().
-@@ -106,7 +112,8 @@ def _resolve_non_libtool(options, binary, libraries):
+@@ -108,7 +116,8 @@ def _resolve_non_libtool(options, binary, libraries):
              output = output.decode("utf-8", "replace")
  
          shlibs = resolve_from_ldd_output(libraries, output)
@@ -86,7 +100,7 @@
  
  
  def sanitize_shlib_path(lib):
-@@ -115,19 +122,18 @@ def sanitize_shlib_path(lib):
+@@ -117,19 +126,18 @@ def sanitize_shlib_path(lib):
      # In case we get relative paths on macOS (like @rpath) then we fall
      # back to the basename as well:
      # https://gitlab.gnome.org/GNOME/gobject-introspection/issues/222
@@ -111,7 +125,7 @@
      if len(patterns) == 0:
          return []
  
-@@ -139,8 +145,12 @@ def resolve_from_ldd_output(libraries, output):
+@@ -141,8 +149,12 @@ def resolve_from_ldd_output(libraries, output):
          if line.endswith(':'):
              continue
          for word in line.split():
@@ -126,10 +140,11 @@
                  if m:
                      del patterns[library]
                      shlibs.append(m.group())
-
+diff --git a/giscanner/utils.py b/giscanner/utils.py
+index 45807f17..8a319cd1 100644
 --- a/giscanner/utils.py
 +++ b/giscanner/utils.py
-@@ -111,17 +111,11 @@ def extract_libtool_shlib(la_file):
+@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file):
      if dlname is None:
          return None
  
@@ -141,8 +156,7 @@
 -        if libdir is None:
 -            return dlbasename
 -        return libdir + '/' + dlbasename
--    # From the comments in extract_libtool(), older libtools had
--    # a path rather than the raw dlname
+-    # Older libtools had a path rather than the raw dlname
 -    return os.path.basename(dlname)
 +    dlbasename = os.path.basename(dlname)
 +    libdir = _extract_libdir_field(la_file)
@@ -151,10 +165,12 @@
 +    return libdir + '/' + dlbasename
  
  
- def extract_libtool(la_file):
+ # Returns arguments for invoking libtool, if applicable, otherwise None
+diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py
+index a8337c60..7f123103 100644
 --- a/tests/scanner/test_shlibs.py
 +++ b/tests/scanner/test_shlibs.py
-@@ -40,6 +64,7 @@ class TestLddParser(unittest.TestCase):
+@@ -40,7 +40,8 @@ class TestLddParser(unittest.TestCase):
  
          self.assertEqual(
              sanitize_shlib_path('/foo/bar'),
@@ -163,4 +179,7 @@
 +            '/foo/bar')
  
      def test_unresolved_library(self):
-output = ''
+         output = ''
+-- 
+2.33.0
+
diff --git a/gnu/packages/patches/gobject-introspection-cc.patch b/gnu/packages/patches/gobject-introspection-cc.patch
index 6a86b56b44..7e808eeea7 100644
--- a/gnu/packages/patches/gobject-introspection-cc.patch
+++ b/gnu/packages/patches/gobject-introspection-cc.patch
@@ -1,14 +1,25 @@
-Use gcc as the default C compiler if CC is not set.
+From e9b8fa0768a1f0ef7df2659eb559f48433ff82be Mon Sep 17 00:00:00 2001
+From: Raghav Gururajan <rg <at> raghavgururajan.name>
+Date: Tue, 7 Sep 2021 16:59:16 -0400
+Subject: [PATCH 1/2] Use gcc as the default C compiler if CC is not set.
 
-diff -ru gobject-introspection-1.58.1.orig/giscanner/__init__.py gobject-introspection-1.58.1/giscanner/__init__.py
---- gobject-introspection-1.58.1.orig/giscanner/__init__.py	1970-01-01 01:00:00.000000000 +0100
-+++ gobject-introspection-1.58.1/giscanner/__init__.py	2018-12-03 13:33:28.788971299 +0100
-@@ -22,6 +22,8 @@
+---
+ giscanner/__init__.py | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/giscanner/__init__.py b/giscanner/__init__.py
+index 7c2f365a..607fe341 100644
+--- a/giscanner/__init__.py
++++ b/giscanner/__init__.py
+@@ -21,6 +21,8 @@ import os
  builddir = os.environ.get('UNINSTALLED_INTROSPECTION_BUILDDIR')
  if builddir is not None:
-     __path__.append(os.path.join(builddir, 'giscanner'))
+     __path__.append(os.path.join(builddir, 'giscanner'))  # type: ignore  # mypy issue #1422
 +if not 'CC' in os.environ:
 +    os.environ['CC'] = 'gcc'
  try:
      from ._version import __version__
  except ImportError:
+-- 
+2.33.0
+
-- 
2.33.0





Information forwarded to guix-patches <at> gnu.org:
bug#50465; Package guix-patches. (Tue, 07 Sep 2021 23:24:02 GMT) Full text and rfc822 format available.

Message #11 received at 50465 <at> debbugs.gnu.org (full text, mbox):

From: Raghav Gururajan <rg <at> raghavgururajan.name>
To: 50465 <at> debbugs.gnu.org
Cc: Raghav Gururajan <rg <at> raghavgururajan.name>
Subject: [PATCH core-updates v2] gnu: gobject-introspection: Update to 1.68.0
 and adjust patches.
Date: Tue,  7 Sep 2021 19:23:23 -0400
* gnu/packages/glib.scm (gobject-introspection)[version]: Update to 1.68.0.
* gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch: Modify.
* gnu/packages/patches/gobject-introspection-cc.patch: Modify.
---
 gnu/packages/glib.scm                         |  4 +-
 ...ct-introspection-absolute-shlib-path.patch | 57 ++++++++++++-------
 .../patches/gobject-introspection-cc.patch    | 23 ++++++--
 3 files changed, 57 insertions(+), 27 deletions(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index ae88dbe9e7..89eb354662 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -388,14 +388,14 @@ functions for strings and common data structures.")
 (define gobject-introspection
   (package
     (name "gobject-introspection")
-    (version "1.66.1")
+    (version "1.68.0")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnome/sources/"
                    "gobject-introspection/" (version-major+minor version)
                    "/gobject-introspection-" version ".tar.xz"))
              (sha256
-              (base32 "078n0q7b6z682mf4irclrksm73cyixq295mqnqifl9plwmgaai6x"))
+              (base32 "09sawnv3xj9pzgy2qrrk87dl3jibfphnswb61i5bh0d2h4j28afj"))
              (patches (search-patches
                        "gobject-introspection-cc.patch"
                        "gobject-introspection-girepository.patch"
diff --git a/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch b/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch
index 956fa617c3..3c03dba218 100644
--- a/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch
+++ b/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch
@@ -1,11 +1,23 @@
-# Names of libraries included in typelib files are opened by dlopen.  Here we 
-# add the full path.
-#
-# This patch was provided by Luca Bruno <lucabru <at> src.gnome.org>  for 
-# 'gobject-introspection' 1.40.0 in Nix.
-#
-# It has since been updated to work with newer versions of
-# gobject-introspection.
+From 8471367e35e122fb6e661c243810df92c69440b4 Mon Sep 17 00:00:00 2001
+From: Raghav Gururajan <rg <at> raghavgururajan.name>
+Date: Tue, 7 Sep 2021 17:15:18 -0400
+Subject: Names of libraries included in typelib files are opened
+ by dlopen. Here we add the full path.
+
+This patch was provided by Luca Bruno <lucabru <at> src.gnome.org>,
+for 'gobject-introspection' 1.40.0 in Nix.
+
+It has since been updated to work with newer versions of
+gobject-introspection.
+---
+ giscanner/scannermain.py     | 37 ++++++++++++++++++++++++++++++++++++
+ giscanner/shlibs.py          | 30 ++++++++++++++++++++---------
+ giscanner/utils.py           | 15 +++++----------
+ tests/scanner/test_shlibs.py |  3 ++-
+ 4 files changed, 65 insertions(+), 20 deletions(-)
+
+diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
+index 957ba0b7..78f9b11b 100644
 --- a/giscanner/scannermain.py
 +++ b/giscanner/scannermain.py
 @@ -95,6 +95,39 @@ def get_windows_option_group(parser):
@@ -48,7 +60,7 @@
  def _get_option_parser():
      parser = optparse.OptionParser('%prog [options] sources',
                                     version='%prog ' + giscanner.__version__)
-@@ -205,6 +238,10 @@ match the namespace prefix.""")
+@@ -214,6 +247,10 @@ match the namespace prefix.""")
      parser.add_option("", "--filelist",
                        action="store", dest="filelist", default=[],
                        help="file containing headers and sources to be scanned")
@@ -59,6 +71,8 @@
  
      group = get_preprocessor_option_group(parser)
      parser.add_option_group(group)
+diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
+index 9f8ab5df..8aa37c99 100644
 --- a/giscanner/shlibs.py
 +++ b/giscanner/shlibs.py
 @@ -57,6 +57,14 @@ def _ldd_library_pattern(library_name):
@@ -76,7 +90,7 @@
  # This is a what we do for non-la files. We assume that we are on an
  # ELF-like system where ldd exists and the soname extracted with ldd is
  # a filename that can be opened with dlopen().
-@@ -106,7 +112,8 @@ def _resolve_non_libtool(options, binary, libraries):
+@@ -108,7 +116,8 @@ def _resolve_non_libtool(options, binary, libraries):
              output = output.decode("utf-8", "replace")
  
          shlibs = resolve_from_ldd_output(libraries, output)
@@ -86,7 +100,7 @@
  
  
  def sanitize_shlib_path(lib):
-@@ -115,19 +122,18 @@ def sanitize_shlib_path(lib):
+@@ -117,19 +126,18 @@ def sanitize_shlib_path(lib):
      # In case we get relative paths on macOS (like @rpath) then we fall
      # back to the basename as well:
      # https://gitlab.gnome.org/GNOME/gobject-introspection/issues/222
@@ -111,7 +125,7 @@
      if len(patterns) == 0:
          return []
  
-@@ -139,8 +145,12 @@ def resolve_from_ldd_output(libraries, output):
+@@ -141,8 +149,12 @@ def resolve_from_ldd_output(libraries, output):
          if line.endswith(':'):
              continue
          for word in line.split():
@@ -126,10 +140,11 @@
                  if m:
                      del patterns[library]
                      shlibs.append(m.group())
-
+diff --git a/giscanner/utils.py b/giscanner/utils.py
+index 45807f17..8a319cd1 100644
 --- a/giscanner/utils.py
 +++ b/giscanner/utils.py
-@@ -111,17 +111,11 @@ def extract_libtool_shlib(la_file):
+@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file):
      if dlname is None:
          return None
  
@@ -141,8 +156,7 @@
 -        if libdir is None:
 -            return dlbasename
 -        return libdir + '/' + dlbasename
--    # From the comments in extract_libtool(), older libtools had
--    # a path rather than the raw dlname
+-    # Older libtools had a path rather than the raw dlname
 -    return os.path.basename(dlname)
 +    dlbasename = os.path.basename(dlname)
 +    libdir = _extract_libdir_field(la_file)
@@ -151,10 +165,12 @@
 +    return libdir + '/' + dlbasename
  
  
- def extract_libtool(la_file):
+ # Returns arguments for invoking libtool, if applicable, otherwise None
+diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py
+index a8337c60..7f123103 100644
 --- a/tests/scanner/test_shlibs.py
 +++ b/tests/scanner/test_shlibs.py
-@@ -40,6 +64,7 @@ class TestLddParser(unittest.TestCase):
+@@ -40,7 +40,8 @@ class TestLddParser(unittest.TestCase):
  
          self.assertEqual(
              sanitize_shlib_path('/foo/bar'),
@@ -163,4 +179,7 @@
 +            '/foo/bar')
  
      def test_unresolved_library(self):
-output = ''
+         output = ''
+-- 
+2.33.0
+
diff --git a/gnu/packages/patches/gobject-introspection-cc.patch b/gnu/packages/patches/gobject-introspection-cc.patch
index 6a86b56b44..fde13d1a59 100644
--- a/gnu/packages/patches/gobject-introspection-cc.patch
+++ b/gnu/packages/patches/gobject-introspection-cc.patch
@@ -1,14 +1,25 @@
-Use gcc as the default C compiler if CC is not set.
+From e9b8fa0768a1f0ef7df2659eb559f48433ff82be Mon Sep 17 00:00:00 2001
+From: Raghav Gururajan <rg <at> raghavgururajan.name>
+Date: Tue, 7 Sep 2021 16:59:16 -0400
+Subject: Use gcc as the default C compiler if CC is not set.
 
-diff -ru gobject-introspection-1.58.1.orig/giscanner/__init__.py gobject-introspection-1.58.1/giscanner/__init__.py
---- gobject-introspection-1.58.1.orig/giscanner/__init__.py	1970-01-01 01:00:00.000000000 +0100
-+++ gobject-introspection-1.58.1/giscanner/__init__.py	2018-12-03 13:33:28.788971299 +0100
-@@ -22,6 +22,8 @@
+---
+ giscanner/__init__.py | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/giscanner/__init__.py b/giscanner/__init__.py
+index 7c2f365a..607fe341 100644
+--- a/giscanner/__init__.py
++++ b/giscanner/__init__.py
+@@ -21,6 +21,8 @@ import os
  builddir = os.environ.get('UNINSTALLED_INTROSPECTION_BUILDDIR')
  if builddir is not None:
-     __path__.append(os.path.join(builddir, 'giscanner'))
+     __path__.append(os.path.join(builddir, 'giscanner'))  # type: ignore  # mypy issue #1422
 +if not 'CC' in os.environ:
 +    os.environ['CC'] = 'gcc'
  try:
      from ._version import __version__
  except ImportError:
+-- 
+2.33.0
+
-- 
2.33.0





Reply sent to Raghav Gururajan <rg <at> raghavgururajan.name>:
You have taken responsibility. (Wed, 08 Sep 2021 01:42:02 GMT) Full text and rfc822 format available.

Notification sent to Raghav Gururajan <rg <at> raghavgururajan.name>:
bug acknowledged by developer. (Wed, 08 Sep 2021 01:42:02 GMT) Full text and rfc822 format available.

Message #16 received at 50465-done <at> debbugs.gnu.org (full text, mbox):

From: Raghav Gururajan <rg <at> raghavgururajan.name>
To: 50465-done <at> debbugs.gnu.org
Subject: Re: Gobject-Introspection
Date: Tue, 7 Sep 2021 21:41:06 -0400
[Message part 1 (text/plain, inline)]
Pushed to core-updates and then cherry-picked into wip-gnome.
[OpenPGP_0x5F5816647F8BE551.asc (application/pgp-keys, attachment)]
[OpenPGP_signature (application/pgp-signature, attachment)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 06 Oct 2021 11:24:11 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 215 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.