[PATCH] libctf: update regexp to allow makeinfo to build document
Eli Zaretskii
eliz@gnu.org
Fri Jan 13 15:05:47 GMT 2023
> Cc: gdb-patches@sourceware.org,
> enze.li@gmx.com
> Date: Fri, 13 Jan 2023 22:42:32 +0800
> From: Enze Li via Gdb-patches <gdb-patches@sourceware.org>
>
> While trying to build gdb on latest openSUSE Tumbleweed, I noticed the
> following warning,
>
> checking for makeinfo... makeinfo --split-size=5000000
> configure: WARNING:
> *** Makeinfo is too old. Info documentation will not be built.
>
> then I checked the version of makeinfo, it said,
> ======
> $ makeinfo --version
> texi2any (GNU texinfo) 7.0.1
>
> Copyright (C) 2022 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> ======
>
> After digging a little bit, it became quite obvious that a dot is
> missing in regexp that makes it impossible to match versions higher than
> 7.0.
Thanks.
> libctf/ChangeLog:
>
> * configure: Regenerated.
> * configure.ac: Update regexp to match versions higher than 7.0.
> ---
> libctf/configure | 2 +-
> libctf/configure.ac | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/libctf/configure b/libctf/configure
> index c22f7dffd2c..e9f7125edea 100755
> --- a/libctf/configure
> +++ b/libctf/configure
> @@ -14864,7 +14864,7 @@ esac
> # We require texinfo to be 6.3 or later, for a working synindex
> # and validatemenus: otherwise we fall back to /bin/true.
> if ${MAKEINFO} --version \
> - | egrep 'texinfo[^0-9]*(6\.[3-9]|[7-9][0-9])' >/dev/null 2>&1; then
> + | egrep 'texinfo[^0-9]*(6\.[3-9]|[7-9]\.[0-9])' >/dev/null 2>&1; then
> build_info=yes
> else
> build_info=
> diff --git a/libctf/configure.ac b/libctf/configure.ac
> index 1d0cf4d0fa5..4bc75736542 100644
> --- a/libctf/configure.ac
> +++ b/libctf/configure.ac
> @@ -184,7 +184,7 @@ changequote(,)
> # We require texinfo to be 6.3 or later, for a working synindex
> # and validatemenus: otherwise we fall back to /bin/true.
> if ${MAKEINFO} --version \
> - | egrep 'texinfo[^0-9]*(6\.[3-9]|[7-9][0-9])' >/dev/null 2>&1; then
> + | egrep 'texinfo[^0-9]*(6\.[3-9]|[7-9]\.[0-9])' >/dev/null 2>&1; then
> build_info=yes
> else
> build_info=
IMO, this solution has the same problem: it will stop working when
Texinfo 10.1 will be released. I think the solution should be to use
egrep 'texinfo[^0-9]*(6\.[3-9]|[7-9][0-9]?)'
That is, we don't care about the minor version for Texinfo > 6.9, we
only care about the major version.
More information about the Binutils
mailing list