diff mbox series

[v4] package/libqmi: bump to version 1.30.0

Message ID 20210826140258.8435-1-yegorslists@googlemail.com
State Accepted
Headers show
Series [v4] package/libqmi: bump to version 1.30.0 | expand

Commit Message

Voss, Samuel M Collins via buildroot Aug. 26, 2021, 2:02 p.m. UTC
From: Yegor Yefremov <yegorslists@googlemail.com>

This release introduces meson build system support.

As meson files are only available in git, switch the location to
https://gitlab.freedesktop.org.

Add support for bash-completion.

Add an upstream patch fixing the compilation without gobject-intorspection.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
---
Changes v1 -> v2:
  - add a patch fixing the compilation without gobject-intorspection (Aleksander Morgado)
Changes v2 -> v3:
  - rebase against next branch (Thomas Petazzoni)
Changes v3 -> v4:
  - remove comments about the build fixing in the commit log (Thomas Petazzoni)

 ...build-meson-fix-introspection-option.patch | 33 +++++++++++++++++
 package/libqmi/libqmi.hash                    |  2 +-
 package/libqmi/libqmi.mk                      | 37 ++++++++++++-------
 3 files changed, 58 insertions(+), 14 deletions(-)
 create mode 100644 package/libqmi/0001-build-meson-fix-introspection-option.patch

Comments

Arnout Vandecappelle Aug. 28, 2021, 4:04 p.m. UTC | #1
On 26/08/2021 16:02, yegorslists--- via buildroot wrote:
> From: Yegor Yefremov <yegorslists@googlemail.com>
> 
> This release introduces meson build system support.
> 
> As meson files are only available in git, switch the location to
> https://gitlab.freedesktop.org.
> 
> Add support for bash-completion.
> 
> Add an upstream patch fixing the compilation without gobject-intorspection.
> 
> Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>

 Applied to next, thanks.

 Regards,
 Arnout


> ---
> Changes v1 -> v2:
>   - add a patch fixing the compilation without gobject-intorspection (Aleksander Morgado)
> Changes v2 -> v3:
>   - rebase against next branch (Thomas Petazzoni)
> Changes v3 -> v4:
>   - remove comments about the build fixing in the commit log (Thomas Petazzoni)
> 
>  ...build-meson-fix-introspection-option.patch | 33 +++++++++++++++++
>  package/libqmi/libqmi.hash                    |  2 +-
>  package/libqmi/libqmi.mk                      | 37 ++++++++++++-------
>  3 files changed, 58 insertions(+), 14 deletions(-)
>  create mode 100644 package/libqmi/0001-build-meson-fix-introspection-option.patch
> 
> diff --git a/package/libqmi/0001-build-meson-fix-introspection-option.patch b/package/libqmi/0001-build-meson-fix-introspection-option.patch
> new file mode 100644
> index 0000000000..0528868025
> --- /dev/null
> +++ b/package/libqmi/0001-build-meson-fix-introspection-option.patch
> @@ -0,0 +1,33 @@
> +From bfb066419f288764edbade1e27e93a5dda59a5f4 Mon Sep 17 00:00:00 2001
> +From: Aleksander Morgado <aleksander@aleksander.es>
> +Date: Fri, 6 Aug 2021 10:32:22 +0200
> +Subject: [PATCH] build,meson: fix introspection option
> +
> +Using -Dintrospection=false would actually not disable it. There is no
> +longer an "auto" option for the introspection support, it will be
> +either enabled or disabled depending on what the user asks
> +for (default enabled).
> +
> +Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
> +---
> + meson.build | 5 ++++-
> + 1 file changed, 4 insertions(+), 1 deletion(-)
> +
> +diff --git a/meson.build b/meson.build
> +index b25bca57..d28e5601 100644
> +--- a/meson.build
> ++++ b/meson.build
> +@@ -218,7 +218,10 @@ version_conf.set10('QMI_QRTR_SUPPORTED', enable_qrtr)
> + version_conf.set10('QMI_RMNET_SUPPORTED', enable_rmnet)
> +
> + # introspection support
> +-enable_gir = dependency('gobject-introspection-1.0', version: '>= 0.9.6', required: get_option('introspection')).found()
> ++enable_gir = get_option('introspection')
> ++if enable_gir
> ++  dependency('gobject-introspection-1.0', version: '>= 0.9.6')
> ++endif
> +
> + random_number = qmi_minor_version + meson.version().split('.').get(1).to_int()
> +
> +--
> +2.17.0
> diff --git a/package/libqmi/libqmi.hash b/package/libqmi/libqmi.hash
> index 0bfc63f4a4..0373bb4e75 100644
> --- a/package/libqmi/libqmi.hash
> +++ b/package/libqmi/libqmi.hash
> @@ -1,4 +1,4 @@
>  # Locally computed:
>  sha256  8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  COPYING
>  sha256  dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551  COPYING.LIB
> -sha256  cbb890893de1dee06ea5ebdac2d22f0469314a6f93f15f61f2f1206a1c9ae5fd  libqmi-1.28.6.tar.xz
> +sha256  c0421684c12697c448077dd5c0a66c6f745deab3558af578e3f10307c8a0c564  libqmi-1.30.0.tar.gz
> diff --git a/package/libqmi/libqmi.mk b/package/libqmi/libqmi.mk
> index 35a41e5bd0..05fd3ae9af 100644
> --- a/package/libqmi/libqmi.mk
> +++ b/package/libqmi/libqmi.mk
> @@ -4,9 +4,8 @@
>  #
>  ################################################################################
>  
> -LIBQMI_VERSION = 1.28.6
> -LIBQMI_SITE = http://www.freedesktop.org/software/libqmi
> -LIBQMI_SOURCE = libqmi-$(LIBQMI_VERSION).tar.xz
> +LIBQMI_VERSION = 1.30.0
> +LIBQMI_SITE = https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/archive/$(LIBQMI_VERSION)
>  LIBQMI_LICENSE = LGPL-2.0+ (library), GPL-2.0+ (programs)
>  LIBQMI_LICENSE_FILES = COPYING COPYING.LIB
>  LIBQMI_CPE_ID_VENDOR = libqmi_project
> @@ -14,40 +13,52 @@ LIBQMI_INSTALL_STAGING = YES
>  
>  LIBQMI_DEPENDENCIES = libglib2
>  
> -LIBQMI_CONF_OPTS = --disable-Werror
> +ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
> +LIBQMI_DEPENDENCIES += gobject-introspection
> +LIBQMI_CONF_OPTS += -Dintrospection=true
> +else
> +LIBQMI_CONF_OPTS += -Dintrospection=false
> +endif
>  
>  # if libgudev available, request udev support for a better
>  # qmi-firmware-update experience
>  ifeq ($(BR2_PACKAGE_LIBGUDEV),y)
>  LIBQMI_DEPENDENCIES += libgudev
> -LIBQMI_CONF_OPTS += --with-udev
> +LIBQMI_CONF_OPTS += -Dudev=true
>  else
> -LIBQMI_CONF_OPTS += --without-udev
> +LIBQMI_CONF_OPTS += -Dudev=false
>  endif
>  
>  # if libmbim available, request QMI-over-MBIM support
>  ifeq ($(BR2_PACKAGE_LIBMBIM),y)
>  LIBQMI_DEPENDENCIES += libmbim
> -LIBQMI_CONF_OPTS += --enable-mbim-qmux
> +LIBQMI_CONF_OPTS += -Dmbim_qmux=true
>  else
> -LIBQMI_CONF_OPTS += --disable-mbim-qmux
> +LIBQMI_CONF_OPTS += -Dmbim_qmux=false
>  endif
>  
>  # if libqrtr-glib available, enable support for QMI over QRTR
>  ifeq ($(BR2_PACKAGE_LIBQRTR_GLIB),y)
>  LIBQMI_DEPENDENCIES += libqrtr-glib
> -LIBQMI_CONF_OPTS += --enable-qrtr
> +LIBQMI_CONF_OPTS += -Dqrtr=true
>  else
> -LIBQMI_CONF_OPTS += --disable-qrtr
> +LIBQMI_CONF_OPTS += -Dqrtr=false
>  endif
>  
>  # if ModemManager available, enable MM runtime check in
>  # qmi-firmware-update (note that we don't need to build-depend on
>  # anything else)
>  ifeq ($(BR2_PACKAGE_MODEM_MANAGER),y)
> -LIBQMI_CONF_OPTS += --enable-mm-runtime-check
> +LIBQMI_CONF_OPTS += -Dmm_runtime_check=true
> +else
> +LIBQMI_CONF_OPTS += -Dmm_runtime_check=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_BASH_COMPLETION),y)
> +LIBQMI_DEPENDENCIES += bash-completion
> +LIBQMI_CONF_OPTS += -Dbash_completion=true
>  else
> -LIBQMI_CONF_OPTS += --disable-mm-runtime-check
> +LIBQMI_CONF_OPTS += -Dbash_completion=false
>  endif
>  
> -$(eval $(autotools-package))
> +$(eval $(meson-package))
>
diff mbox series

Patch

diff --git a/package/libqmi/0001-build-meson-fix-introspection-option.patch b/package/libqmi/0001-build-meson-fix-introspection-option.patch
new file mode 100644
index 0000000000..0528868025
--- /dev/null
+++ b/package/libqmi/0001-build-meson-fix-introspection-option.patch
@@ -0,0 +1,33 @@ 
+From bfb066419f288764edbade1e27e93a5dda59a5f4 Mon Sep 17 00:00:00 2001
+From: Aleksander Morgado <aleksander@aleksander.es>
+Date: Fri, 6 Aug 2021 10:32:22 +0200
+Subject: [PATCH] build,meson: fix introspection option
+
+Using -Dintrospection=false would actually not disable it. There is no
+longer an "auto" option for the introspection support, it will be
+either enabled or disabled depending on what the user asks
+for (default enabled).
+
+Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
+---
+ meson.build | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index b25bca57..d28e5601 100644
+--- a/meson.build
++++ b/meson.build
+@@ -218,7 +218,10 @@ version_conf.set10('QMI_QRTR_SUPPORTED', enable_qrtr)
+ version_conf.set10('QMI_RMNET_SUPPORTED', enable_rmnet)
+
+ # introspection support
+-enable_gir = dependency('gobject-introspection-1.0', version: '>= 0.9.6', required: get_option('introspection')).found()
++enable_gir = get_option('introspection')
++if enable_gir
++  dependency('gobject-introspection-1.0', version: '>= 0.9.6')
++endif
+
+ random_number = qmi_minor_version + meson.version().split('.').get(1).to_int()
+
+--
+2.17.0
diff --git a/package/libqmi/libqmi.hash b/package/libqmi/libqmi.hash
index 0bfc63f4a4..0373bb4e75 100644
--- a/package/libqmi/libqmi.hash
+++ b/package/libqmi/libqmi.hash
@@ -1,4 +1,4 @@ 
 # Locally computed:
 sha256  8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  COPYING
 sha256  dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551  COPYING.LIB
-sha256  cbb890893de1dee06ea5ebdac2d22f0469314a6f93f15f61f2f1206a1c9ae5fd  libqmi-1.28.6.tar.xz
+sha256  c0421684c12697c448077dd5c0a66c6f745deab3558af578e3f10307c8a0c564  libqmi-1.30.0.tar.gz
diff --git a/package/libqmi/libqmi.mk b/package/libqmi/libqmi.mk
index 35a41e5bd0..05fd3ae9af 100644
--- a/package/libqmi/libqmi.mk
+++ b/package/libqmi/libqmi.mk
@@ -4,9 +4,8 @@ 
 #
 ################################################################################
 
-LIBQMI_VERSION = 1.28.6
-LIBQMI_SITE = http://www.freedesktop.org/software/libqmi
-LIBQMI_SOURCE = libqmi-$(LIBQMI_VERSION).tar.xz
+LIBQMI_VERSION = 1.30.0
+LIBQMI_SITE = https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/archive/$(LIBQMI_VERSION)
 LIBQMI_LICENSE = LGPL-2.0+ (library), GPL-2.0+ (programs)
 LIBQMI_LICENSE_FILES = COPYING COPYING.LIB
 LIBQMI_CPE_ID_VENDOR = libqmi_project
@@ -14,40 +13,52 @@  LIBQMI_INSTALL_STAGING = YES
 
 LIBQMI_DEPENDENCIES = libglib2
 
-LIBQMI_CONF_OPTS = --disable-Werror
+ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
+LIBQMI_DEPENDENCIES += gobject-introspection
+LIBQMI_CONF_OPTS += -Dintrospection=true
+else
+LIBQMI_CONF_OPTS += -Dintrospection=false
+endif
 
 # if libgudev available, request udev support for a better
 # qmi-firmware-update experience
 ifeq ($(BR2_PACKAGE_LIBGUDEV),y)
 LIBQMI_DEPENDENCIES += libgudev
-LIBQMI_CONF_OPTS += --with-udev
+LIBQMI_CONF_OPTS += -Dudev=true
 else
-LIBQMI_CONF_OPTS += --without-udev
+LIBQMI_CONF_OPTS += -Dudev=false
 endif
 
 # if libmbim available, request QMI-over-MBIM support
 ifeq ($(BR2_PACKAGE_LIBMBIM),y)
 LIBQMI_DEPENDENCIES += libmbim
-LIBQMI_CONF_OPTS += --enable-mbim-qmux
+LIBQMI_CONF_OPTS += -Dmbim_qmux=true
 else
-LIBQMI_CONF_OPTS += --disable-mbim-qmux
+LIBQMI_CONF_OPTS += -Dmbim_qmux=false
 endif
 
 # if libqrtr-glib available, enable support for QMI over QRTR
 ifeq ($(BR2_PACKAGE_LIBQRTR_GLIB),y)
 LIBQMI_DEPENDENCIES += libqrtr-glib
-LIBQMI_CONF_OPTS += --enable-qrtr
+LIBQMI_CONF_OPTS += -Dqrtr=true
 else
-LIBQMI_CONF_OPTS += --disable-qrtr
+LIBQMI_CONF_OPTS += -Dqrtr=false
 endif
 
 # if ModemManager available, enable MM runtime check in
 # qmi-firmware-update (note that we don't need to build-depend on
 # anything else)
 ifeq ($(BR2_PACKAGE_MODEM_MANAGER),y)
-LIBQMI_CONF_OPTS += --enable-mm-runtime-check
+LIBQMI_CONF_OPTS += -Dmm_runtime_check=true
+else
+LIBQMI_CONF_OPTS += -Dmm_runtime_check=false
+endif
+
+ifeq ($(BR2_PACKAGE_BASH_COMPLETION),y)
+LIBQMI_DEPENDENCIES += bash-completion
+LIBQMI_CONF_OPTS += -Dbash_completion=true
 else
-LIBQMI_CONF_OPTS += --disable-mm-runtime-check
+LIBQMI_CONF_OPTS += -Dbash_completion=false
 endif
 
-$(eval $(autotools-package))
+$(eval $(meson-package))