| Message ID | 20260903081916.156273-5-f_l_k@t-online.de |
|---|---|
| State | New |
| Headers | show |
| Series | [meta-gnome,1/6] glycin: add recipe | expand |
will be good to include from and to version in the commit message as well On Thu, Sep 3, 2026 at 8:19 PM Markus Volk via lists.openembedded.org <f_l_k=t-online.de@lists.openembedded.org> wrote: > > Signed-off-by: Markus Volk <f_l_k@t-online.de> > --- > ...ver-Fix-build-failure-with-libical-4.patch | 44 ++++++++++++++++++ > ...nome-shell_48.8.bb => gnome-shell_50.4.bb} | 45 ++++++++++++------- > 2 files changed, 73 insertions(+), 16 deletions(-) > create mode 100644 meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch > rename meta-gnome/recipes-gnome/gnome-shell/{gnome-shell_48.8.bb => gnome-shell_50.4.bb} (65%) > > diff --git a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch > new file mode 100644 > index 0000000000..d64cf38ccc > --- /dev/null > +++ b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch > @@ -0,0 +1,44 @@ > +From 91eaa9221b45b506d7a5d84a9ec8c204b5c8c34f Mon Sep 17 00:00:00 2001 > +From: Xi Ruoyao <xry111@xry111.site> > +Date: Fri, 8 May 2026 13:13:37 +0800 > +Subject: [PATCH] calendar-server: Fix build failure with libical 4 > + > +Fix the following build error with libical 4 due to function signature changes: > + > + error: passing argument 4 of 'get_time_from_property' from incompatible pointer type [-Wincompatible-pointer-types] > + note: expected 'ICalTime * (*)(ICalProperty *)' but argument is of type 'ICalTime * (*)(const ICalProperty *)' > + > +Link: https://github.com/libical/libical/blob/4.0/docs/MigrationGuide_to_4.md > +Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/4215> > + > +Only the gnome-shell-calendar-server.c hunk of the upstream commit is taken; > +src/calendar-server/reminder-watcher.c does not exist in the 50.x series. > + > +Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gnome-shell/-/commit/b34766f3992c7616b7816a47249fb463c053e5fa] > +--- > + src/calendar-server/gnome-shell-calendar-server.c | 8 +++++++- > + 1 file changed, 7 insertions(+), 1 deletion(-) > + > +diff --git a/src/calendar-server/gnome-shell-calendar-server.c b/src/calendar-server/gnome-shell-calendar-server.c > +index 0b2f88eb7..622c16181 100644 > +--- a/src/calendar-server/gnome-shell-calendar-server.c > ++++ b/src/calendar-server/gnome-shell-calendar-server.c > +@@ -112,11 +112,17 @@ typedef struct > + time_t end_time; > + } CalendarAppointment; > + > ++#if ICAL_CHECK_VERSION(4, 0, 0) > ++typedef ICalTime * (* GetICalPropFunc) (const ICalProperty *prop); > ++#else > ++typedef ICalTime * (* GetICalPropFunc) (ICalProperty *prop); > ++#endif > ++ > + static gboolean > + get_time_from_property (ECalClient *cal, > + ICalComponent *icomp, > + ICalPropertyKind prop_kind, > +- ICalTime * (* get_prop_func) (ICalProperty *prop), > ++ GetICalPropFunc get_prop_func, > + ICalTimezone *default_zone, > + ICalTime **out_itt, > + ICalTimezone **out_timezone) > diff --git a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_48.8.bb b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_50.4.bb > similarity index 65% > rename from meta-gnome/recipes-gnome/gnome-shell/gnome-shell_48.8.bb > rename to meta-gnome/recipes-gnome/gnome-shell/gnome-shell_50.4.bb > index e8b1bd6d0c..f39d72532e 100644 > --- a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_48.8.bb > +++ b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_50.4.bb > @@ -2,48 +2,58 @@ SUMMARY = "GNOME Shell is the graphical shell of the GNOME desktop environment" > LICENSE = "GPL-2.0-only" > LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" > > - > DEPENDS = " \ > libxml2-native \ > - gtk4 \ > - mutter \ > + at-spi2-core \ > evolution-data-server \ > gcr \ > - geocode-glib \ > + gdk-pixbuf \ > gjs \ > gnome-autoar \ > gnome-desktop \ > - gnome-control-center \ > - polkit \ > - pipewire \ > - libsoup-3.0 \ > - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', 'startup-notification', d)} \ > - ibus \ > gsettings-desktop-schemas \ > + gtk4 \ > + libsoup-3.0 \ > + libxml2 \ > + mutter \ > + pango \ > + polkit \ > " > > inherit gnomebase gsettings gettext gobject-introspection gtk-icon-cache features_check bash-completion > > -REQUIRED_DISTRO_FEATURES = "polkit systemd pam" > +REQUIRED_DISTRO_FEATURES = "polkit systemd pam wayland" > > GTKIC_VERSION = "4" > -GTKDOC_MESON_OPTION = "gtk_doc" > GIR_MESON_OPTION = "" > > # gobject-introspection is mandatory and cannot be configured > REQUIRED_DISTRO_FEATURES += "gobject-introspection-data" > > SRC_URI += "file://0001-shell-app-usage.c-only-include-x11-headers-if-HAVE_X.patch" > -SRC_URI[archive.sha256sum] = "cb9b7d86cf362530e648e68caaf109a32af4e832874a26791ca8789773efd233" > - > -PACKAGECONFIG ??= "bluetooth nm ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" > +SRC_URI += "file://0002-calendar-server-Fix-build-failure-with-libical-4.patch" > +SRC_URI[archive.sha256sum] = "c531939539db316a41aef23670370abd1330d3254f84bcb0f9f4dae5d6e362cf" > + > +PACKAGECONFIG ??= " \ > + camera-monitor \ > + extensions-tool \ > + nm \ > + portal-helper \ > + bluetooth \ > + ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \ > +" > PACKAGECONFIG[bluetooth] = ",,gnome-bluetooth" > -PACKAGECONFIG[nm] = "-Dnetworkmanager=true, -Dnetworkmanager=false,networkmanager libsecret,networkmanager" > +PACKAGECONFIG[camera-monitor] = "-Dcamera_monitor=true, -Dcamera_monitor=false, pipewire" > +PACKAGECONFIG[extensions-app] = "-Dextensions_app=true, -Dextensions_app=false" > +PACKAGECONFIG[extensions-tool] = "-Dextensions_tool=true, -Dextensions_tool=false, gnome-autoar json-glib libsoup-3.0" > +PACKAGECONFIG[nm] = "-Dnetworkmanager=true, -Dnetworkmanager=false, networkmanager libsecret, networkmanager" > +PACKAGECONFIG[portal-helper] = "-Dportal_helper=true, -Dportal_helper=false" > PACKAGECONFIG[systemd] = "-Dsystemd=true, -Dsystemd=false, systemd" > > EXTRA_OEMESON += " \ > -Dtests=false \ > -Dman=false \ > + -Dgtk_doc=false \ > --cross-file=${WORKDIR}/meson-${PN}.cross \ > " > > @@ -88,6 +98,9 @@ RDEPENDS:${PN} += " \ > librsvg-gtk \ > " > > +# The extensions app is a GJS application and pulls libadwaita at runtime only. > +RDEPENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'extensions-app', 'libadwaita', '', d)}" > + > PACKAGES =+ "${PN}-tools ${PN}-gsettings" > FILES:${PN}-tools = "${bindir}/*-tool" > RDEPENDS:${PN}-tools = "python3-core" > -- > 2.55.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#129707): https://lists.openembedded.org/g/openembedded-devel/message/129707 > Mute This Topic: https://lists.openembedded.org/mt/121065948/3619737 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [ankur.tyagi85@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
diff --git a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch new file mode 100644 index 0000000000..d64cf38ccc --- /dev/null +++ b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch @@ -0,0 +1,44 @@ +From 91eaa9221b45b506d7a5d84a9ec8c204b5c8c34f Mon Sep 17 00:00:00 2001 +From: Xi Ruoyao <xry111@xry111.site> +Date: Fri, 8 May 2026 13:13:37 +0800 +Subject: [PATCH] calendar-server: Fix build failure with libical 4 + +Fix the following build error with libical 4 due to function signature changes: + + error: passing argument 4 of 'get_time_from_property' from incompatible pointer type [-Wincompatible-pointer-types] + note: expected 'ICalTime * (*)(ICalProperty *)' but argument is of type 'ICalTime * (*)(const ICalProperty *)' + +Link: https://github.com/libical/libical/blob/4.0/docs/MigrationGuide_to_4.md +Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/4215> + +Only the gnome-shell-calendar-server.c hunk of the upstream commit is taken; +src/calendar-server/reminder-watcher.c does not exist in the 50.x series. + +Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gnome-shell/-/commit/b34766f3992c7616b7816a47249fb463c053e5fa] +--- + src/calendar-server/gnome-shell-calendar-server.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/src/calendar-server/gnome-shell-calendar-server.c b/src/calendar-server/gnome-shell-calendar-server.c +index 0b2f88eb7..622c16181 100644 +--- a/src/calendar-server/gnome-shell-calendar-server.c ++++ b/src/calendar-server/gnome-shell-calendar-server.c +@@ -112,11 +112,17 @@ typedef struct + time_t end_time; + } CalendarAppointment; + ++#if ICAL_CHECK_VERSION(4, 0, 0) ++typedef ICalTime * (* GetICalPropFunc) (const ICalProperty *prop); ++#else ++typedef ICalTime * (* GetICalPropFunc) (ICalProperty *prop); ++#endif ++ + static gboolean + get_time_from_property (ECalClient *cal, + ICalComponent *icomp, + ICalPropertyKind prop_kind, +- ICalTime * (* get_prop_func) (ICalProperty *prop), ++ GetICalPropFunc get_prop_func, + ICalTimezone *default_zone, + ICalTime **out_itt, + ICalTimezone **out_timezone) diff --git a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_48.8.bb b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_50.4.bb similarity index 65% rename from meta-gnome/recipes-gnome/gnome-shell/gnome-shell_48.8.bb rename to meta-gnome/recipes-gnome/gnome-shell/gnome-shell_50.4.bb index e8b1bd6d0c..f39d72532e 100644 --- a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_48.8.bb +++ b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_50.4.bb @@ -2,48 +2,58 @@ SUMMARY = "GNOME Shell is the graphical shell of the GNOME desktop environment" LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" - DEPENDS = " \ libxml2-native \ - gtk4 \ - mutter \ + at-spi2-core \ evolution-data-server \ gcr \ - geocode-glib \ + gdk-pixbuf \ gjs \ gnome-autoar \ gnome-desktop \ - gnome-control-center \ - polkit \ - pipewire \ - libsoup-3.0 \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', 'startup-notification', d)} \ - ibus \ gsettings-desktop-schemas \ + gtk4 \ + libsoup-3.0 \ + libxml2 \ + mutter \ + pango \ + polkit \ " inherit gnomebase gsettings gettext gobject-introspection gtk-icon-cache features_check bash-completion -REQUIRED_DISTRO_FEATURES = "polkit systemd pam" +REQUIRED_DISTRO_FEATURES = "polkit systemd pam wayland" GTKIC_VERSION = "4" -GTKDOC_MESON_OPTION = "gtk_doc" GIR_MESON_OPTION = "" # gobject-introspection is mandatory and cannot be configured REQUIRED_DISTRO_FEATURES += "gobject-introspection-data" SRC_URI += "file://0001-shell-app-usage.c-only-include-x11-headers-if-HAVE_X.patch" -SRC_URI[archive.sha256sum] = "cb9b7d86cf362530e648e68caaf109a32af4e832874a26791ca8789773efd233" - -PACKAGECONFIG ??= "bluetooth nm ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" +SRC_URI += "file://0002-calendar-server-Fix-build-failure-with-libical-4.patch" +SRC_URI[archive.sha256sum] = "c531939539db316a41aef23670370abd1330d3254f84bcb0f9f4dae5d6e362cf" + +PACKAGECONFIG ??= " \ + camera-monitor \ + extensions-tool \ + nm \ + portal-helper \ + bluetooth \ + ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \ +" PACKAGECONFIG[bluetooth] = ",,gnome-bluetooth" -PACKAGECONFIG[nm] = "-Dnetworkmanager=true, -Dnetworkmanager=false,networkmanager libsecret,networkmanager" +PACKAGECONFIG[camera-monitor] = "-Dcamera_monitor=true, -Dcamera_monitor=false, pipewire" +PACKAGECONFIG[extensions-app] = "-Dextensions_app=true, -Dextensions_app=false" +PACKAGECONFIG[extensions-tool] = "-Dextensions_tool=true, -Dextensions_tool=false, gnome-autoar json-glib libsoup-3.0" +PACKAGECONFIG[nm] = "-Dnetworkmanager=true, -Dnetworkmanager=false, networkmanager libsecret, networkmanager" +PACKAGECONFIG[portal-helper] = "-Dportal_helper=true, -Dportal_helper=false" PACKAGECONFIG[systemd] = "-Dsystemd=true, -Dsystemd=false, systemd" EXTRA_OEMESON += " \ -Dtests=false \ -Dman=false \ + -Dgtk_doc=false \ --cross-file=${WORKDIR}/meson-${PN}.cross \ " @@ -88,6 +98,9 @@ RDEPENDS:${PN} += " \ librsvg-gtk \ " +# The extensions app is a GJS application and pulls libadwaita at runtime only. +RDEPENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'extensions-app', 'libadwaita', '', d)}" + PACKAGES =+ "${PN}-tools ${PN}-gsettings" FILES:${PN}-tools = "${bindir}/*-tool" RDEPENDS:${PN}-tools = "python3-core"
Signed-off-by: Markus Volk <f_l_k@t-online.de> --- ...ver-Fix-build-failure-with-libical-4.patch | 44 ++++++++++++++++++ ...nome-shell_48.8.bb => gnome-shell_50.4.bb} | 45 ++++++++++++------- 2 files changed, 73 insertions(+), 16 deletions(-) create mode 100644 meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch rename meta-gnome/recipes-gnome/gnome-shell/{gnome-shell_48.8.bb => gnome-shell_50.4.bb} (65%)