From: Khem Raj Date: Fri, 10 Apr 2026 17:01:17 +0000 (-0700) Subject: flex: Fix build with autoconf-2.74 and gcc <= 13 X-Git-Tag: yocto-6.0_M3~3 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a592a30e781e26a3e62e93752cdeb610e2b00e8f;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git flex: Fix build with autoconf-2.74 and gcc <= 13 GCC 13 or below does not support -std=gnu23 but autoconf enforces it on compilers which do not have C23 turned on by default Update the autconf m4 file instead of passing cmdline option Signed-off-by: Khem Raj Signed-off-by: Richard Purdie --- diff --git a/meta/recipes-devtools/flex/flex/0001-ax_prog_cc_for_build-Support-ac_-cv_-build_prog_cc_s.patch b/meta/recipes-devtools/flex/flex/0001-ax_prog_cc_for_build-Support-ac_-cv_-build_prog_cc_s.patch new file mode 100644 index 0000000000..be7cc5ff5d --- /dev/null +++ b/meta/recipes-devtools/flex/flex/0001-ax_prog_cc_for_build-Support-ac_-cv_-build_prog_cc_s.patch @@ -0,0 +1,52 @@ +From 41f4c52fa5661551842c5a57a2b6f93382176bd6 Mon Sep 17 00:00:00 2001 +From: Kang-Che Sung +Date: Wed, 16 Oct 2024 21:56:44 +0800 +Subject: [PATCH] ax_prog_cc_for_build: Support ac_{,cv_}build_prog_cc_stdc + +Improve compatibility with Autoconf 2.70 and later. Add support for +these variables for indicating build compiler capabilities: +* ac_cv_build_prog_cc_stdc (corresponding to ac_cv_prog_cc_stdc; + Autoconf 2.70) +* ac_build_prog_cc_stdc (corresponding to ac_prog_cc_stdc; + Autoconf 2.70) +* ac_cv_build_prog_cc_c23 (corresponding to ac_cv_prog_cc_c23; + Autoconf 2.73) + +Upstream-Status: Backport [https://github.com/autoconf-archive/autoconf-archive/commit/8a970ce96721f516fef4226e5eca8da341159765] +Signed-off-by: Khem Raj +--- + m4/ax_prog_cc_for_build.m4 | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/m4/ax_prog_cc_for_build.m4 b/m4/ax_prog_cc_for_build.m4 +index 77fd346..d48e622 100644 +--- a/m4/ax_prog_cc_for_build.m4 ++++ b/m4/ax_prog_cc_for_build.m4 +@@ -45,9 +45,12 @@ dnl Use the standard macros, but make them use other variable names + dnl + pushdef([ac_cv_prog_CPP], ac_cv_build_prog_CPP)dnl + pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl ++pushdef([ac_cv_prog_cc_c23], ac_cv_build_prog_cc_c23)dnl ++pushdef([ac_cv_prog_cc_stdc], ac_cv_build_prog_cc_stdc)dnl + pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl + pushdef([ac_cv_prog_cc_cross], ac_cv_build_prog_cc_cross)dnl + pushdef([ac_cv_prog_cc_g], ac_cv_build_prog_cc_g)dnl ++pushdef([ac_prog_cc_stdc], ac_build_prog_cc_stdc)dnl + pushdef([ac_cv_exeext], ac_cv_build_exeext)dnl + pushdef([ac_cv_objext], ac_cv_build_objext)dnl + pushdef([ac_exeext], ac_build_exeext)dnl +@@ -105,11 +108,14 @@ popdef([CPP])dnl + popdef([CC])dnl + popdef([ac_objext])dnl + popdef([ac_exeext])dnl ++popdef([ac_prog_cc_stdc])dnl + popdef([ac_cv_objext])dnl + popdef([ac_cv_exeext])dnl + popdef([ac_cv_prog_cc_g])dnl + popdef([ac_cv_prog_cc_cross])dnl + popdef([ac_cv_prog_cc_works])dnl ++popdef([ac_cv_prog_cc_stdc])dnl ++popdef([ac_cv_prog_cc_c23])dnl + popdef([ac_cv_prog_gcc])dnl + popdef([ac_cv_prog_CPP])dnl + diff --git a/meta/recipes-devtools/flex/flex_2.6.4.bb b/meta/recipes-devtools/flex/flex_2.6.4.bb index 0507d4e300..bbaa6f3998 100644 --- a/meta/recipes-devtools/flex/flex_2.6.4.bb +++ b/meta/recipes-devtools/flex/flex_2.6.4.bb @@ -20,6 +20,7 @@ SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/flex-${PV}.tar.gz \ file://0001-Emit-no-line-directives-if-gen_line_dirs-is-false.patch \ file://0001-build-tests-add-missing-parser-scanner-dependencies.patch \ file://0001-Match-malloc-signature-to-its-use.patch \ + file://0001-ax_prog_cc_for_build-Support-ac_-cv_-build_prog_cc_s.patch \ " SRC_URI[sha256sum] = "e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995" @@ -36,10 +37,6 @@ inherit autotools gettext texinfo ptest github-releases M4 = "${bindir}/m4" M4:class-native = "${STAGING_BINDIR_NATIVE}/m4" EXTRA_OECONF += "ac_cv_path_M4=${M4} ac_cv_func_reallocarray=no" -# Don't let autoconf smarts to detect C standard, flex code does not need C23 -# which is what it will enforce see -# https://savannah.gnu.org/support/index.php?111401 -CACHED_CONFIGUREVARS:append:toolchain-clang = " CFLAGS='${CFLAGS} -std=gnu17'" EXTRA_OEMAKE += "m4=${STAGING_BINDIR_NATIVE}/m4"