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 <ramon.moesching@netmodule.com>
This commit is contained in:
Ramon Moesching 2018-05-17 13:30:39 +02:00
parent 0778c067ec
commit 93de065627
2 changed files with 77 additions and 2 deletions

View File

@ -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 <raj.khem@gmail.com>
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

View File

@ -7,11 +7,13 @@ LIC_FILES_CHKSUM = " \
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \ file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
" "
DEPENDS = "glib-2.0 libgudev" DEPENDS = "glib-2.0 libgudev glib-2.0-native"
inherit autotools pkgconfig 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[md5sum] = "76ea4d8381989919b1d9b91c818fed80"
SRC_URI[sha256sum] = "c8ca50beeddd4b43309df5b698917268303bf176cea58fe4fe53d5bf0e93fac2" SRC_URI[sha256sum] = "c8ca50beeddd4b43309df5b698917268303bf176cea58fe4fe53d5bf0e93fac2"