1 |
commit: 64f08e0afb484687f48529d5f194244d882cc20b |
2 |
Author: Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Mar 26 20:51:16 2016 +0000 |
4 |
Commit: Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Mar 26 20:51:16 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=64f08e0a |
7 |
|
8 |
dev-libs/glib: gobject.stp.in missing from tarball, bug #578238 |
9 |
|
10 |
Already fixed upstream: https://bugzilla.gnome.org/show_bug.cgi?id=763821 |
11 |
|
12 |
Package-Manager: portage-2.2.28 |
13 |
|
14 |
dev-libs/glib/files/glib-2.48.0-gobject.stp.in | 199 +++++++++++++++++++++++++ |
15 |
dev-libs/glib/glib-2.48.0.ebuild | 3 + |
16 |
2 files changed, 202 insertions(+) |
17 |
|
18 |
diff --git a/dev-libs/glib/files/glib-2.48.0-gobject.stp.in b/dev-libs/glib/files/glib-2.48.0-gobject.stp.in |
19 |
new file mode 100644 |
20 |
index 0000000..edcdb50 |
21 |
--- /dev/null |
22 |
+++ b/dev-libs/glib/files/glib-2.48.0-gobject.stp.in |
23 |
@@ -0,0 +1,199 @@ |
24 |
+global gtypes |
25 |
+global gtypenames |
26 |
+global gsignalnames |
27 |
+ |
28 |
+/* These are needed to keep track of gtype and signal names for the below |
29 |
+ * probes. |
30 |
+ */ |
31 |
+probe process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("type__new") |
32 |
+{ |
33 |
+ gtypes[pid(),user_string($arg1)] = $arg3; |
34 |
+ gtypenames[pid(),$arg3] = user_string($arg1); |
35 |
+} |
36 |
+probe process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("signal__new") |
37 |
+{ |
38 |
+ gsignalnames[pid(),$arg1] = user_string($arg2); |
39 |
+} |
40 |
+ |
41 |
+/** |
42 |
+ * probe gobject.type_new - Called when any entity registered with the #GType system is created |
43 |
+ * @name: String name of type |
44 |
+ * @parent_gtype: The parent #GType of this type |
45 |
+ * @gtype: The #GType for this type |
46 |
+ */ |
47 |
+probe gobject.type_new = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("type__new") |
48 |
+{ |
49 |
+ name = user_string($arg1); |
50 |
+ parent_gtype = $arg2; |
51 |
+ gtype = $arg3; |
52 |
+ probestr = sprintf("gobject.type_new(%s, %d) -> %d", name, parent_gtype, gtype); |
53 |
+} |
54 |
+ |
55 |
+/** |
56 |
+ * probe gobject.object_new - Called when a #GObject is created |
57 |
+ * @object: Raw pointer to object |
58 |
+ * @gtype: #GType for this object |
59 |
+ * @type: String name of object type |
60 |
+ */ |
61 |
+probe gobject.object_new = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("object__new") |
62 |
+{ |
63 |
+ object = $arg1; |
64 |
+ gtype = $arg2; |
65 |
+ type = gtypenames[pid(),$arg2]; |
66 |
+ probestr = sprintf("gobject.object_new(%s) -> %p", type, object); |
67 |
+} |
68 |
+ |
69 |
+/** |
70 |
+ * probe gobject.object_ref - Called when a new reference is added to a #GObject |
71 |
+ * @object: Raw pointer to object |
72 |
+ * @gtype: #GType for this object |
73 |
+ * @type: String name of object type |
74 |
+ * @old_refcount: Original value of the reference count |
75 |
+ * @refcount: New value of the reference count |
76 |
+ */ |
77 |
+probe gobject.object_ref = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("object__ref") |
78 |
+{ |
79 |
+ object = $arg1; |
80 |
+ gtype = $arg2; |
81 |
+ type = gtypenames[pid(),gtype]; |
82 |
+ old_refcount = $arg3; |
83 |
+ refcount = old_refcount+1; |
84 |
+ probestr = sprintf("gobject.object_ref(%p[%s]) -> %d", object, type, refcount); |
85 |
+} |
86 |
+ |
87 |
+/** |
88 |
+ * probe gobject.object_unref - Called when a reference is removed from a #GObject |
89 |
+ * @object: Raw pointer to object |
90 |
+ * @gtype: #GType for this object |
91 |
+ * @type: String name of object type |
92 |
+ * @old_refcount: Original value of the reference count |
93 |
+ */ |
94 |
+probe gobject.object_unref = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("object__unref") |
95 |
+{ |
96 |
+ object = $arg1; |
97 |
+ gtype = $arg2; |
98 |
+ type = gtypenames[pid(),gtype]; |
99 |
+ old_refcount = $arg3; |
100 |
+ refcount = old_refcount-1; |
101 |
+ probestr = sprintf("gobject.object_unref(%p [%s]) -> %d", object, type, refcount); |
102 |
+} |
103 |
+ |
104 |
+/** |
105 |
+ * probe gobject.object_dispose - Called when a g_object_dispose() run for a #GObject is initiated |
106 |
+ * @object: Raw pointer to object |
107 |
+ * @gtype: #GType for this object |
108 |
+ * @type: String name of object type |
109 |
+ * @last_unref: FIXME |
110 |
+ */ |
111 |
+probe gobject.object_dispose = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("object__dispose") |
112 |
+{ |
113 |
+ object = $arg1; |
114 |
+ gtype = $arg2; |
115 |
+ type = gtypenames[pid(),$arg2]; |
116 |
+ last_unref = $arg3; |
117 |
+ probestr = sprintf("gobject.object_dispose(%p[%s])", object, type); |
118 |
+} |
119 |
+ |
120 |
+/** |
121 |
+ * probe gobject.object_dispose_end - Called when a g_object_dispose() run for a #GObject is completed |
122 |
+ * @object: Raw pointer to object |
123 |
+ * @gtype: #GType for this object |
124 |
+ * @type: String name of object type |
125 |
+ * @last_unref: FIXME |
126 |
+ */ |
127 |
+probe gobject.object_dispose_end = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("object__dispose__end") |
128 |
+{ |
129 |
+ object = $arg1; |
130 |
+ gtype = $arg2; |
131 |
+ type = gtypenames[pid(),$arg2]; |
132 |
+ last_unref = $arg3; |
133 |
+ probestr = sprintf("gobject.object_dispose_end(%p[%s])", object, type); |
134 |
+} |
135 |
+ |
136 |
+/** |
137 |
+ * probe gobject.object_finalize - Called when finalization for a #GObject is started |
138 |
+ * @object: Raw pointer to object |
139 |
+ * @gtype: #GType for this object |
140 |
+ * @type: String name of object type |
141 |
+ */ |
142 |
+probe gobject.object_finalize = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("object__finalize") |
143 |
+{ |
144 |
+ object = $arg1; |
145 |
+ gtype = $arg2; |
146 |
+ type = gtypenames[pid(),$arg2]; |
147 |
+ probestr = sprintf("gobject.object_finalize(%p[%s])", object, type); |
148 |
+} |
149 |
+ |
150 |
+/** |
151 |
+ * probe gobject.object_finalize - Called when finalization for a #GObject is completed |
152 |
+ * @object: Raw pointer to object |
153 |
+ * @gtype: #GType for this object |
154 |
+ * @type: String name of object type |
155 |
+ */ |
156 |
+probe gobject.object_finalize_end = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("object__finalize__end") |
157 |
+{ |
158 |
+ object = $arg1; |
159 |
+ gtype = $arg2; |
160 |
+ type = gtypenames[pid(),$arg2]; |
161 |
+ probestr = sprintf("gobject.object_finalize_end(%p[%s])", object, type); |
162 |
+} |
163 |
+ |
164 |
+/** |
165 |
+ * probe gobject.signal_new - Called when a new signal is registered for a #GObject |
166 |
+ * @gsignal: Integer value for this signal |
167 |
+ * @name: String name for this signal |
168 |
+ * @gtype: #GType for the type which will gain the new signal |
169 |
+ * @type: String name of the type which will gain the new signal |
170 |
+ */ |
171 |
+probe gobject.signal_new = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("signal__new") |
172 |
+{ |
173 |
+ gsignal = $arg1; |
174 |
+ name = user_string($arg2); |
175 |
+ gtype = $arg3; |
176 |
+ type = gtypenames[pid(),$arg3]; |
177 |
+ probestr = sprintf("gobject.signal_new(%s, %s) -> %d", name, type, gsignal); |
178 |
+} |
179 |
+ |
180 |
+/** |
181 |
+ * probe gobject.signal_emit - Called when a signal emission for a #GObject is started |
182 |
+ * @gsignal: Integer value for this signal |
183 |
+ * @detail: String containing signal "detail" |
184 |
+ * @signal: String name of the signal |
185 |
+ * @object: Raw pointer for object emitting signal |
186 |
+ * @gtype: #GType for the type emitting the signal |
187 |
+ * @type: String name of the type emitting the signal |
188 |
+ */ |
189 |
+probe gobject.signal_emit = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("signal__emit") |
190 |
+{ |
191 |
+ gsignal = $arg1; |
192 |
+ detail = $arg2; |
193 |
+ signal = gsignalnames[pid(),$arg1]; |
194 |
+ if (detail != 0) |
195 |
+ signal = signal . "::" . gquarks[pid(), detail] |
196 |
+ object = $arg3; |
197 |
+ gtype = $arg4; |
198 |
+ type = gtypenames[pid(),$arg4]; |
199 |
+ probestr = sprintf("gobject.signal_emit(%p[%s], %s)", object, type, signal); |
200 |
+} |
201 |
+ |
202 |
+/** |
203 |
+ * probe gobject.signal_emit_end - Called when a signal emission for a #GObject is completed |
204 |
+ * @gsignal: Integer value for this signal |
205 |
+ * @detail: String containing signal "detail" |
206 |
+ * @signal: String name of the signal |
207 |
+ * @object: Raw pointer for object emitting signal |
208 |
+ * @gtype: #GType for the type emitting the signal |
209 |
+ * @type: String name of the type emitting the signal |
210 |
+ */ |
211 |
+probe gobject.signal_emit_end = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("signal__emit__end") |
212 |
+{ |
213 |
+ gsignal = $arg1; |
214 |
+ detail = $arg2; |
215 |
+ signal = gsignalnames[pid(),$arg1]; |
216 |
+ if (detail != 0) |
217 |
+ signal = signal . "::" . gquarks[pid(), detail] |
218 |
+ object = $arg3; |
219 |
+ gtype = $arg4; |
220 |
+ type = gtypenames[pid(),$arg4]; |
221 |
+ probestr = sprintf("gobject.signal_emit_end(%p[%s], %s)", object, type, signal); |
222 |
+} |
223 |
|
224 |
diff --git a/dev-libs/glib/glib-2.48.0.ebuild b/dev-libs/glib/glib-2.48.0.ebuild |
225 |
index b1ce2b6..c1d5a50 100644 |
226 |
--- a/dev-libs/glib/glib-2.48.0.ebuild |
227 |
+++ b/dev-libs/glib/glib-2.48.0.ebuild |
228 |
@@ -125,6 +125,9 @@ src_prepare() { |
229 |
# gdbus-codegen is a separate package |
230 |
epatch "${FILESDIR}"/${PN}-2.40.0-external-gdbus-codegen.patch |
231 |
|
232 |
+ # missing from 2.48.0 tarball, should be fixed in 2.48.1; bug #578238 |
233 |
+ cp "${FILESDIR}"/${P}-gobject.stp.in gobject/gobject.stp.in || die |
234 |
+ |
235 |
# leave python shebang alone |
236 |
# sed -e '/${PYTHON}/d' \ |
237 |
# -i glib/Makefile.{am,in} || die |