libqmi: new recipe for version 1.18.0
This version of libqmi is needed for newer versions of ModemManager. Remove bbappend and patch to previous version as the patch is now included in the new version. https://jira.digi.com/browse/DEL-3841 Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This commit is contained in:
parent
505eb19aa4
commit
ad122d2605
|
|
@ -0,0 +1,82 @@
|
||||||
|
From 8333cf300f6010243117aae6da4b823d9d7f30b2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Khem Raj <raj.khem@gmail.com>
|
||||||
|
Date: Thu, 20 Oct 2016 04:42:26 +0000
|
||||||
|
Subject: [PATCH] Detect clang
|
||||||
|
|
||||||
|
Check for clang compiler since we need to disable
|
||||||
|
unused-function warning for clang, at same time
|
||||||
|
pass werror when checking for compiler options if
|
||||||
|
werror is enabled so spurious options do not get
|
||||||
|
enabled. Only the ones that are supported by given
|
||||||
|
compiler are accepted.
|
||||||
|
|
||||||
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||||
|
Upstream-Status: Pending
|
||||||
|
|
||||||
|
---
|
||||||
|
m4/compiler-warnings.m4 | 29 +++++++++++++++++++++++++----
|
||||||
|
1 file changed, 25 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/m4/compiler-warnings.m4 b/m4/compiler-warnings.m4
|
||||||
|
index 5ba490c884dc..92022746487f 100644
|
||||||
|
--- a/m4/compiler-warnings.m4
|
||||||
|
+++ b/m4/compiler-warnings.m4
|
||||||
|
@@ -2,10 +2,30 @@ AC_DEFUN([LIBQMI_COMPILER_WARNINGS],
|
||||||
|
[AC_ARG_ENABLE(more-warnings,
|
||||||
|
AS_HELP_STRING([--enable-more-warnings], [Possible values: no/yes/error]),
|
||||||
|
set_more_warnings="$enableval",set_more_warnings=error)
|
||||||
|
+
|
||||||
|
+# Clang throws a lot of warnings when it does not understand a flag. Disable
|
||||||
|
+# this warning for now so other warnings are visible.
|
||||||
|
+AC_MSG_CHECKING([if compiling with clang])
|
||||||
|
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[
|
||||||
|
+#ifndef __clang__
|
||||||
|
+ not clang
|
||||||
|
+#endif
|
||||||
|
+ ]])],
|
||||||
|
+ [CLANG=yes],
|
||||||
|
+ [CLANG=no]
|
||||||
|
+)
|
||||||
|
+AC_MSG_RESULT([$CLANG])
|
||||||
|
+AS_IF([test "x$CLANG" = "xyes"], [CLANG_FLAGS=-Wno-error=unused-function])
|
||||||
|
+CFLAGS="$CFLAGS $CLANG_FLAGS"
|
||||||
|
+LDFLAGS="$LDFLAGS $CLANG_FLAGS"
|
||||||
|
+
|
||||||
|
AC_MSG_CHECKING(for more warnings)
|
||||||
|
if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
CFLAGS="-Wall -std=gnu89 $CFLAGS"
|
||||||
|
+ if test "x$set_more_warnings" = xerror; then
|
||||||
|
+ WERROR="-Werror"
|
||||||
|
+ fi
|
||||||
|
|
||||||
|
for option in -Wmissing-declarations -Wmissing-prototypes \
|
||||||
|
-Wdeclaration-after-statement -Wstrict-prototypes \
|
||||||
|
@@ -17,22 +37,23 @@ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
|
||||||
|
-Wmissing-include-dirs -Waggregate-return \
|
||||||
|
-Wformat-security -Wtype-limits; do
|
||||||
|
SAVE_CFLAGS="$CFLAGS"
|
||||||
|
- CFLAGS="$CFLAGS $option"
|
||||||
|
+ CFLAGS="$CFLAGS $option $WERROR"
|
||||||
|
AC_MSG_CHECKING([whether gcc understands $option])
|
||||||
|
AC_TRY_COMPILE([], [],
|
||||||
|
has_option=yes,
|
||||||
|
has_option=no,)
|
||||||
|
if test $has_option = no; then
|
||||||
|
CFLAGS="$SAVE_CFLAGS"
|
||||||
|
+ else
|
||||||
|
+ CFLAGS="$SAVE_CFLAGS $option"
|
||||||
|
fi
|
||||||
|
AC_MSG_RESULT($has_option)
|
||||||
|
unset has_option
|
||||||
|
unset SAVE_CFLAGS
|
||||||
|
done
|
||||||
|
+ CFLAGS="$CFLAGS $WERROR"
|
||||||
|
unset option
|
||||||
|
- if test "x$set_more_warnings" = xerror; then
|
||||||
|
- CFLAGS="$CFLAGS -Werror"
|
||||||
|
- fi
|
||||||
|
+ unset WERROR
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT(no)
|
||||||
|
fi
|
||||||
|
|
@ -1,74 +0,0 @@
|
||||||
From: Mike Engel <Mike.Engel@digi.com>
|
|
||||||
Date: Wed, 15 Mar 2017 18:20:25 +0100
|
|
||||||
Subject: [PATCH] meta-digi-dey: Added libqmi patch to DMS version miss match.
|
|
||||||
|
|
||||||
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
|
|
||||||
---
|
|
||||||
.../src/libqmi-glib/qmi-device.c | 32 +++++++++++++++++-----
|
|
||||||
1 file changed, 25 insertions(+), 7 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/libqmi-glib/qmi-device.c b/src/libqmi-glib/qmi-device.c
|
|
||||||
index 5cee156..ef636f0 100644
|
|
||||||
--- a/src/libqmi-glib/qmi-device.c
|
|
||||||
+++ b/src/libqmi-glib/qmi-device.c
|
|
||||||
@@ -485,8 +485,10 @@ check_message_supported (QmiDevice *self,
|
|
||||||
GError **error)
|
|
||||||
{
|
|
||||||
const QmiMessageCtlGetVersionInfoOutputServiceListService *info;
|
|
||||||
- guint major = 0;
|
|
||||||
- guint minor = 0;
|
|
||||||
+ guint message_major = 0;
|
|
||||||
+ guint message_minor = 0;
|
|
||||||
+ guint device_major = 0;
|
|
||||||
+ guint device_minor = 0;
|
|
||||||
|
|
||||||
/* If we didn't check supported services, just assume it is supported */
|
|
||||||
if (!self->priv->supported_services)
|
|
||||||
@@ -498,7 +500,7 @@ check_message_supported (QmiDevice *self,
|
|
||||||
|
|
||||||
/* If we cannot get in which version this message was introduced, we'll just
|
|
||||||
* assume it's supported */
|
|
||||||
- if (!qmi_message_get_version_introduced (message, &major, &minor))
|
|
||||||
+ if (!qmi_message_get_version_introduced (message, &message_major, &message_minor))
|
|
||||||
return TRUE;
|
|
||||||
|
|
||||||
/* Get version info. It MUST exist because we allowed creating a client
|
|
||||||
@@ -506,18 +508,34 @@ check_message_supported (QmiDevice *self,
|
|
||||||
info = find_service_version_info (self, qmi_message_get_service (message));
|
|
||||||
g_assert (info != NULL);
|
|
||||||
g_assert (info->service == qmi_message_get_service (message));
|
|
||||||
+ device_major = info->major_version;
|
|
||||||
+ device_minor = info->minor_version;
|
|
||||||
+
|
|
||||||
+ /* Some device firmware versions (Quectel EC21) lie about their supported
|
|
||||||
+ * DMS version, so assume a reasonable DMS version if the WDS version is
|
|
||||||
+ * high enough */
|
|
||||||
+ if (info->service == QMI_SERVICE_DMS && device_major == 1 && device_minor == 0) {
|
|
||||||
+ const QmiMessageCtlGetVersionInfoOutputServiceListService *wds;
|
|
||||||
+
|
|
||||||
+ wds = find_service_version_info (self, QMI_SERVICE_WDS);
|
|
||||||
+ g_assert (wds != NULL);
|
|
||||||
+ if (wds->major_version >= 1 && wds->minor_version >= 9) {
|
|
||||||
+ device_major = 1;
|
|
||||||
+ device_minor = 3;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
|
|
||||||
/* If the version of the message is greater than the version of the service,
|
|
||||||
* report unsupported */
|
|
||||||
- if (major > info->major_version ||
|
|
||||||
- (major == info->major_version &&
|
|
||||||
- minor > info->minor_version)) {
|
|
||||||
+ if (message_major > device_major ||
|
|
||||||
+ (message_major == device_major &&
|
|
||||||
+ message_minor > device_minor)) {
|
|
||||||
g_set_error (error,
|
|
||||||
QMI_CORE_ERROR,
|
|
||||||
QMI_CORE_ERROR_UNSUPPORTED,
|
|
||||||
"QMI service '%s' version '%u.%u' required, got version '%u.%u'",
|
|
||||||
qmi_service_get_string (qmi_message_get_service (message)),
|
|
||||||
- major, minor,
|
|
||||||
+ message_major, message_minor,
|
|
||||||
info->major_version,
|
|
||||||
info->minor_version);
|
|
||||||
return FALSE;
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
# Copyright (C) 2017 Digi International Inc.
|
|
||||||
|
|
||||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
|
|
||||||
|
|
||||||
SRC_URI += " \
|
|
||||||
file://0001-meta-digi-dey-Added-libqmi-patch-to-DMS-version-miss-match.patch \
|
|
||||||
"
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
SUMMARY = "libqmi is a library for talking to WWAN devices by QMI protocol"
|
||||||
|
DESCRIPTION = "libqmi is a glib-based library for talking to WWAN modems \
|
||||||
|
and devices which speak the Qualcomm MSM Interface (QMI) protocol"
|
||||||
|
HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libqmi"
|
||||||
|
LICENSE = "GPLv2 & LGPLv2.1"
|
||||||
|
LIC_FILES_CHKSUM = " \
|
||||||
|
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
|
||||||
|
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
|
||||||
|
"
|
||||||
|
|
||||||
|
DEPENDS = "glib-2.0 libgudev libmbim"
|
||||||
|
|
||||||
|
inherit autotools pkgconfig bash-completion
|
||||||
|
|
||||||
|
SRC_URI = " \
|
||||||
|
http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz \
|
||||||
|
file://0001-Detect-clang.patch \
|
||||||
|
"
|
||||||
|
SRC_URI[md5sum] = "25bae4e383ad77f491ad49b49e04fdcf"
|
||||||
|
SRC_URI[sha256sum] = "a0a42c55935e75a630208e2f70840bd4407f56fe1c5258f5b0f6c0aaedf88cec"
|
||||||
Loading…
Reference in New Issue