sys: Disable C standards prior to C99 from kernel build

The kernel hasn't built with anything less than c99 for a long
time. Retire support in the build for it.  In addition, retire the
translation of c99 to -std=iso9899:1999, since all latter day C
compilers that we support have had this for maybe 15 years or so (gcc
since 4.5, clang since the earliest version) and it simplifies the code.

Reviewed-by: imp, emaste
Differential-Revision: https://reviews.freebsd.org/D44145
This commit is contained in:
Minsoo Choo 2024-06-03 08:58:18 -06:00 committed by Warner Losh
parent 645a228481
commit 079d67b1d8

View file

@ -284,14 +284,10 @@ PHONY_NOTMAIN = afterdepend afterinstall all beforedepend beforeinstall \
CSTD?= gnu99
.if ${CSTD} == "k&r"
CFLAGS+= -traditional
.elif ${CSTD} == "c89" || ${CSTD} == "c90"
CFLAGS+= -std=iso9899:1990
.elif ${CSTD} == "c94" || ${CSTD} == "c95"
CFLAGS+= -std=iso9899:199409
.elif ${CSTD} == "c99"
CFLAGS+= -std=iso9899:1999
# c99/gnu99 is the minimum C standard version supported for kernel build
.if ${CSTD} == "k&r" || ${CSTD} == "c89" || ${CSTD} == "c90" || \
${CSTD} == "c94" || ${CSTD} == "c95"
.error "Only c99/gnu99 or later is supported"
.else # CSTD
CFLAGS+= -std=${CSTD}
.endif # CSTD