[Buildroot] [PATCH 1/1] package/lighttpd: run autoreconf

Arnout Vandecappelle arnout at mind.be
Mon Nov 22 20:42:39 UTC 2021



On 18/11/2021 22:06, Fabrice Fontaine wrote:
> For an unknown reason, the build fails since bump to version 1.4.60 in
> commit d62b7f54f00291a50274409fb5510527fd725ffe on:
> 
> array.c:140:2: error: 'for' loop initial declarations are only allowed in C99 mode
>    for (uint32_t i = 0; i < sz; ++i) {
>    ^
> 
> Running autoreconf fixes the build.
> 
> Fixes:
>   - http://autobuild.buildroot.org/results/0349d8fed35b0766796dd9ba3b8de6ff8bd68fe7
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>

  After reading this thread and the upstream bug report, I did a bunch more 
analysis and drilled it down to the real issue. See the bug report and the 
updated commit message:

     Since upstream commit bb1d35dc1767 [1] (which is part of the bump to
     version 1.4.60), configure.ac no longer checks for a specific C
     standard. It will therefore use the "default" standard. With autoconf
     2.69 (which is what is used to generate the configure script in the
     tarball), the default standard is C89, which requires no option to be
     passed to the compiler. However, that means that older compilers, e.g.
     GCC 4.8, will indeed use C89 and not C99. This leads to the following
     error.

     array.c:140:2: error: 'for' loop initial declarations are only allowed in 
C99 mode
       for (uint32_t i = 0; i < sz; ++i) {
       ^

     In autoconf 2.71 (which is used by Buildroot), the default standard has
     changed: it is now C11 if available, C99 failing that, and finally fall
     back to C89. Since GCC 4.8 (and later) support C11, that's what will be
     selected, so C99 is allowed as well. Thus, running autoreconf fixes the
     build.

     The issue was reported upstream [2].

     Fixes:
      - 
http://autobuild.buildroot.org/results/0349d8fed35b0766796dd9ba3b8de6ff8bd68fe7

     [1] 
https://redmine.lighttpd.net/projects/lighttpd/repository/14/revisions/bb1d35dc17671bc308e25651b4f5fa0c3008cc69
     [2] https://redmine.lighttpd.net/issues/3116


  Applied to master, thanks.

  Regards,
  Arnout

> ---
>   package/lighttpd/lighttpd.mk | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/package/lighttpd/lighttpd.mk b/package/lighttpd/lighttpd.mk
> index 9c18a6038e..c39a5db20f 100644
> --- a/package/lighttpd/lighttpd.mk
> +++ b/package/lighttpd/lighttpd.mk
> @@ -12,6 +12,8 @@ LIGHTTPD_LICENSE = BSD-3-Clause
>   LIGHTTPD_LICENSE_FILES = COPYING
>   LIGHTTPD_CPE_ID_VENDOR = lighttpd
>   LIGHTTPD_DEPENDENCIES = host-pkgconf
> +# Issue in configure script provided in tarball
> +LIGHTTPD_AUTORECONF = YES
>   LIGHTTPD_CONF_OPTS = \
>   	--without-wolfssl \
>   	--libdir=/usr/lib/lighttpd \
> 



More information about the buildroot mailing list