From: Michael Brown Date: Sun, 27 Apr 2025 17:01:24 +0000 (+0100) Subject: [build] Disable gcc unterminated-string-initializer warnings X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F1457%2Fhead;p=thirdparty%2Fipxe.git [build] Disable gcc unterminated-string-initializer warnings GCC 15 generates a warning when a string initializer is too large to allow for a trailing NUL terminator byte. This type of initializer is fairly common in signature strings such as ACPI table identifiers. Fix by disabling the warning. Signed-off-by: Michael Brown --- diff --git a/src/Makefile.housekeeping b/src/Makefile.housekeeping index 11aab7a50..b29173213 100644 --- a/src/Makefile.housekeeping +++ b/src/Makefile.housekeeping @@ -368,6 +368,15 @@ WNAPM_FLAGS := $(shell $(WNAPM_TEST) && \ WORKAROUND_CFLAGS += $(WNAPM_FLAGS) endif +# gcc 15 generates warnings for fixed-length character array +# initializers that lack a terminating NUL. Inhibit the warnings. +# +WNUSI_TEST = $(CC) -Wunterminated-string-initialization -x c -c /dev/null \ + -o /dev/null >/dev/null 2>&1 +WNUSI_FLAGS := $(shell $(WNUSI_TEST) && \ + $(ECHO) '-Wno-unterminated-string-initialization') +WORKAROUND_CFLAGS += $(WNUSI_FLAGS) + # Some versions of gas choke on division operators, treating them as # comment markers. Specifying --divide will work around this problem, # but isn't available on older gas versions.