Use -Wno-unknown-pragmas with --enable-checking

When building with --enable-checking, any of our "#pragma GCC
diagnostic warning" lines that are not understood by the compiler
tend to raise a warning, and so causes the build to fail. For example:

      CC  .../src/rxkad/ticket5.lo
    cc1: warnings being treated as errors
    .../src/rxkad/ticket5.c:64: warning: ignoring #pragma GCC diagnostic [-Wunknown-pragmas]

Sometimes an older compiler (like gcc 4.1 on RHEL5) doesn't need a
particular warning to be inhibited, but it doesn't understand the
pragma, and so the pragma can be safely ignored. So to avoid
unnecessary build failures on platforms like RHEL5, add
-Wno-unknown-pragmas to our CFLAGS when building with
--enable-checking, so unknown pragmas don't issue warnings. If we
accidentally ignore a pragma that is required on another platform, the
build will still fail as usual, just in a slightly different way.

Change-Id: I3ebfbfd489245aa2ae0494f397d815e284001bf3
Reviewed-on: https://gerrit.openafs.org/15218
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
This commit is contained in:
Andrew Deason 2022-12-09 15:36:39 -06:00 committed by Michael Meffie
parent 8a6869f790
commit d20709a1f6

View File

@ -629,6 +629,9 @@ if test "x$GCC" = "xyes"; then
XCFLAGS="${XCFLAGS} -Wall -Wstrict-prototypes -Wold-style-definition -Werror -fdiagnostics-show-option -Wpointer-arith -fno-common"
CFLAGS_WERROR="-Werror"
if test "x$enable_checking" != "xall"; then
XCFLAGS="${XCFLAGS} -Wno-unknown-pragmas"
CFLAGS_WERROR="${CFLAGS_WERROR} -Wno-unknown-pragmas"
CFLAGS_NOERROR="-Wno-error"
CFLAGS_NOUNUSED="-Wno-unused"
CFLAGS_NOOLDSTYLE="-Wno-old-style-definition"