Module Name: src Committed By: lukem Date: Sat Jun 3 09:10:13 UTC 2023
Modified Files: src/tools/compat: configure.ac defs.mk.in Log Message: tools/compat: support all bsd.own.mk disabled warnings Check the host CC support for all the warnings now in <bsd.own.mk> and override appropriately in defs.mk. In general there's a 1:1 mapping, with the special case CC_WNO_ADDRESS_OF_PACKED_MEMBER which is set from both @CC_WNO_ADDRESS_OF_PACKED_MEMBER@ (gcc) and @CC_WNO_ERROR_ADDRESS_OF_PACKED_MEMBER@ (clang). To generate a diff of this commit: cvs rdiff -u -r1.104 -r1.105 src/tools/compat/configure.ac cvs rdiff -u -r1.16 -r1.17 src/tools/compat/defs.mk.in Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tools/compat/configure.ac diff -u src/tools/compat/configure.ac:1.104 src/tools/compat/configure.ac:1.105 --- src/tools/compat/configure.ac:1.104 Tue May 30 18:54:21 2023 +++ src/tools/compat/configure.ac Sat Jun 3 09:10:13 2023 @@ -1,4 +1,4 @@ -# $NetBSD: configure.ac,v 1.104 2023/05/30 18:54:21 lukem Exp $ +# $NetBSD: configure.ac,v 1.105 2023/06/03 09:10:13 lukem Exp $ # # Autoconf definition file for libnbcompat. # @@ -332,11 +332,16 @@ cc_fail_unknown= AX_CHECK_COMPILE_FLAG([-Werror=unknown-warning-option], [AS_VAR_APPEND([cc_fail_unknown], [-Werror=unknown-warning-option])]) +dnl NB_CC_FLAG(FLAG) +dnl Determine if HOST_CC supports FLAG, and +dnl sets output variable VAR (derived from FLAG) +dnl to FLAG if it is supported. +dnl AC_DEFUN([NB_CC_FLAG], [dnl m4_pushdef([NB_FLAG], [$1]) dnl gcc ignores unknown -Wno-WARN but will fail unknown equivalent -WWARN. m4_pushdef([NB_WFLAG], m4_bpatsubst(NB_FLAG, [^-Wno-], [-W])) -m4_pushdef([NB_VAR], [CC]m4_translit(NB_FLAG, [-a-z], [_A-Z])) +m4_pushdef([NB_VAR], [CC]m4_translit(NB_FLAG, [-=a-z], [__A-Z])) AX_CHECK_COMPILE_FLAG(NB_WFLAG, [AS_VAR_SET(NB_VAR,NB_FLAG)], [], [$cc_fail_unknown]) AC_SUBST(NB_VAR) m4_append([NB_CC_FLAG_VARS], NB_VAR, [ ]) @@ -349,8 +354,14 @@ dnl Disable use of pre-compiled headers NB_CC_FLAG([-no-cpp-precomp]) dnl Detect HOST_CC support for <bsd.own.mk> CC_* warnings +NB_CC_FLAG([-Wno-address-of-packed-member]) +NB_CC_FLAG([-Wno-cast-function-type]) +NB_CC_FLAG([-Wno-error=address-of-packed-member]) +NB_CC_FLAG([-Wno-format-overflow]) NB_CC_FLAG([-Wno-format-truncation]) +NB_CC_FLAG([-Wno-implicit-fallthrough]) NB_CC_FLAG([-Wno-maybe-uninitialized]) +NB_CC_FLAG([-Wno-return-local-addr]) NB_CC_FLAG([-Wno-stringop-overflow]) NB_CC_FLAG([-Wno-stringop-truncation]) @@ -358,10 +369,8 @@ AC_OUTPUT() dnl Display results dnl -AC_MSG_NOTICE([========= Configuration results =========]) -AC_MSG_NOTICE([CC $CC]) -m4_foreach_w([NB_VAR], NB_CC_FLAG_VARS, [dnl -AC_MSG_NOTICE(m4_format([%-32s],NB_VAR)[$NB_VAR]) +AC_MSG_NOTICE([============= Configuration results =============]) +m4_foreach_w([NB_VAR], [CC LIBS ]NB_CC_FLAG_VARS, [dnl +AC_MSG_NOTICE(m4_format([%-40s],NB_VAR)[$NB_VAR]) ]) -AC_MSG_NOTICE([LIBS $LIBS]) -AC_MSG_NOTICE([=========================================]) +AC_MSG_NOTICE([================================================]) Index: src/tools/compat/defs.mk.in diff -u src/tools/compat/defs.mk.in:1.16 src/tools/compat/defs.mk.in:1.17 --- src/tools/compat/defs.mk.in:1.16 Sat Jun 3 09:09:16 2023 +++ src/tools/compat/defs.mk.in Sat Jun 3 09:10:13 2023 @@ -1,4 +1,4 @@ -# $NetBSD: defs.mk.in,v 1.16 2023/06/03 09:09:16 lukem Exp $ +# $NetBSD: defs.mk.in,v 1.17 2023/06/03 09:10:13 lukem Exp $ # # Makefile fragment for building with libnbcompat and associated # include files. It can also be used for building just with @@ -75,8 +75,13 @@ HOST_CFLAGS+= @CC_NO_CPP_PRECOMP@ # Override HOST_CC support for <bsd.own.mk> CC_* warnings # +CC_WNO_ADDRESS_OF_PACKED_MEMBER=@CC_WNO_ADDRESS_OF_PACKED_MEMBER@ @CC_WNO_ERROR_ADDRESS_OF_PACKED_MEMBER@ +CC_WNO_CAST_FUNCTION_TYPE=@CC_WNO_CAST_FUNCTION_TYPE@ +CC_WNO_FORMAT_OVERFLOW=@CC_WNO_FORMAT_OVERFLOW@ CC_WNO_FORMAT_TRUNCATION=@CC_WNO_FORMAT_TRUNCATION@ +CC_WNO_IMPLICIT_FALLTHROUGH=@CC_WNO_IMPLICIT_FALLTHROUGH@ CC_WNO_MAYBE_UNINITIALIZED=@CC_WNO_MAYBE_UNINITIALIZED@ +CC_WNO_RETURN_LOCAL_ADDR=@CC_WNO_RETURN_LOCAL_ADDR@ CC_WNO_STRINGOP_OVERFLOW=@CC_WNO_STRINGOP_OVERFLOW@ CC_WNO_STRINGOP_TRUNCATION=@CC_WNO_STRINGOP_TRUNCATION@