Gobject-Introspection

DoneSubmitted by Raghav Gururajan.
Details
One participant
  • Raghav Gururajan
Owner
unassigned
Severity
normal
R
R
Raghav Gururajan wrote on 7 Sep 23:32 +0200
(address . guix-patches@gnu.org)
2df6ed65-1777-c3a5-1e86-1872f421e2c1@raghavgururajan.name
R
R
Raghav Gururajan wrote on 7 Sep 23:35 +0200
[PATCH core-updates v1] gnu: gobject-introspection: Update to 1.68.0 and adjust patches.
(address . 50465@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210907213517.28486-1-rg@raghavgururajan.name
* 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(-)
Toggle diff (188 lines)diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scmindex 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.patchindex 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@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@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@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.patchindex 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@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
R
R
Raghav Gururajan wrote on 8 Sep 01:23 +0200
[PATCH core-updates v2] gnu: gobject-introspection: Update to 1.68.0 and adjust patches.
(address . 50465@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210907232323.856-1-rg@raghavgururajan.name
* 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(-)
Toggle diff (188 lines)diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scmindex 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.patchindex 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@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@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@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.patchindex 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@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
R
R
Raghav Gururajan wrote on 8 Sep 03:41 +0200
Re: Gobject-Introspection
(address . 50465-done@debbugs.gnu.org)
cabb3f9e-c6a7-0eea-80f7-13f2c5c5ccc9@raghavgururajan.name
Pushed to core-updates and then cherry-picked into wip-gnome.
Attachment: OpenPGP_signature
Closed
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send email to 50465@debbugs.gnu.org