[Pkg-rust-maintainers] Bug#1104991: FTBFS: rust-glib fails to with <!nocheck>
Matthias Geiger
werdahias at riseup.net
Sat May 10 14:12:40 BST 2025
Control: tags -1 moreinfo
On Fri, 9 May 2025 14:10:36 +0200 Andrey Feofilaktov <andarpolis at gmail.com> wrote:
> Package: rust-glib
> Version: 0.20.9-1
>
> rust-glib seems to have outdated/malformed gobject bindings and fails to
> build:
>
> error[E0425]: cannot find value `G_SIGNAL_ACCUMULATOR_FIRST_RUN` in crate
> `crate::gobject_ffi`
> --> src/gobject/auto/flags.rs:119:59
> |
> 119 | const ACCUMULATOR_FIRST_RUN =
> crate::gobject_ffi::G_SIGNAL_ACCUMULATOR_FIRST_RUN as _;
> |
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `crate::gobject_ffi`
> |
> note: found an item that was configured out
> --> /usr/share/cargo/registry/gobject-sys-0.20.9/src/lib.rs:113:11
> |
> 113 | pub const G_SIGNAL_ACCUMULATOR_FIRST_RUN: GSignalFlags = 131072;
> | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> note: the item is gated behind the `v2_68` feature
> --> /usr/share/cargo/registry/gobject-sys-0.20.9/src/lib.rs:111:7
> |
> 111 | #[cfg(feature = "v2_68")]
> | ^^^^^^^^^^^^^^^^^
>
> I can fix this by updating debian/rules to also run gir for
> Gir_GObject.toml (the same way it does for the sys bindings in
> rust-gobject-sys):
>
> Index: rust-glib-0.20.9-1/debian/rules
> ===================================================================
> --- rust-glib-0.20.9-1.orig/debian/rules
> +++ rust-glib-0.20.9-1/debian/rules
> @@ -6,6 +6,7 @@
> # regenerating the source code
> # the xmlstarlet fixes are taken from upstream here:
> https://github.com/gtk-rs/gir-files/blob/master/fix.sh
> execute_before_dh_auto_build:
> + cp /usr/share/gir-1.0/GObject-2.0.gir $(CURDIR)
> cp /usr/share/gir-1.0/GLib-2.0.gir $(CURDIR)
> xmlstarlet ed -L \
> -u
> '//*[@glib:error-domain="g-option-context-error-quark"]/@glib:error-domain'
> -v g-option-error-quark \
> @@ -15,9 +16,20 @@ execute_before_dh_auto_build:
> -u
> '//_:record[@name="KeyFile"]/_:method[@name="set_locale_string_list"]//_:parameter[@name="list"]/_:array/@c:type'
> -v "const gchar* const*" \
> -u
> '//_:record[@name="KeyFile"]/_:method[@name="set_string_list"]//_:parameter[@name="list"]/_:array/@c:type'
> -v "const gchar* const*" \
> GLib-2.0.gir
> - sed -i
> 's/girs_directories\s=\s\[\"\.\.\/gir-files\"\]/girs_directories=\[\".\"\]/'
> $(CURDIR)/Gir.toml
> + xmlstarlet ed -L \
> + -u
> '//_:class[@name="Object"]/_:method[@name="getv"]//_:parameter[@name="names"]/_:array/@c:type'
> -v "const gchar**" \
>
Hi Andrey,
thanks for the bug report and the patch. For me simply building
rust-glib works (with both !nocheck and without) (though I skipped
autopkgtest). Can you mabe share a full buildlog so we can compare notes
?
best,
werdahias
More information about the Pkg-rust-maintainers
mailing list