Skip to contentSkip to conversation

modem-manager: update dependencies

PATCH New Aleksander Morgado 2 participants 10 messages Aug 25, 2017 – Aug 30, 2017

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 modem-manager: update dependencies

The dbus-glib package isn't a dependency since ModemManager 1.0, which is based on libglib2's GDBus implementation.

Also, explicitly set libglib2 as dependency, which currently was being implicitly included by libgudev. The next major ModemManager release will have udev/libgudev as optional packages, while libglib2 is definitely not going to be ever optional.

---
 package/modem-manager/modem-manager.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/modem-manager/modem-manager.mk +1 -1
index 1eea355f5..c2999dc2e 100644
@@ -9,7 +9,7 @@ MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz
 MODEM_MANAGER_SITE = http://www.freedesktop.org/software/ModemManager
 MODEM_MANAGER_LICENSE = GPL-2.0+ (programs, plugins), LGPL-2.0+ (libmm-glib)
 MODEM_MANAGER_LICENSE_FILES = COPYING
-MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib host-intltool libgudev
+MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev host-intltool libglib2 libgudev
 MODEM_MANAGER_INSTALL_STAGING = YES
 
 ifeq ($(BR2_PACKAGE_MODEM_MANAGER_LIBQMI),y)
Signature · 1 line
2.14.1
#1 lore raw

PATCH 1/1 modem-manager: update dependencies

Hello,

Thanks for your contribution!

Quoted 2 lines · Aleksander Morgado

The dbus-glib package isn't a dependency since ModemManager 1.0, which is based on libglib2's GDBus implementation.

And libglib2 GDBus implementation is built unconditionally, regardless of whether the DBus package is enabled or not ?

Quoted 15 lines

Also, explicitly set libglib2 as dependency, which currently was being implicitly included by libgudev. The next major ModemManager release will have udev/libgudev as optional packages, while libglib2 is definitely not going to be ever optional.

---
 package/modem-manager/modem-manager.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/modem-manager/modem-manager.mk +0 -0
index 1eea355f5..c2999dc2e 100644

package/modem-manager/modem-manager.mk MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz · line 12

Quoted 5 lines
package/modem-manager/modem-manager.mk +1 -1
@@ -9,7 +9,7 @@ MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz
 MODEM_MANAGER_SITE = http://www.freedesktop.org/software/ModemManager
 MODEM_MANAGER_LICENSE = GPL-2.0+ (programs, plugins), LGPL-2.0+ (libmm-glib)
 MODEM_MANAGER_LICENSE_FILES = COPYING
-MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib host-intltool libgudev
+MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev host-intltool libglib2 libgudev

Then you also need to:

1. Remove select BR2_PACKAGE_DBUS_GLIB from Config.in

2. add select BR2_PACKAGE_LIBGLIB2 in Config.in

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#2 lore raw

PATCH 1/1 modem-manager: update dependencies

Quoted 11 lines · Thomas Petazzoni

Hello,

Thanks for your contribution!

Quoted 2 lines · Aleksander Morgado

The dbus-glib package isn't a dependency since ModemManager 1.0, which is based on libglib2's GDBus implementation.

And libglib2 GDBus implementation is built unconditionally, regardless of whether the DBus package is enabled or not ?

Yes; although dbus should probably be a mandatory dependency when ModemManager is selected then (same as udev+libgudev are)

Quoted 23 lines
Quoted 15 lines

Also, explicitly set libglib2 as dependency, which currently was being implicitly included by libgudev. The next major ModemManager release will have udev/libgudev as optional packages, while libglib2 is definitely not going to be ever optional.

---
 package/modem-manager/modem-manager.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/modem-manager/modem-manager.mk +0 -0
index 1eea355f5..c2999dc2e 100644

package/modem-manager/modem-manager.mk MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz · line 12

Quoted 5 lines
package/modem-manager/modem-manager.mk +1 -1
@@ -9,7 +9,7 @@ MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz
 MODEM_MANAGER_SITE = http://www.freedesktop.org/software/ModemManager
 MODEM_MANAGER_LICENSE = GPL-2.0+ (programs, plugins), LGPL-2.0+ (libmm-glib)
 MODEM_MANAGER_LICENSE_FILES = COPYING
-MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib host-intltool libgudev
+MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev host-intltool libglib2 libgudev

Then you also need to:

Quoted 4 lines

1. Remove select BR2_PACKAGE_DBUS_GLIB from Config.in

2. add select BR2_PACKAGE_LIBGLIB2 in Config.in

Ah! will update those as well.

Signature · 2 lines
Aleksander
https://aleksander.es
#3 lore raw

PATCH v2 1/1 modem-manager: update dependencies

In reply to Aleksander Morgado

The dbus-glib package isn't a dependency since ModemManager 1.0, which is based on libglib2's GDBus implementation.

Also, explicitly set libglib2 as dependency, which currently was being implicitly included by libgudev. The next major ModemManager release will have udev/libgudev as optional packages, while libglib2 is definitely not going to be ever optional.

Finally, also set dbus as a dependency, as ModemManager won't work without a system DBus available.

---
 package/modem-manager/Config.in        | 2 +-
 package/modem-manager/modem-manager.mk | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/modem-manager/Config.in +1 -1
index aa7ed1e2f..3b32acba3 100644
@@ -5,7 +5,7 @@ config BR2_PACKAGE_MODEM_MANAGER
 	depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, libglib2
 	depends on BR2_USE_MMU # dbus
 	select BR2_PACKAGE_DBUS
-	select BR2_PACKAGE_DBUS_GLIB
+	select BR2_PACKAGE_LIBGLIB2
 	select BR2_PACKAGE_LIBGUDEV
 	help
 	  ModemManager is a DBus-activated daemon which controls mobile
package/modem-manager/modem-manager.mk +1 -1
index 6459f8785..ce6d5dfc1 100644
@@ -9,7 +9,7 @@ MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz
 MODEM_MANAGER_SITE = http://www.freedesktop.org/software/ModemManager
 MODEM_MANAGER_LICENSE = GPL-2.0+ (programs, plugins), LGPL-2.0+ (libmm-glib)
 MODEM_MANAGER_LICENSE_FILES = COPYING
-MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib host-intltool libgudev
+MODEM_MANAGER_DEPENDENCIES = host-pkgconf host-intltool dbus udev libglib2 libgudev
 MODEM_MANAGER_INSTALL_STAGING = YES
 
 ifeq ($(BR2_PACKAGE_MODEM_MANAGER_LIBQMI),y)

--
2.14.1

#4 lore raw

PATCH v2 1/1 modem-manager: update dependencies

Hello,

Quoted 10 lines · Aleksander Morgado

The dbus-glib package isn't a dependency since ModemManager 1.0, which is based on libglib2's GDBus implementation.

Also, explicitly set libglib2 as dependency, which currently was being implicitly included by libgudev. The next major ModemManager release will have udev/libgudev as optional packages, while libglib2 is definitely not going to be ever optional.

Finally, also set dbus as a dependency, as ModemManager won't work without a system DBus available.

I was about to apply this, but this last part seems wrong: if DBus is only needed at runtime (and not build time), then having the select BR2_PACKAGE_DBUS in Config.in is enough: it ensures DBus will be built, it's just that you don't have the guarantee it will be built before modem-manager.

So:

- If DBus is only a runtime dependency, don't add dbus do MODEM_MANAGER_DEPENDENCIES, and instead add a comment above select BR2_PACKAGE_DBUS that says "# runtime dependency"

- If DBus is a build-time dependency, then your change is correct, but your commit log is unclear.

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#5 lore raw

PATCH v2 1/1 modem-manager: update dependencies

Quoted 18 lines · Aleksander Morgado
Quoted 10 lines

The dbus-glib package isn't a dependency since ModemManager 1.0, which is based on libglib2's GDBus implementation.

Also, explicitly set libglib2 as dependency, which currently was being implicitly included by libgudev. The next major ModemManager release will have udev/libgudev as optional packages, while libglib2 is definitely not going to be ever optional.

Finally, also set dbus as a dependency, as ModemManager won't work without a system DBus available.

I was about to apply this, but this last part seems wrong: if DBus is only needed at runtime (and not build time), then having the select BR2_PACKAGE_DBUS in Config.in is enough: it ensures DBus will be built, it's just that you don't have the guarantee it will be built before modem-manager.

Quoted 9 lines

So:

- If DBus is only a runtime dependency, don't add dbus do MODEM_MANAGER_DEPENDENCIES, and instead add a comment above select BR2_PACKAGE_DBUS that says "# runtime dependency"

- If DBus is a build-time dependency, then your change is correct, but your commit log is unclear.

Understood; yes DBus is only runtime dependency, so the Config.in change would be enough. I guess the same happens with udev then? MM doesn't build-depend on udev, only on gudev (although it seems that gudev itself depends on udev).

Signature · 2 lines
Aleksander
https://aleksander.es
#6 lore raw

PATCH v2 1/1 modem-manager: update dependencies

Hello,

Quoted 2 lines · Aleksander Morgado

Understood; yes DBus is only runtime dependency, so the Config.in change would be enough.

Well, the package already has "select BR2_PACKAGE_DBUS", so that shouldn't require any change.

Quoted 3 lines

I guess the same happens with udev then? MM
doesn't build-depend on udev, only on gudev (although it seems that gudev itself depends on udev).

Then yes, having "udev" in MODEM_MANAGER_DEPENDENCIES is useless.

Best regards,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#7 lore raw

PATCH v2 1/1 modem-manager: update dependencies

Quoted 6 lines
Quoted 2 lines

Understood; yes DBus is only runtime dependency, so the Config.in change would be enough.

Well, the package already has "select BR2_PACKAGE_DBUS", so that shouldn't require any change.

Yeah, I meant the (already existing) Config.in entry would be enough, no change expected there, sorry for the confusion.

Quoted 6 lines
Quoted 3 lines

I guess the same happens with udev then? MM
doesn't build-depend on udev, only on gudev (although it seems that gudev itself depends on udev).

Then yes, having "udev" in MODEM_MANAGER_DEPENDENCIES is useless.

Will update the patch and resend, thanks for the clarifications.

Signature · 2 lines
Aleksander
https://aleksander.es
#8 lore raw

PATCH v3 1/1 modem-manager: update dependencies

In reply to Aleksander Morgado

These are the changes implemented:

* Remove dbus-glib as a dependency, as it isn't required since ModemManager 1.0, which is based on libglib2's GDBus implementation.

* Remove udev as a dependency, as the ModemManager build only needs the libgudev package.

* Explicitly set libglib2 as dependency, which currently was being implicitly included by libgudev. The next major ModemManager release will have udev/libgudev as optional packages, while libglib2 is definitely not going to be ever optional.

* Add a comment explaining that dbus is only a runtime dependency.

---
 package/modem-manager/Config.in        | 4 ++--
 package/modem-manager/modem-manager.mk | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
package/modem-manager/Config.in +2 -2
index aa7ed1e2f..8e995b417 100644
@@ -4,8 +4,8 @@ config BR2_PACKAGE_MODEM_MANAGER
 	depends on BR2_USE_WCHAR # libglib2 and gnutls
 	depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, libglib2
 	depends on BR2_USE_MMU # dbus
-	select BR2_PACKAGE_DBUS
-	select BR2_PACKAGE_DBUS_GLIB
+	select BR2_PACKAGE_DBUS # runtime dependency
+	select BR2_PACKAGE_LIBGLIB2
 	select BR2_PACKAGE_LIBGUDEV
 	help
 	  ModemManager is a DBus-activated daemon which controls mobile
package/modem-manager/modem-manager.mk +1 -1
index 6459f8785..fe08033c7 100644
@@ -9,7 +9,7 @@ MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz
 MODEM_MANAGER_SITE = http://www.freedesktop.org/software/ModemManager
 MODEM_MANAGER_LICENSE = GPL-2.0+ (programs, plugins), LGPL-2.0+ (libmm-glib)
 MODEM_MANAGER_LICENSE_FILES = COPYING
-MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib host-intltool libgudev
+MODEM_MANAGER_DEPENDENCIES = host-pkgconf host-intltool libglib2 libgudev
 MODEM_MANAGER_INSTALL_STAGING = YES
 
 ifeq ($(BR2_PACKAGE_MODEM_MANAGER_LIBQMI),y)

--
2.14.1

#9 lore raw

PATCH v3 1/1 modem-manager: update dependencies

Hello,

Quoted 14 lines · Aleksander Morgado

These are the changes implemented:

* Remove dbus-glib as a dependency, as it isn't required since ModemManager 1.0, which is based on libglib2's GDBus implementation.

* Remove udev as a dependency, as the ModemManager build only needs the libgudev package.

* Explicitly set libglib2 as dependency, which currently was being implicitly included by libgudev. The next major ModemManager release will have udev/libgudev as optional packages, while libglib2 is definitely not going to be ever optional.

Quoted 7 lines

* Add a comment explaining that dbus is only a runtime dependency.

---
 package/modem-manager/Config.in        | 4 ++--
 package/modem-manager/modem-manager.mk | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

Applied to next, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com