Hi Zack,

> Fixed in commit 52888c93.  I plan to merge the branch to master in the next 
> few days.

Thanks. I'm testing the current 'master' (commit 
9af20f0af70061f633aa50294ed74fd93210e307)
with various versions of 'autopoint'.

My test case is
  $ PATH=<directory containing autopoint of the given version>:$PATH
  $ tar xf gnujump_1.0.8.orig.tar.gz
  $ cd gnujump-1.0.8
  $ autoreconf -f -i -v

> >> The autopoint versions that should match are:
> >>   - 0.23.x with x >= 2
> >>   - 0.24.x with x >= 2
> >>   - 0.25.x with x >= 1
> >>   - 0.26 and newer.

Good:
  - With 0.23, 0.23.1, autoreconf reports "not running autopoint because it is 
too old"
  - With 0.23.2, autoreconf reports "running: autopoint --force"
  - With 0.24, 0.24.1, autoreconf reports "not running autopoint because it is 
too old"
  - With 0.24.2, autoreconf reports "running: autopoint --force"
  - With 0.25, autoreconf reports "not running autopoint because it is too old"
  - With 0.25.1, autoreconf reports "running: autopoint --force"

BROKEN:
  - With 0.26, autoreconf reports "not running autopoint because it is too old"
  - With 1.0, autoreconf reports "not running autopoint because it is too old"

The reason is that the line
    if ($ap_ver[0] =~ /^ .*?\) \s+ (\d+) \. (\d+) (?:\.(\d+)) /x)
apparently matches
    "PROGRAM_NAME (GNU PACKAGE_NAME) MAJ.MIN.PTC"
but it does not match
    "PROGRAM_NAME (GNU PACKAGE_NAME) MAJ.MIN"

The attached patch fixes it.

>From 0148f0772537943abdb9e8eba5ac65a13aaae9c0 Mon Sep 17 00:00:00 2001
From: Bruno Haible <[email protected]>
Date: Tue, 17 Mar 2026 22:48:47 +0100
Subject: [PATCH] autoreconf: Fix recognition of autopoint versions 0.26 or
 newer.

* bin/autoreconf.in (autoreconf_current_directory): In the regex that
extracts the version number components from `autopoint --version`, mark
the third component as optional.
---
 bin/autoreconf.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bin/autoreconf.in b/bin/autoreconf.in
index b703dd02..65570cf8 100644
--- a/bin/autoreconf.in
+++ b/bin/autoreconf.in
@@ -601,7 +601,7 @@ sub autoreconf_current_directory ($)
               # "PROGRAM_NAME (GNU PACKAGE_NAME) MAJ.MIN[.PTC][ETC]"
               # where MAJ, MIN, and PTC are sequences of digits,
               # and [...] indicates an optional component.
-              if ($ap_ver[0] =~ /^ .*?\) \s+ (\d+) \. (\d+) (?:\.(\d+)) /x)
+              if ($ap_ver[0] =~ /^ .*?\) \s+ (\d+) \. (\d+) (?:\.(\d+))? /x)
                 {
                   my $maj = $1;
                   my $min = $2;
-- 
2.52.0

  • Re: Please ... Bruno Haible via Discussion list for the autoconf build system
    • Re: Pl... Zack Weinberg
      • Re... Bruno Haible via Discussion list for the autoconf build system
      • Re... Bruno Haible via Discussion list for the autoconf build system
        • ... Bruno Haible via Discussion list for the autoconf build system
        • ... Zack Weinberg
          • ... Bruno Haible via Discussion list for the autoconf build system
          • ... Zack Weinberg
            • ... Bruno Haible via Discussion list for the autoconf build system

Reply via email to