From: Michael Pratt Date: Tue, 5 Aug 2025 22:52:13 +0000 (-0400) Subject: gettext-full: force compiling target in C23 standard X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b6f67ca7394f4e221c27e58c9f8e250179fa142f;p=thirdparty%2Fopenwrt.git gettext-full: force compiling target in C23 standard Currently, the build system overrides the value of the CC variable for actual compilation after configuring for target builds. However, the configure script now modifies the CC variable to include "-std=gnu23" when the test for C23 features is successful. The configure script also tests for the ability to use alignof without including the stdalign.h header, and only includes it if necessary. The test in the configure script is being done with the C23 standard option but the compilation is being done without the C23 standard option, leading to an unusual build error where alignof() is not defined. Resolving the conflict between the autoconf macros and the build system causes several other packages to fail, so instead in the meantime, force the use of C23 standard to compile as part of the new standard includes alignof as a keyword to deprecate the stdalign.h macro. Forcing use of the new standard is safe for target builds as the toolchain is known to support the option and is always within our scope of version control. Signed-off-by: Michael Pratt Link: https://github.com/openwrt/openwrt/pull/19748 Signed-off-by: Robert Marko --- diff --git a/package/libs/gettext-full/Makefile b/package/libs/gettext-full/Makefile index 6441677be70..d277fb10b64 100644 --- a/package/libs/gettext-full/Makefile +++ b/package/libs/gettext-full/Makefile @@ -73,6 +73,7 @@ endef export GNULIB_SRCDIR:=$(HOST_GNULIB_SRCDIR) TARGET_CFLAGS += $(FPIC) +TARGET_CFLAGS += -std=gnu23 ifneq ($(HOST_OS),Linux) TARGET_CFLAGS += -I$(STAGING_DIR_HOSTPKG)/include endif