nfs-utils: Drop unneeded patches, cmdline option overrides

0001-configure.ac-Do-not-fatalize-Wmissing-prototypes.patch is no longer
needed

disabling format warnings is no longer needed as well therefore remove
it from recipe and address the warnings (if any in patches)

Ensure that it can build with clang as well on the way via the new clang-warnings.patch
patch

(From OE-Core rev: c22726425a2554a65b17a9daac9350940b2ddd6b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj
2019-12-31 08:15:34 -08:00
committed by Richard Purdie
parent 1cecfd0332
commit b42080cbe9
3 changed files with 62 additions and 44 deletions

View File

@@ -1,40 +0,0 @@
From 66471fbf7106917da7a1536b18a0a77d07479779 Mon Sep 17 00:00:00 2001
From: Mingli Yu <Mingli.Yu@windriver.com>
Date: Mon, 17 Dec 2018 15:29:47 +0800
Subject: [PATCH] configure.ac: Do not fatalize -Wmissing-prototypes
There comes below error when run "make -C tests/nsm_client nsm_client"
| nlm_sm_inter_svc.c:20:1: error: no previous prototype for 'nlm_sm_prog_3' [-Werror=missing-prototypes]
It is because rpcgen doesn't generate -Wmissing-prototypes
free code for nlm_sm_inter_svc.c with below logic
in tests/nsm_client/Makefile.am
[snip]
GENFILES_SVC = nlm_sm_inter_svc.c
[snip]
$(GENFILES_SVC): %_svc.c: %.x $(RPCGEN)
test -f $@ && rm -rf $@ || true
$(RPCGEN) -m -o $@ $<
So add the logic not to fatalize -Wmissing-prototypes.
Upstream-Status: Submitted[https://marc.info/?l=linux-nfs&m=154503260323936&w=2]
Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 50002b4..aebff01 100644
--- a/configure.ac
+++ b/configure.ac
@@ -582,7 +582,7 @@ my_am_cflags="\
-Wall \
-Wextra \
$rpcgen_cflags \
- -Werror=missing-prototypes \
+ -Wmissing-prototypes \
-Werror=missing-declarations \
-Werror=format=2 \
-Werror=undef \

View File

@@ -0,0 +1,61 @@
Detect warning options during configure
Certain options maybe compiler specific therefore its better
to detect them before use.
nfs_error copies the format string and appends newline to it
but compiler can forget that it was format string since its not
same fmt string that was passed. Ignore the warning
Wdiscarded-qualifiers is gcc specific and this is no longer needed
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- a/configure.ac
+++ b/configure.ac
@@ -599,7 +599,6 @@ my_am_cflags="\
-Werror=parentheses \
-Werror=aggregate-return \
-Werror=unused-result \
- -Wno-cast-function-type \
-fno-strict-aliasing \
"
@@ -619,9 +618,10 @@ CHECK_CCSUPPORT([-Werror=format-overflow
CHECK_CCSUPPORT([-Werror=int-conversion], [flg2])
CHECK_CCSUPPORT([-Werror=incompatible-pointer-types], [flg3])
CHECK_CCSUPPORT([-Werror=misleading-indentation], [flg4])
+CHECK_CCSUPPORT([-Wno-cast-function-type], [flg5])
AX_GCC_FUNC_ATTRIBUTE([format])
-AC_SUBST([AM_CFLAGS], ["$my_am_cflags $flg1 $flg2 $flg3 $flg4"])
+AC_SUBST([AM_CFLAGS], ["$my_am_cflags $flg1 $flg2 $flg3 $flg4 $flg5"])
# Make sure that $ACLOCAL_FLAGS are used during a rebuild
AC_SUBST([ACLOCAL_AMFLAGS], ["-I $ac_macro_dir \$(ACLOCAL_FLAGS)"])
--- a/support/nfs/xcommon.c
+++ b/support/nfs/xcommon.c
@@ -98,7 +98,10 @@ nfs_error (const char *fmt, ...) {
fmt2 = xstrconcat2 (fmt, "\n");
va_start (args, fmt);
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
vfprintf (stderr, fmt2, args);
+#pragma GCC diagnostic pop
va_end (args);
free (fmt2);
}
--- a/utils/mount/stropts.c
+++ b/utils/mount/stropts.c
@@ -1094,9 +1094,7 @@ static int nfsmount_fg(struct nfsmount_i
if (nfs_try_mount(mi))
return EX_SUCCESS;
-#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
if (errno == EBUSY && is_mountpoint(mi->node)) {
-#pragma GCC diagnostic warning "-Wdiscarded-qualifiers"
/*
* EBUSY can happen when mounting a filesystem that
* is already mounted or when the context= are

View File

@@ -31,9 +31,8 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/nfs-utils/${PV}/nfs-utils-${PV}.tar.x
file://0001-cacheio-use-intmax_t-for-formatted-IO.patch \
file://0001-Makefile.am-fix-undefined-function-for-libnsm.a.patch \
file://0001-Don-t-build-tools-with-CC_FOR_BUILD.patch \
file://clang-warnings.patch \
"
SRC_URI_append_libc-glibc = " file://0001-configure.ac-Do-not-fatalize-Wmissing-prototypes.patch"
SRC_URI[md5sum] = "d427c6b3014e9a04e8498f0598b1c1b9"
SRC_URI[sha256sum] = "4464737a03d5f73ded2ffefe19d5543ed7b1d6c541985d8acaafdc8025aa1038"
@@ -62,8 +61,6 @@ EXTRA_OECONF = "--with-statduser=rpcuser \
--with-statdpath=/var/lib/nfs/statd \
"
CFLAGS += "-Wno-error=format-overflow"
PACKAGECONFIG ??= "tcp-wrappers \
${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
"