From 93de06562766069fc48a157fa03b8a388bb38b17 Mon Sep 17 00:00:00 2001 From: Ramon Moesching Date: Thu, 17 May 2018 13:30:39 +0200 Subject: [PATCH] libmbim: add glib-2.0-native dependency and suppress compiler warnings by patch glib-2.0 is missing some library files, so include native library for building apply clang.patch for suppress compiler warnings Signed-off-by: Ramon Moesching --- .../libmbim/libmbim/clang.patch | 73 +++++++++++++++++++ .../libmbim/libmbim_1.16.0.bb | 6 +- 2 files changed, 77 insertions(+), 2 deletions(-) create mode 100644 recipes-connectivity/libmbim/libmbim/clang.patch diff --git a/recipes-connectivity/libmbim/libmbim/clang.patch b/recipes-connectivity/libmbim/libmbim/clang.patch new file mode 100644 index 0000000..92e657c --- /dev/null +++ b/recipes-connectivity/libmbim/libmbim/clang.patch @@ -0,0 +1,73 @@ +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 +Upstream-Status: Pending + +Index: libmbim-1.14.0/m4/compiler-warnings.m4 +=================================================================== +--- libmbim-1.14.0.orig/m4/compiler-warnings.m4 ++++ libmbim-1.14.0/m4/compiler-warnings.m4 +@@ -2,10 +2,30 @@ AC_DEFUN([LIBMBIM_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_war + -Wmissing-include-dirs -Waggregate-return \ + -Wformat-security; 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 diff --git a/recipes-connectivity/libmbim/libmbim_1.16.0.bb b/recipes-connectivity/libmbim/libmbim_1.16.0.bb index aa5e1ea..59b85d9 100644 --- a/recipes-connectivity/libmbim/libmbim_1.16.0.bb +++ b/recipes-connectivity/libmbim/libmbim_1.16.0.bb @@ -7,11 +7,13 @@ LIC_FILES_CHKSUM = " \ file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \ " -DEPENDS = "glib-2.0 libgudev" +DEPENDS = "glib-2.0 libgudev glib-2.0-native" inherit autotools pkgconfig -SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz" +SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz \ + file://clang.patch \ + " SRC_URI[md5sum] = "76ea4d8381989919b1d9b91c818fed80" SRC_URI[sha256sum] = "c8ca50beeddd4b43309df5b698917268303bf176cea58fe4fe53d5bf0e93fac2"