[gentoo-commits] repo/gentoo:master commit in: dev-libs/gobject-introspection/files/, dev-libs/gobject-introspection/
commit: 7ad11f4f5215243e9853d6de4d12cefbdce74f51 Author: Michał Górny gentoo org> AuthorDate: Tue Sep 3 05:53:10 2024 + Commit: Michał Górny gentoo org> CommitDate: Fri Sep 6 09:27:51 2024 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7ad11f4f dev-libs/gobject-introspection: Add a patch for >=setuptools-74 Signed-off-by: Michał Górny gentoo.org> ...object-introspection-1.80.1-setuptools-74.patch | 101 + .../gobject-introspection-1.76.1-r2.ebuild | 84 + .../gobject-introspection-1.78.1-r2.ebuild | 88 ++ .../gobject-introspection-1.80.1-r2.ebuild | 90 ++ 4 files changed, 363 insertions(+) diff --git a/dev-libs/gobject-introspection/files/gobject-introspection-1.80.1-setuptools-74.patch b/dev-libs/gobject-introspection/files/gobject-introspection-1.80.1-setuptools-74.patch new file mode 100644 index ..712fafe27946 --- /dev/null +++ b/dev-libs/gobject-introspection/files/gobject-introspection-1.80.1-setuptools-74.patch @@ -0,0 +1,101 @@ +From a2139dba59eac283a7f543ed737f038deebddc19 Mon Sep 17 00:00:00 2001 +From: Christoph Reiter +Date: Wed, 28 Aug 2024 21:26:02 +0200 +Subject: [PATCH] giscanner: remove dependency on distutils.msvccompiler + +It was removed with setuptools 74.0.0. Since we still depend on the +MSVCCompiler class use new_compiler() to get it some other way. + +Remove any reference to MSVC9Compiler, which was for Visual Studio 2008 +which we no longer support anyway. + +Fixes #515 +--- + giscanner/ccompiler.py| 7 +++ + giscanner/msvccompiler.py | 14 +++--- + 2 files changed, 10 insertions(+), 11 deletions(-) + +diff --git a/giscanner/ccompiler.py b/giscanner/ccompiler.py +index d0ed70a3c..9a732cd5e 100644 +--- a/giscanner/ccompiler.py b/giscanner/ccompiler.py +@@ -26,7 +26,6 @@ import tempfile + import sys + import distutils + +-from distutils.msvccompiler import MSVCCompiler + from distutils.unixccompiler import UnixCCompiler + from distutils.cygwinccompiler import Mingw32CCompiler + from distutils.sysconfig import get_config_vars +@@ -167,7 +166,7 @@ class CCompiler(object): + # Now, create the distutils ccompiler instance based on the info we have. + if compiler_name == 'msvc': + # For MSVC, we need to create a instance of a subclass of distutil's +-# MSVC9Compiler class, as it does not provide a preprocess() ++# MSVCCompiler class, as it does not provide a preprocess() + # implementation + from . import msvccompiler + self.compiler = msvccompiler.get_msvc_compiler() +@@ -460,7 +459,7 @@ class CCompiler(object): + return self.compiler.linker_exe + + def check_is_msvc(self): +-return isinstance(self.compiler, MSVCCompiler) ++return self.compiler.compiler_type == "msvc" + + # Private APIs + def _set_cpp_options(self, options): +@@ -486,7 +485,7 @@ class CCompiler(object): + # macros for compiling using distutils + # get dropped for MSVC builds, so + # escape the escape character. +-if isinstance(self.compiler, MSVCCompiler): ++if self.check_is_msvc(): + macro_value = macro_value.replace('\"', '\\\"') + macros.append((macro_name, macro_value)) + elif option.startswith('-U'): +diff --git a/giscanner/msvccompiler.py b/giscanner/msvccompiler.py +index 0a5439820..e333a80f5 100644 +--- a/giscanner/msvccompiler.py b/giscanner/msvccompiler.py +@@ -19,30 +19,30 @@ + # + + import os +-import distutils ++from typing import Type + + from distutils.errors import DistutilsExecError, CompileError +-from distutils.ccompiler import CCompiler, gen_preprocess_options ++from distutils.ccompiler import CCompiler, gen_preprocess_options, new_compiler + from distutils.dep_util import newer + + # Distutil's MSVCCompiler does not provide a preprocess() + # Implementation, so do our own here. + + ++DistutilsMSVCCompiler: Type = type(new_compiler(compiler="msvc")) ++ ++ + def get_msvc_compiler(): + return MSVCCompiler() + + +-class MSVCCompiler(distutils.msvccompiler.MSVCCompiler): ++class MSVCCompiler(DistutilsMSVCCompiler): + + def __init__(self, verbose=0, dry_run=0, force=0): +-super(distutils.msvccompiler.MSVCCompiler, self).__init__() ++super(DistutilsMSVCCompiler, self).__init__() + CCompiler.__init__(self, verbose, dry_run, force) + self.__paths = [] + self.__arch = None # deprecated name +-if os.name == 'nt': +-if isinstance(self, distutils.msvc9compiler.MSVCCompiler): +-self.__version = distutils.msvc9compiler.VERSION + self.initialized = False + self.preprocess_options = None + if self.check_is_clang_cl(): +-- +GitLab +
[gentoo-commits] repo/gentoo:master commit in: dev-libs/gobject-introspection/files/, dev-libs/gobject-introspection/
commit: e47f971b066fc1655eca431dff1f3a888d91cded Author: Sam James gentoo org> AuthorDate: Thu Jan 27 01:22:04 2022 + Commit: Sam James gentoo org> CommitDate: Thu Jan 27 01:23:21 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e47f971b dev-libs/gobject-introspection: add additional meson 0.61 patches I'd missed additional upstream commits when fixing the initial Meson 0.61 bug we had reported which led to build failures with USE=doctool not being fixed. This now includes (additionally): - https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/827494d6415b696a98fa195cbd883b50cc893bfc.patch - https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/7c1178069f1c58a05ec56a94ca6ba124215a947b.patch Bug: https://bugs.gentoo.org/831427 Closes: https://bugs.gentoo.org/831463 Signed-off-by: Sam James gentoo.org> dev-libs/gobject-introspection/Manifest| 1 + .../gobject-introspection-1.70.0-meson-0.61.patch | 220 - .../gobject-introspection-1.70.0.ebuild| 3 +- 3 files changed, 3 insertions(+), 221 deletions(-) diff --git a/dev-libs/gobject-introspection/Manifest b/dev-libs/gobject-introspection/Manifest index b731b07ae141..4dd84dca0b07 100644 --- a/dev-libs/gobject-introspection/Manifest +++ b/dev-libs/gobject-introspection/Manifest @@ -1 +1,2 @@ +DIST gobject-introspection-1.70.0-meson-0.61.patch.bz2 4211 BLAKE2B 0453266900dfdf24da3531d205fe03d8eb5f6e3d76db4b945852453dc46d26a77449f0ddd81bad6df6d8108d8a7369b60a07b7c4f8e0c01811f735da76cf4d56 SHA512 ba5861baaabfe20185d85ccbc02425d1e44c525a5d05c28ee84552c43ab30497bed4e713e6f1b2f9c6508714020b04b5228532e1489e8a732ba99ea61ca950c7 DIST gobject-introspection-1.70.0.tar.xz 1029372 BLAKE2B a649ea77b2b7ca392202e21a7f4814aafe57afea7fedb39e78f1df1cd97d0437207c3807a51ece6c9e9bce51fdf961ee7438ccd4efd84b45dbdb57ae19a39272 SHA512 216b376ed423f607e36c723dd6b67975dbfb63c253f2d8bd0b3661e3d69f8c8059cf221db8c5260b0262fad1b7d738f3b2e5fbd51fdbc31e40ccb115c209baf0 diff --git a/dev-libs/gobject-introspection/files/gobject-introspection-1.70.0-meson-0.61.patch b/dev-libs/gobject-introspection/files/gobject-introspection-1.70.0-meson-0.61.patch deleted file mode 100644 index df1663116ccd.. --- a/dev-libs/gobject-introspection/files/gobject-introspection-1.70.0-meson-0.61.patch +++ /dev/null @@ -1,220 +0,0 @@ -https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/effb1e09dee263cdac4ec593e8caf316e6f01fe2.patch -https://bugs.gentoo.org/831427 - -From effb1e09dee263cdac4ec593e8caf316e6f01fe2 Mon Sep 17 00:00:00 2001 -From: Emmanuele Bassi -Date: Tue, 11 Jan 2022 15:51:10 + -Subject: [PATCH] build: Avoid the doctemplates hack -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The hack that copies the doctemplates directory into the build -directory has stopped working with newer versions of Meson; while it's -possible to copy files, custom_target() cannot depend on a directory. -Additionally, the dependency has always been broken. - -Instead, we enumerate the template files—after all, it's not like they -change a lot—and then we list them as dependencies for the test targets. - -Fixes: #414 - giscanner/doctemplates/devdocs/meson.build | 19 +++ - giscanner/doctemplates/mallard/meson.build | 63 ++ - giscanner/meson.build | 14 ++--- - tests/scanner/meson.build | 24 + - 4 files changed, 98 insertions(+), 22 deletions(-) - create mode 100644 giscanner/doctemplates/devdocs/meson.build - create mode 100644 giscanner/doctemplates/mallard/meson.build - -diff --git a/giscanner/doctemplates/devdocs/meson.build b/giscanner/doctemplates/devdocs/meson.build -new file mode 100644 -index ..2037182a /dev/null -+++ b/giscanner/doctemplates/devdocs/meson.build -@@ -0,0 +1,19 @@ -+doc_templates += files([ -+ 'Gjs/_doc.tmpl', -+ 'Gjs/_index.tmpl', -+ 'Gjs/_method.tmpl', -+ 'Gjs/_methods.tmpl', -+ 'Gjs/_properties.tmpl', -+ 'Gjs/_signals.tmpl', -+ 'Gjs/_staticmethods.tmpl', -+ 'Gjs/_vfuncs.tmpl', -+ 'Gjs/base.tmpl', -+ 'Gjs/callback.tmpl', -+ 'Gjs/class.tmpl', -+ 'Gjs/default.tmpl', -+ 'Gjs/enum.tmpl', -+ 'Gjs/function.tmpl', -+ 'Gjs/interface.tmpl', -+ 'Gjs/method.tmpl', -+ 'Gjs/namespace.tmpl', -+]) -diff --git a/giscanner/doctemplates/mallard/meson.build b/giscanner/doctemplates/mallard/meson.build -new file mode 100644 -index ..5fe4e2af /dev/null -+++ b/giscanner/doctemplates/mallard/meson.build -@@ -0,0 +1,63 @@ -+base_templates = files([ -+ 'base.tmpl', -+ 'class.tmpl', -+ 'namespace.tmpl', -+]) -+ -+c_templates = files([ -+ 'C/callback.tmpl', -+ 'C/class.tmpl', -+ 'C/constructor.tmpl', -+ 'C/default.tmpl', -+ 'C/enum.tmpl', -+ 'C/field.tmpl', -+ 'C/function.tmpl', -+ 'C/interface.tmpl', -+ 'C/method.tmpl', -+ 'C/namespace.tmpl', -+ 'C/property.tmpl', -+ 'C/record.tmpl', -+ 'C
[gentoo-commits] repo/gentoo:master commit in: dev-libs/gobject-introspection/files/, dev-libs/gobject-introspection/
commit: b1cf68faebc69cf8ce20b257bb7e6b185bfac279 Author: Sam James gentoo org> AuthorDate: Tue Jan 18 22:25:05 2022 + Commit: Sam James gentoo org> CommitDate: Tue Jan 18 22:25:05 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b1cf68fa dev-libs/gobject-introspection: fix build with meson 0.61 Closes: https://bugs.gentoo.org/831427 Signed-off-by: Sam James gentoo.org> .../gobject-introspection-1.70.0-meson-0.61.patch | 220 + .../gobject-introspection-1.70.0.ebuild| 6 +- 2 files changed, 225 insertions(+), 1 deletion(-) diff --git a/dev-libs/gobject-introspection/files/gobject-introspection-1.70.0-meson-0.61.patch b/dev-libs/gobject-introspection/files/gobject-introspection-1.70.0-meson-0.61.patch new file mode 100644 index ..df1663116ccd --- /dev/null +++ b/dev-libs/gobject-introspection/files/gobject-introspection-1.70.0-meson-0.61.patch @@ -0,0 +1,220 @@ +https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/effb1e09dee263cdac4ec593e8caf316e6f01fe2.patch +https://bugs.gentoo.org/831427 + +From effb1e09dee263cdac4ec593e8caf316e6f01fe2 Mon Sep 17 00:00:00 2001 +From: Emmanuele Bassi +Date: Tue, 11 Jan 2022 15:51:10 + +Subject: [PATCH] build: Avoid the doctemplates hack +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The hack that copies the doctemplates directory into the build +directory has stopped working with newer versions of Meson; while it's +possible to copy files, custom_target() cannot depend on a directory. +Additionally, the dependency has always been broken. + +Instead, we enumerate the template files—after all, it's not like they +change a lot—and then we list them as dependencies for the test targets. + +Fixes: #414 +--- + giscanner/doctemplates/devdocs/meson.build | 19 +++ + giscanner/doctemplates/mallard/meson.build | 63 ++ + giscanner/meson.build | 14 ++--- + tests/scanner/meson.build | 24 + + 4 files changed, 98 insertions(+), 22 deletions(-) + create mode 100644 giscanner/doctemplates/devdocs/meson.build + create mode 100644 giscanner/doctemplates/mallard/meson.build + +diff --git a/giscanner/doctemplates/devdocs/meson.build b/giscanner/doctemplates/devdocs/meson.build +new file mode 100644 +index ..2037182a +--- /dev/null b/giscanner/doctemplates/devdocs/meson.build +@@ -0,0 +1,19 @@ ++doc_templates += files([ ++ 'Gjs/_doc.tmpl', ++ 'Gjs/_index.tmpl', ++ 'Gjs/_method.tmpl', ++ 'Gjs/_methods.tmpl', ++ 'Gjs/_properties.tmpl', ++ 'Gjs/_signals.tmpl', ++ 'Gjs/_staticmethods.tmpl', ++ 'Gjs/_vfuncs.tmpl', ++ 'Gjs/base.tmpl', ++ 'Gjs/callback.tmpl', ++ 'Gjs/class.tmpl', ++ 'Gjs/default.tmpl', ++ 'Gjs/enum.tmpl', ++ 'Gjs/function.tmpl', ++ 'Gjs/interface.tmpl', ++ 'Gjs/method.tmpl', ++ 'Gjs/namespace.tmpl', ++]) +diff --git a/giscanner/doctemplates/mallard/meson.build b/giscanner/doctemplates/mallard/meson.build +new file mode 100644 +index ..5fe4e2af +--- /dev/null b/giscanner/doctemplates/mallard/meson.build +@@ -0,0 +1,63 @@ ++base_templates = files([ ++ 'base.tmpl', ++ 'class.tmpl', ++ 'namespace.tmpl', ++]) ++ ++c_templates = files([ ++ 'C/callback.tmpl', ++ 'C/class.tmpl', ++ 'C/constructor.tmpl', ++ 'C/default.tmpl', ++ 'C/enum.tmpl', ++ 'C/field.tmpl', ++ 'C/function.tmpl', ++ 'C/interface.tmpl', ++ 'C/method.tmpl', ++ 'C/namespace.tmpl', ++ 'C/property.tmpl', ++ 'C/record.tmpl', ++ 'C/signal.tmpl', ++ 'C/vfunc.tmpl', ++]) ++ ++gjs_templates = files([ ++ 'Gjs/callback.tmpl', ++ 'Gjs/class.tmpl', ++ 'Gjs/constructor.tmpl', ++ 'Gjs/default.tmpl', ++ 'Gjs/enum.tmpl', ++ 'Gjs/field.tmpl', ++ 'Gjs/function.tmpl', ++ 'Gjs/interface.tmpl', ++ 'Gjs/method.tmpl', ++ 'Gjs/namespace.tmpl', ++ 'Gjs/property.tmpl', ++ 'Gjs/record.tmpl', ++ 'Gjs/signal.tmpl', ++ 'Gjs/vfunc.tmpl', ++]) ++ ++py_templates = files([ ++ 'Python/callback.tmpl', ++ 'Python/class.tmpl', ++ 'Python/constructor.tmpl', ++ 'Python/default.tmpl', ++ 'Python/enum.tmpl', ++ 'Python/field.tmpl', ++ 'Python/function.tmpl', ++ 'Python/interface.tmpl', ++ 'Python/method.tmpl', ++ 'Python/namespace.tmpl', ++ 'Python/property.tmpl', ++ 'Python/record.tmpl', ++ 'Python/signal.tmpl', ++ 'Python/vfunc.tmpl', ++]) ++ ++doc_templates += [ ++ base_templates, ++ c_templates, ++ gjs_templates, ++ py_templates, ++] +diff --git a/giscanner/meson.build b/giscanner/meson.build +index 41edcd44..3d7dc678 100644 +--- a/giscanner/meson.build b/giscanner/meson.build +@@ -53,17 +53,9 @@ configure_file(input : '../girepository/gdump.c', + + install_subdir('doctemplates', install_dir: giscannerdir) + +-# XXX: this doesn't track the input, but there is nothing to copy many files +-# in meson. +-doc_templates = custom_target('copy-templates', +- input : 'doctemplates', +- output : 'doctemplates', +- command : [ +-p
[gentoo-commits] repo/gentoo:master commit in: dev-libs/gobject-introspection/files/
commit: a88cac840131eac99f4a1037ef4baf0c87913483 Author: Michael Mair-Keimberger (asterix) gmail com> AuthorDate: Sun Sep 11 09:40:30 2016 + Commit: David Seifert gentoo org> CommitDate: Sun Nov 6 19:32:22 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a88cac84 dev-libs/gobject-introspection: remove unused patch Closes: https://github.com/gentoo/gentoo/pull/2226 Signed-off-by: David Seifert gentoo.org> .../gobject-introspection-1.42.0-cpp-flags.patch | 32 -- 1 file changed, 32 deletions(-) diff --git a/dev-libs/gobject-introspection/files/gobject-introspection-1.42.0-cpp-flags.patch b/dev-libs/gobject-introspection/files/gobject-introspection-1.42.0-cpp-flags.patch deleted file mode 100644 index 8195cdf.. --- a/dev-libs/gobject-introspection/files/gobject-introspection-1.42.0-cpp-flags.patch +++ /dev/null @@ -1,32 +0,0 @@ -From d2dce55c971fc44cc327818b0341eb89f1243db6 Mon Sep 17 00:00:00 2001 -From: Michael Catanzaro -Date: Wed, 28 Jan 2015 21:55:20 -0600 -Subject: scanner: don't pass certain debug level flags to cpp - -These may cause cpp to output code that still has #defines in them, -which the scanner does not expect. - -https://bugzilla.gnome.org/show_bug.cgi?id=720504 - -diff --git a/giscanner/sourcescanner.py b/giscanner/sourcescanner.py -index dab1602..9a81421 100644 a/giscanner/sourcescanner.py -+++ b/giscanner/sourcescanner.py -@@ -294,6 +294,14 @@ class SourceScanner(object): - cpp_args += ['-E', '-C', '-I.', '-'] - cpp_args += self._cpp_options - -+# We expect the preprocessor to remove macros. If debugging is turned -+# up high enough that won't happen, so strip these out. Bug #720504 -+for flag in ['-g3', '-ggdb3', '-gstabs3', '-gcoff3', '-gxcoff3', '-gvms3']: -+try: -+cpp_args.remove(flag) -+except ValueError: -+pass -+ - proc = subprocess.Popen(cpp_args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE) --- -cgit v0.10.2 -
[gentoo-commits] repo/gentoo:master commit in: dev-libs/gobject-introspection/files/, dev-libs/gobject-introspection/
commit: ecd471875a2f27df8bccb916cc4883471cd2b97a Author: Pacho Ramos gentoo org> AuthorDate: Sat Nov 14 17:35:56 2015 + Commit: Pacho Ramos gentoo org> CommitDate: Sat Nov 14 18:38:32 2015 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ecd47187 dev-libs/gobject-introspection: Drop old Package-Manager: portage-2.2.24 dev-libs/gobject-introspection/Manifest| 1 - .../gobject-introspection-1.40.0-gjs-crash.patch | 484 - .../gobject-introspection-1.40.0-r2.ebuild | 79 3 files changed, 564 deletions(-) diff --git a/dev-libs/gobject-introspection/Manifest b/dev-libs/gobject-introspection/Manifest index feb83c9..29d6f15 100644 --- a/dev-libs/gobject-introspection/Manifest +++ b/dev-libs/gobject-introspection/Manifest @@ -1,4 +1,3 @@ -DIST gobject-introspection-1.40.0.tar.xz 1286424 SHA256 96ea75e9679083e7fe39a105e810e2ead2d708abf189a5ba420bfccfffa24e98 SHA512 d6cc91be018d812f1b04281bc322b8809c2cc12e5e16adf8b826a82505315ec140ce2b823c107ed98c6dced8f62afb6071eed2702a9e76b0e8e73ad193824c04 WHIRLPOOL b5ab2bb221816802cd3d1d3aedcb6b9b5ea9f516b51b4a3a892de1098d834c78cf94aa3e552dc58f0d2530c032e9ba08b41c24b31992afc4493ac3f0bfdc2f78 DIST gobject-introspection-1.42.0.tar.xz 1308056 SHA256 3ba2edfad4f71d4f0de16960b5d5f2511335fa646b2c49bbb93ce5942b3f95f7 SHA512 2f84aae6ebb73f1cda70be6070fdbd0791777baed0f12921518a3c9cc890c406d6649bf0441bef5b93b6da4320d0c2639d9090c43d1011deebd1652f1e958021 WHIRLPOOL fe2703c82c83617093fa9ee74b28a2f6bec87d43f4b6eadf7f124a8454a817b6a30b635ea7c0388e429ae081f23c943ca31c34f2aa68811b1d4d10758b8a6a16 DIST gobject-introspection-1.44.0.tar.xz 1319168 SHA256 6f0c2c28aeaa37b5037acbf21558098c4f95029b666db755d3a12c2f1e1627ad SHA512 294bee6c935991620e6bfe4bd63d7b5c586079cdc9ac349dd5228f5822f86983a5a4518838c808c3fdd1152cb37f79db5ad8674245939ecad97459ce178f03e7 WHIRLPOOL fb032ae524bdbb011963c58e9d5d4a488fe89d95f2a353d0871176c26f1cb2f276743ec4bb97149f76135565965c173f149f163b78de47b994a5b4b32f3aa6aa DIST gobject-introspection-1.46.0.tar.xz 1359436 SHA256 6658bd3c2b8813eb3e2511ee153238d09ace9d309e4574af27443d87423e4233 SHA512 2bdf988caadd6c4286ed90e35d26e1478d8ca627c8fb34f23d44473d0520f16b6082f0ee4f0acf44769bb5de2354119f2e28595ad8919668bebe5aec4c1ac210 WHIRLPOOL fb6c8570c41ebb06808e994811da2794ce3fe70ea1e5d50dcf2a4e72646efe8d49ce0ca176cecfc0bb6c9a3d7f47c13edd1c238b0e0e9649552793ff62145164 diff --git a/dev-libs/gobject-introspection/files/gobject-introspection-1.40.0-gjs-crash.patch b/dev-libs/gobject-introspection/files/gobject-introspection-1.40.0-gjs-crash.patch deleted file mode 100644 index b4ee77e..000 --- a/dev-libs/gobject-introspection/files/gobject-introspection-1.40.0-gjs-crash.patch +++ /dev/null @@ -1,484 +0,0 @@ -From a4c9d09d7a89d3c80b4465a5c2ae0efa24158b24 Mon Sep 17 00:00:00 2001 -From: Giovanni Campagna -Date: Tue, 6 May 2014 18:53:21 +0200 -Subject: Parse and expose ownership transfer for instance parameters - -Knowing the ownership transfer for instance parameters is -necessary for correct memory management of functions which -"eat" their instance argument, such as g_dbus_method_invocation_return_*. -Parse this information from the gir file and store in the -typelib, and then provide new API on GICallableInfo to -retrieve this. - -https://bugzilla.gnome.org/show_bug.cgi?id=729662 - -diff --git a/girepository/gicallableinfo.c b/girepository/gicallableinfo.c -index e69e3e9..702e16c 100644 a/girepository/gicallableinfo.c -+++ b/girepository/gicallableinfo.c -@@ -276,6 +276,32 @@ g_callable_info_get_caller_owns (GICallableInfo *info) - } - - /** -+ * g_callable_info_get_instance_ownership_transfer: -+ * @info: a #GICallableInfo -+ * -+ * Obtains the ownership transfer for the instance argument. -+ * #GITransfer contains a list of possible transfer values. -+ * -+ * Returns: the transfer -+ */ -+GITransfer -+g_callable_info_get_instance_ownership_transfer (GICallableInfo *info) -+{ -+ GIRealInfo *rinfo = (GIRealInfo*) info; -+ SignatureBlob *blob; -+ -+ g_return_val_if_fail (info != NULL, -1); -+ g_return_val_if_fail (GI_IS_CALLABLE_INFO (info), -1); -+ -+ blob = (SignatureBlob *)&rinfo->typelib->data[signature_offset (info)]; -+ -+ if (blob->instance_transfer_ownership) -+return GI_TRANSFER_EVERYTHING; -+ else -+return GI_TRANSFER_NOTHING; -+} -+ -+/** - * g_callable_info_get_n_args: - * @info: a #GICallableInfo - * -diff --git a/girepository/gicallableinfo.h b/girepository/gicallableinfo.h -index 71f9d0c..f273d29 100644 a/girepository/gicallableinfo.h -+++ b/girepository/gicallableinfo.h -@@ -73,6 +73,8 @@ gboolean g_callable_info_invoke (GICallableInfo *info, - gboolean is_method, - gboolean throws, - GError **error); -+G