git: f9d12ca07182 - stable/12 - Suppress -Wstrict-prototypes for several zlib files
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 29 Jul 2022 18:48:37 UTC
The branch stable/12 has been updated by dim:
URL: https://cgit.FreeBSD.org/src/commit/?id=f9d12ca07182d2e2a4119a00e0bbc4cc1cd8542e
commit f9d12ca07182d2e2a4119a00e0bbc4cc1cd8542e
Author: Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2022-07-26 18:24:58 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2022-07-29 18:43:12 +0000
Suppress -Wstrict-prototypes for several zlib files
Clang 15 is more strict about function definitions not matching
declarations, and zlib has a lot of these, but since it is contributed
code (and in K&R style to boot), suppress those warnings instead.
MFC after: 3 days
(cherry picked from commit e83ffec3af2e71cc64348d58481c87db9efbac92)
---
sys/conf/files | 9 ++++++---
sys/conf/kern.mk | 9 +++++++++
sys/modules/zlib/Makefile | 3 +++
3 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/sys/conf/files b/sys/conf/files
index 6bcc36d58e35..4d39203415ea 100644
--- a/sys/conf/files
+++ b/sys/conf/files
@@ -4140,7 +4140,8 @@ contrib/zlib/compress.c optional crypto | geom_uzip | ipsec | \
ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib \
compile-with "${NORMAL_C} -Wno-cast-qual"
contrib/zlib/crc32.c optional crypto | geom_uzip | ipsec | \
- ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib
+ ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib \
+ compile-with "${NORMAL_C} ${NO_WSTRICT_PROTOTYPES}"
contrib/zlib/deflate.c optional crypto | geom_uzip | ipsec | \
ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib \
compile-with "${NORMAL_C} -Wno-cast-qual"
@@ -4151,12 +4152,14 @@ contrib/zlib/inflate.c optional crypto | geom_uzip | ipsec | \
contrib/zlib/inftrees.c optional crypto | geom_uzip | ipsec | \
ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib
contrib/zlib/trees.c optional crypto | geom_uzip | ipsec | \
- ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib
+ ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib \
+ compile-with "${NORMAL_C} ${NO_WSTRICT_PROTOTYPES}"
contrib/zlib/uncompr.c optional crypto | geom_uzip | ipsec | \
ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib \
compile-with "${NORMAL_C} -Wno-cast-qual"
contrib/zlib/zutil.c optional crypto | geom_uzip | ipsec | \
- ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib
+ ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib \
+ compile-with "${NORMAL_C} ${NO_WSTRICT_PROTOTYPES}"
dev/zlib/zlib_mod.c optional crypto | geom_uzip | ipsec | \
ipsec_support | mxge | ddb_ctf | gzio | zfs | zlib
dev/zlib/zcalloc.c optional crypto | geom_uzip | ipsec | \
diff --git a/sys/conf/kern.mk b/sys/conf/kern.mk
index c93be4b1b24c..67656914dd1d 100644
--- a/sys/conf/kern.mk
+++ b/sys/conf/kern.mk
@@ -28,6 +28,15 @@ NO_WTAUTOLOGICAL_POINTER_COMPARE= -Wno-tautological-pointer-compare
.if ${COMPILER_VERSION} >= 100000
NO_WMISLEADING_INDENTATION= -Wno-misleading-indentation
.endif
+.if ${COMPILER_VERSION} >= 130000
+NO_WUNUSED_BUT_SET_VARIABLE= -Wno-unused-but-set-variable
+.endif
+.if ${COMPILER_VERSION} >= 140000
+NO_WBITWISE_INSTEAD_OF_LOGICAL= -Wno-bitwise-instead-of-logical
+.endif
+.if ${COMPILER_VERSION} >= 150000
+NO_WSTRICT_PROTOTYPES= -Wno-strict-prototypes
+.endif
# Several other warnings which might be useful in some cases, but not severe
# enough to error out the whole kernel build. Display them anyway, so there is
# some incentive to fix them eventually.
diff --git a/sys/modules/zlib/Makefile b/sys/modules/zlib/Makefile
index b5f1e552c465..6391255e512b 100644
--- a/sys/modules/zlib/Makefile
+++ b/sys/modules/zlib/Makefile
@@ -21,5 +21,8 @@ SRCS+= zutil.c
CWARNFLAGS.compress.c+=-Wno-cast-qual # compress:49
CWARNFLAGS.deflate.c+=-Wno-cast-qual # deflate.c:415
CWARNFLAGS.uncompr.c+=-Wno-cast-qual # uncompr:49
+CWARNFLAGS.crc32.c+=${NO_WSTRICT_PROTOTYPES} # crc32.c:586
+CWARNFLAGS.trees.c+=${NO_WSTRICT_PROTOTYPES} # trees.c:232
+CWARNFLAGS.zutil.c+=${NO_WSTRICT_PROTOTYPES} # zutil.c:27,32
.include <bsd.kmod.mk>