Thanks, applied as 3b21c8acabc4782a89a57bbcecace8d703508b43.

Michael

[sent from post-receive hook]

On Tue, 30 Mar 2021 20:08:05 +0200, Alexander Dahl <p...@lespocky.de> wrote:
> The patch allows build against libgudev older than version 232.
> 
> Link: 
> https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/349
> Signed-off-by: Alexander Dahl <a...@thorsis.com>
> Message-Id: <20210329054904.24342-6-p...@lespocky.de>
> Signed-off-by: Michael Olbrich <m.olbr...@pengutronix.de>
> 
> diff --git 
> a/patches/ModemManager-1.16.2/0001-kerneldevice-udev-don-t-use-autoptr-in-GUdev-types.patch
>  
> b/patches/ModemManager-1.16.2/0001-kerneldevice-udev-don-t-use-autoptr-in-GUdev-types.patch
> new file mode 100644
> index 000000000000..511b1693f7bb
> --- /dev/null
> +++ 
> b/patches/ModemManager-1.16.2/0001-kerneldevice-udev-don-t-use-autoptr-in-GUdev-types.patch
> @@ -0,0 +1,127 @@
> +From: Aleksander Morgado <aleksan...@aleksander.es>
> +Date: Tue, 23 Mar 2021 15:36:58 +0100
> +Subject: [PATCH] kerneldevice,udev: don't use autoptr in GUdev types
> +
> +The autoptr support in all GUdev types was introduced in
> +commit 272533131c6ed38479a88805, included in libgudev 232.
> +
> +In the MM 1.16 branch we depend on libgudev 147, so avoid
> +implicitly bumping the required version.
> +
> +Fixes 
> https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/349
> +---
> + src/kerneldevice/mm-kernel-device-udev.c | 30 +++++++++++++++++++++---------
> + 1 file changed, 21 insertions(+), 9 deletions(-)
> +
> +diff --git a/src/kerneldevice/mm-kernel-device-udev.c 
> b/src/kerneldevice/mm-kernel-device-udev.c
> +index f75104bd6b1c..a6bf1a71df88 100644
> +--- a/src/kerneldevice/mm-kernel-device-udev.c
> ++++ b/src/kerneldevice/mm-kernel-device-udev.c
> +@@ -81,7 +81,7 @@ static void
> + preload_contents_platform (MMKernelDeviceUdev *self,
> +                            const gchar        *platform)
> + {
> +-    g_autoptr(GUdevDevice) iter = NULL;
> ++    GUdevDevice *iter;
> + 
> +     iter = g_object_ref (self->priv->device);
> +     while (iter) {
> +@@ -102,17 +102,19 @@ preload_contents_platform (MMKernelDeviceUdev *self,
> +         g_clear_object (&iter);
> +         iter = parent;
> +     }
> ++
> ++    g_clear_object (&iter);
> + }
> + 
> + static void
> + preload_contents_pcmcia (MMKernelDeviceUdev *self)
> + {
> +-    g_autoptr(GUdevDevice) iter = NULL;
> +-    gboolean               pcmcia_subsystem_found = FALSE;
> ++    GUdevDevice *iter;
> ++    gboolean     pcmcia_subsystem_found = FALSE;
> + 
> +     iter = g_object_ref (self->priv->device);
> +     while (iter) {
> +-        g_autoptr(GUdevDevice) parent = NULL;
> ++        GUdevDevice *parent;
> + 
> +         /* Store the first driver found */
> +         if (!self->priv->driver)
> +@@ -133,18 +135,21 @@ preload_contents_pcmcia (MMKernelDeviceUdev *self)
> +             self->priv->product = udev_device_get_sysfs_attr_as_hex (iter, 
> "card_id");
> +             self->priv->physdev = g_object_ref (iter);
> +             /* stop traversing as soon as the physical device is found */
> ++            g_clear_object (&parent);
> +             break;
> +         }
> + 
> +         g_clear_object (&iter);
> +-        iter = g_steal_pointer (&parent);
> ++        iter = parent;
> +     }
> ++
> ++    g_clear_object (&iter);
> + }
> + 
> + static void
> + preload_contents_pci (MMKernelDeviceUdev *self)
> + {
> +-    g_autoptr(GUdevDevice) iter = NULL;
> ++    GUdevDevice *iter;
> + 
> +     iter = g_object_ref (self->priv->device);
> +     while (iter) {
> +@@ -170,12 +175,14 @@ preload_contents_pci (MMKernelDeviceUdev *self)
> +         g_clear_object (&iter);
> +         iter = parent;
> +     }
> ++
> ++    g_clear_object (&iter);
> + }
> + 
> + static void
> + preload_contents_usb (MMKernelDeviceUdev *self)
> + {
> +-    g_autoptr(GUdevDevice) iter = NULL;
> ++    GUdevDevice *iter;
> + 
> +     iter = g_object_ref (self->priv->device);
> +     while (iter) {
> +@@ -204,12 +211,14 @@ preload_contents_usb (MMKernelDeviceUdev *self)
> +         g_clear_object (&iter);
> +         iter = parent;
> +     }
> ++
> ++    g_clear_object (&iter);
> + }
> + 
> + static gchar *
> + find_device_bus_subsystem (MMKernelDeviceUdev *self)
> + {
> +-    g_autoptr(GUdevDevice) iter = NULL;
> ++    GUdevDevice *iter;
> + 
> +     iter = g_object_ref (self->priv->device);
> +     while (iter) {
> +@@ -224,8 +233,10 @@ find_device_bus_subsystem (MMKernelDeviceUdev *self)
> +             (g_strcmp0 (subsys, "pci") == 0)      ||
> +             (g_strcmp0 (subsys, "platform") == 0) ||
> +             (g_strcmp0 (subsys, "pnp") == 0)      ||
> +-            (g_strcmp0 (subsys, "sdio") == 0))
> ++            (g_strcmp0 (subsys, "sdio") == 0)) {
> ++            g_clear_object (&iter);
> +             return g_strdup (subsys);
> ++        }
> + 
> +         parent = g_udev_device_get_parent (iter);
> +         g_clear_object (&iter);
> +@@ -233,6 +244,7 @@ find_device_bus_subsystem (MMKernelDeviceUdev *self)
> +     }
> + 
> +     /* no more parents to check */
> ++    g_clear_object (&iter);
> +     return NULL;
> + }
> + 
> diff --git a/patches/ModemManager-1.16.2/series 
> b/patches/ModemManager-1.16.2/series
> new file mode 100644
> index 000000000000..073ee95c575b
> --- /dev/null
> +++ b/patches/ModemManager-1.16.2/series
> @@ -0,0 +1,4 @@
> +# generated by git-ptx-patches
> +#tag:base --start-number 1
> +0001-kerneldevice-udev-don-t-use-autoptr-in-GUdev-types.patch
> +# 7ee4df7afdcd7083fe59386d7e47c795  - git-ptx-patches magic
> diff --git a/rules/modemmanager.make b/rules/modemmanager.make
> index ee0f78515af3..18191583cc99 100644
> --- a/rules/modemmanager.make
> +++ b/rules/modemmanager.make
> @@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_MODEMMANAGER) += modemmanager
>  #
>  # Paths and names
>  #
> -MODEMMANAGER_VERSION := 1.14.8
> -MODEMMANAGER_MD5     := 138762a976a654d244744963d2250372
> +MODEMMANAGER_VERSION := 1.16.2
> +MODEMMANAGER_MD5     := 83c5fc0bf65b8f321532b61b5f2b0b51
>  MODEMMANAGER         := ModemManager-$(MODEMMANAGER_VERSION)
>  MODEMMANAGER_SUFFIX  := tar.xz
>  MODEMMANAGER_URL     := 
> https://www.freedesktop.org/software/ModemManager/$(MODEMMANAGER).$(MODEMMANAGER_SUFFIX)
> @@ -45,13 +45,16 @@ MODEMMANAGER_CONF_OPT     := \
>       --disable-gtk-doc-pdf \
>       --disable-nls \
>       --disable-rpath \
> +     --disable-code-coverage \
>       --disable-introspection \
>       --disable-vala \
>       --enable-all-plugins \
>       --with-gnu-ld \
> +     --without-gcov \
>       --with-dbus-sys-dir=/usr/share/dbus-1/system.d \
>       --with-udev-base-dir=/usr/lib/udev \
>       --with-systemdsystemunitdir=/usr/lib/systemd/system \
> +     --with-udev \
>       --$(call ptx/wwo, PTXCONF_INITMETHOD_SYSTEMD)-systemd-suspend-resume \
>       --$(call ptx/wwo, PTXCONF_INITMETHOD_SYSTEMD)-systemd-journal \
>       --without-polkit \

_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
To unsubscribe, send a mail with subject "unsubscribe" to 
ptxdist-requ...@pengutronix.de

Reply via email to