diff options
author | V3n3RiX <venerix@koprulu.sector> | 2025-02-10 00:12:21 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2025-02-10 00:12:21 +0000 |
commit | 3a81cede4783e464b7485722b2eaac0280dbc570 (patch) | |
tree | 261618bfbe562244c237d48a7960d4952bc6b318 /dev-perl/Glib-Object-Introspection | |
parent | b95a6fd4a7b591baa7cfc689f8ce5643592d07be (diff) |
gentoo auto-resync : 10:02:2025 - 00:12:20
Diffstat (limited to 'dev-perl/Glib-Object-Introspection')
3 files changed, 90 insertions, 0 deletions
diff --git a/dev-perl/Glib-Object-Introspection/Glib-Object-Introspection-0.51.0-r1.ebuild b/dev-perl/Glib-Object-Introspection/Glib-Object-Introspection-0.51.0-r1.ebuild new file mode 100644 index 000000000000..a4bf26867b85 --- /dev/null +++ b/dev-perl/Glib-Object-Introspection/Glib-Object-Introspection-0.51.0-r1.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DIST_AUTHOR=XAOC +DIST_VERSION=0.051 +inherit perl-module xdg-utils + +DESCRIPTION="Dynamically create Perl language bindings" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86" + +RDEPEND=" + >=dev-perl/glib-perl-1.320.0 + >=dev-libs/gobject-introspection-1.0 + >=dev-libs/libffi-3.0.0:= + >=dev-libs/glib-2.0.0 +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + ${RDEPEND} + >=dev-perl/ExtUtils-Depends-0.300.0 + >=dev-perl/ExtUtils-PkgConfig-1.0.0 +" + +PATCHES=( + "${FILESDIR}"/${P}-new-gobject-introspection.patch +) + +pkg_setup() { + # bug #599128 + xdg_environment_reset +} diff --git a/dev-perl/Glib-Object-Introspection/Manifest b/dev-perl/Glib-Object-Introspection/Manifest index fbfdd434114e..8ff68163cc10 100644 --- a/dev-perl/Glib-Object-Introspection/Manifest +++ b/dev-perl/Glib-Object-Introspection/Manifest @@ -1,3 +1,5 @@ +AUX Glib-Object-Introspection-0.51.0-new-gobject-introspection.patch 2096 BLAKE2B 9c99f482027e46cc4d57597b3ddc7fd8a9c0d48db2bb7d64090c0d989aba0c22720c6750334a9f34d2fc35542a77ac154fb747009310a9c1962bc9735ac75760 SHA512 1652dd8105255a699c39f62ebdf5bfa688b59773228360e9aabfbf797699779cdf5502be680c75a6b2379c93016a07efe7ec64377980d2efff97d7bf437153ac DIST Glib-Object-Introspection-0.051.tar.gz 89445 BLAKE2B 7447bf8473acdfe015ffaab6f4b33420efe23aed5852e2eba54eed8a3edb7275a94abe1c3dad9583f175c30146c3b32e2191f14b2bec5c9c9f36355cc80a5098 SHA512 93ebe81b586270cbeca4296bfdd1d337d931b6349ca16a8e50bfc631c89a77d93f4d8076289e91bdcec0fdb732a2900b2a6c5e78e571c0c0fd4c7f5239cc0de5 +EBUILD Glib-Object-Introspection-0.51.0-r1.ebuild 697 BLAKE2B 39859df79b399043992e9ed3759e6476f48c5b2efc6afdbda23803f17057eb04b1e48c00b908b07cbca174a03f27404a26417c66027b358d46c9bd10fab37009 SHA512 536797c464fa00a57f40e3f13d0779ad93eac847412c1429b162e575d63acc58b2c94b2798572272e9e30355b97a3616bd3c24d690eacfd72b8da5256cab6645 EBUILD Glib-Object-Introspection-0.51.0.ebuild 628 BLAKE2B e8d6de9dfe8bb54b232f15f8fc45aeeec88a72068dd321588380cd3564a233f16a441c03553cc4ac85cee6d9332b3a4b172a37f99e49c5f58603f3d8e35aaa0f SHA512 37a2e6fc80639d96bba19fadbd088b047dc410c064b8398df94b6e5ac4d72abfa91dd879e407c71df00e22deb8bed1eef05e4a6012dac9812dbdf1ab01411c19 MISC metadata.xml 412 BLAKE2B d21ff75abddb2f7e5ece1a2a3bf1d55dae89449dd1148c60f3a32ddfffdfcbbba56807074163f154247401d938c8afddb7e434c94a5957e0e70e92f806317fc8 SHA512 442bcc47771a161868faa68dc16b4bda36c6e68a5391cee94d59821ef1648d7d485a82e3d97fb439d5f3fc373ce83a218ace37c37259fb143f96a9392804c83a diff --git a/dev-perl/Glib-Object-Introspection/files/Glib-Object-Introspection-0.51.0-new-gobject-introspection.patch b/dev-perl/Glib-Object-Introspection/files/Glib-Object-Introspection-0.51.0-new-gobject-introspection.patch new file mode 100644 index 000000000000..c0b6ac639be9 --- /dev/null +++ b/dev-perl/Glib-Object-Introspection/files/Glib-Object-Introspection-0.51.0-new-gobject-introspection.patch @@ -0,0 +1,50 @@ +https://gitlab.gnome.org/GNOME/perl-glib-object-introspection/-/commit/e5adffecdc9b321d1f8d91777b190b8ae08f8dd0 + +From e5adffecdc9b321d1f8d91777b190b8ae08f8dd0 Mon Sep 17 00:00:00 2001 +From: Emmanuele Bassi <ebassi@gnome.org> +Date: Sat, 14 Sep 2024 13:09:59 +0100 +Subject: [PATCH] Handle pointer types + +Now that gobject-introspection pairs G_TYPE_POINTER types with their +type registration function, we need to handle the case in which we are +passed a pointer to a record that inherits from G_TYPE_POINTER. Since +these types are basically plain pointers, we can reuse the sv_to_struct +and struct_to_sv functions we use for untyped structures. + +Fixes: #7 +--- + gperl-i11n-marshal-interface.c | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/gperl-i11n-marshal-interface.c b/gperl-i11n-marshal-interface.c +index 2bef8eb..50cce51 100644 +--- a/gperl-i11n-marshal-interface.c ++++ b/gperl-i11n-marshal-interface.c +@@ -41,6 +41,12 @@ instance_sv_to_pointer (GICallableInfo *info, SV *sv, GPerlI11nInvocationInfo *i + info_type, + sv); + } ++ } else if (g_type_is_a (type, G_TYPE_POINTER)) { ++ dwarn (" -> pointer\n"); ++ pointer = sv_to_struct (GI_TRANSFER_NOTHING, ++ container, ++ info_type, ++ sv); + } else { + dwarn (" -> boxed: type=%s (%"G_GSIZE_FORMAT")\n", + g_type_name (type), type); +@@ -397,6 +403,12 @@ interface_to_sv (GITypeInfo* info, + } + } + ++ else if (g_type_is_a (type, G_TYPE_POINTER)) { ++ dwarn (" -> pointer: pointer=%p, type=%"G_GSIZE_FORMAT" (%s), own=%d\n", ++ arg->v_pointer, type, g_type_name (type), own); ++ sv = struct_to_sv (interface, info_type, arg->v_pointer, own); ++ } ++ + #if GLIB_CHECK_VERSION (2, 24, 0) + else if (g_type_is_a (type, G_TYPE_VARIANT)) { + dwarn (" -> variant\n"); +-- +GitLab |