tools/autoconf: bump to 2.71
authorMichael Pratt <mcpratt@pm.me>
Mon, 1 Aug 2022 12:28:44 +0000 (08:28 -0400)
committerHauke Mehrtens <hauke@hauke-m.de>
Mon, 13 Mar 2023 21:53:41 +0000 (22:53 +0100)
Autoconf release 2.71 is a bugfix release of 2.70
Links provided are the changelog of 2.70 [1] [2]
and the announcement of 2.71 [3]

The first patch needed to be rewritten.
Some of the lines in the patch were moved
to be consistent with the same change added upstream
in other similar files.

Second and third patches are no longer needed,
Emacs can now be disabled at the configure stage,
and support for musl was added upstream.

The patch now causes help2man to be required
for installing man pages, but we don't need them.
There is no way to disable man pages build
with the configure script,
so use make to touch the files with the build target install-man1.

Link: https://lists.gnu.org/archive/html/autotools-announce/2020-12/msg00001.html
Link: https://lwn.net/Articles/839395
Link: https://lists.gnu.org/archive/html/info-gnu/2021-01/msg00017.html
Signed-off-by: Michael Pratt <mcpratt@pm.me>
tools/autoconf/Makefile
tools/autoconf/patches/000-relocatable.patch
tools/autoconf/patches/001-no_emacs_lib.patch [deleted file]
tools/autoconf/patches/002-musl_host_fixup.patch [deleted file]

index b9c2f93ff3dbd879ec977cb3063760f3d0da14a7..a1ce158031245728ace3d6cc745756eff24ab128 100644 (file)
@@ -7,18 +7,20 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=autoconf
-PKG_VERSION:=2.69
+PKG_VERSION:=2.71
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@GNU/autoconf
-PKG_HASH:=64ebcec9f8ac5b2487125a86a7760d2591ac9e1d3dbd59489633f9de62a57684
+PKG_HASH:=f14c83cfebcc9427f2c3cea7258bd90df972d92eb26752da4ddad81c87a0faa4
 
 include $(INCLUDE_DIR)/host-build.mk
 
 HOST_CONFIGURE_VARS += \
+       EMACS="no" \
        PERL="/usr/bin/env perl"
 
 define Host/Compile
+       -$(call Host/Compile/Default,--touch install-man1) # disable building of man pages
        $(call Host/Compile/Default)
 endef
 
index a935671ce8affd5cfcdf5294e9e840faf41b562c..a105defd299a41836845534de573ea6b21fa748c 100644 (file)
@@ -1,7 +1,11 @@
 --- a/bin/autoheader.in
 +++ b/bin/autoheader.in
-@@ -28,7 +28,8 @@ eval 'case $# in 0) exec @PERL@ -S "$0";
+@@ -30,9 +30,12 @@ use 5.006;
+ use strict;
+ use warnings FATAL => 'all';
  
++$^W = 1;
++
  BEGIN
  {
 -  my $pkgdatadir = $ENV{'autom4te_perllibdir'} || '@pkgdatadir@';
    unshift @INC, "$pkgdatadir";
  
    # Override SHELL.  On DJGPP SHELL may not be set to a shell
-@@ -50,7 +51,7 @@ use strict;
use vars qw ($config_h %verbatim %symbol);
+@@ -54,7 +57,7 @@ use Autom4te::XFile;
our ($config_h, %symbol, %verbatim);
  
  # Lib files.
 -my $autom4te = $ENV{'AUTOM4TE'} || '@bindir@/@autom4te-name@';
 +my $autom4te = $ENV{'AUTOM4TE'} || ($ENV{'STAGING_DIR_HOST'} ? $ENV{'STAGING_DIR_HOST'} . '/bin/@autom4te-name@' : '@bindir@/@autom4te-name@');
- local $config_h;
  my $config_h_in;
  my @prepend_include;
+ my @include;
 --- a/bin/autom4te.in
 +++ b/bin/autom4te.in
-@@ -1,10 +1,12 @@
--#! @PERL@ -w
-+#! @PERL@
- # -*- perl -*-
- # @configure_input@
- eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac'
-     if 0;
+@@ -26,9 +26,12 @@ use 5.006;
+ use strict;
+ use warnings FATAL => 'all';
  
 +$^W = 1;
 +
- # autom4te - Wrapper around M4 libraries.
- # Copyright (C) 2001-2003, 2005-2012 Free Software Foundation, Inc.
-@@ -24,7 +26,8 @@ eval 'case $# in 0) exec @PERL@ -S "$0";
  BEGIN
  {
 -  my $pkgdatadir = $ENV{'autom4te_perllibdir'} || '@pkgdatadir@';
@@ -45,8 +39,8 @@
    unshift @INC, $pkgdatadir;
  
    # Override SHELL.  On DJGPP SHELL may not be set to a shell
-@@ -44,7 +47,8 @@ use File::Basename;
- use strict;
+@@ -48,7 +51,8 @@ use Autom4te::General;
+ use Autom4te::XFile;
  
  # Data directory.
 -my $pkgdatadir = $ENV{'AC_MACRODIR'} || '@pkgdatadir@';
@@ -55,7 +49,7 @@
  
  # $LANGUAGE{LANGUAGE} -- Automatic options for LANGUAGE.
  my %language;
-@@ -87,7 +91,7 @@ my @include;
+@@ -91,7 +95,7 @@ my @include;
  my $freeze = 0;
  
  # $M4.
@@ -64,7 +58,7 @@
  # Some non-GNU m4's don't reject the --help option, so give them /dev/null.
  fatal "need GNU m4 1.4 or later: $m4"
    if system "$m4 --help </dev/null 2>&1 | grep reload-state >/dev/null";
-@@ -269,6 +273,12 @@ sub load_configuration ($)
+@@ -272,6 +276,12 @@ sub load_configuration ($)
  
        my @words = shellwords ($_);
        my $type = shift @words;
          fatal "$file:$.: end-language missing for: $lang"
 --- a/bin/autoreconf.in
 +++ b/bin/autoreconf.in
-@@ -1,10 +1,12 @@
--#! @PERL@ -w
-+#! @PERL@
- # -*- perl -*-
- # @configure_input@
- eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac'
-     if 0;
+@@ -29,10 +29,13 @@ use 5.006;
+ use strict;
+ use warnings FATAL => 'all';
  
 +$^W = 1;
 +
- # autoreconf - install the GNU Build System in a directory tree
- # Copyright (C) 1994, 1999-2012 Free Software Foundation, Inc.
-@@ -26,7 +28,8 @@ eval 'case $# in 0) exec @PERL@ -S "$0";
+ my $buildauxdir;
  BEGIN
  {
 -  my $pkgdatadir = $ENV{'autom4te_perllibdir'} || '@pkgdatadir@';
 +      ($ENV{'STAGING_DIR_HOST'} ? $ENV{'STAGING_DIR_HOST'} . '/share/autoconf' : '@pkgdatadir@');
    unshift @INC, $pkgdatadir;
  
-   # Override SHELL.  On DJGPP SHELL may not be set to a shell
-@@ -106,9 +109,9 @@ Written by David J. MacKenzie and Akim D
+   $buildauxdir = $ENV{'autom4te_buildauxdir'} || $pkgdatadir . '/build-aux';
+@@ -117,9 +120,9 @@ Written by David J. MacKenzie and Akim D
  ";
  
  # Lib files.
--my $autoconf   = $ENV{'AUTOCONF'}   || '@bindir@/@autoconf-name@';
--my $autoheader = $ENV{'AUTOHEADER'} || '@bindir@/@autoheader-name@';
--my $autom4te   = $ENV{'AUTOM4TE'}   || '@bindir@/@autom4te-name@';
-+my $autoconf   = $ENV{'AUTOCONF'}   || ($ENV{'STAGING_DIR_HOST'} ? $ENV{'STAGING_DIR_HOST'} . '/bin/@autoconf-name@' : '@bindir@/@autoconf-name@');
-+my $autoheader = $ENV{'AUTOHEADER'} || ($ENV{'STAGING_DIR_HOST'} ? $ENV{'STAGING_DIR_HOST'} . '/bin/@autoheader-name@' : '@bindir@/@autoheader-name@');
-+my $autom4te   = $ENV{'AUTOM4TE'}   || ($ENV{'STAGING_DIR_HOST'} ? $ENV{'STAGING_DIR_HOST'} . '/bin/@autom4te-name@' : '@bindir@/@autom4te-name@');
- my $automake   = $ENV{'AUTOMAKE'}   || 'automake';
- my $aclocal    = $ENV{'ACLOCAL'}    || 'aclocal';
- my $libtoolize = $ENV{'LIBTOOLIZE'} || 'libtoolize';
+-my $autoconf    = $ENV{'AUTOCONF'}    || '@bindir@/@autoconf-name@';
+-my $autoheader  = $ENV{'AUTOHEADER'}  || '@bindir@/@autoheader-name@';
+-my $autom4te    = $ENV{'AUTOM4TE'}    || '@bindir@/@autom4te-name@';
++my $autoconf    = $ENV{'AUTOCONF'}    || ($ENV{'STAGING_DIR_HOST'} ? $ENV{'STAGING_DIR_HOST'} . '/bin/@autoconf-name@' : '@bindir@/@autoconf-name@');
++my $autoheader  = $ENV{'AUTOHEADER'}  || ($ENV{'STAGING_DIR_HOST'} ? $ENV{'STAGING_DIR_HOST'} . '/bin/@autoheader-name@' : '@bindir@/@autoheader-name@');
++my $autom4te    = $ENV{'AUTOM4TE'}    || ($ENV{'STAGING_DIR_HOST'} ? $ENV{'STAGING_DIR_HOST'} . '/bin/@autom4te-name@' : '@bindir@/@autom4te-name@');
+ my $automake    = $ENV{'AUTOMAKE'}    || 'automake';
+ my $aclocal     = $ENV{'ACLOCAL'}     || 'aclocal';
+ my $libtoolize  = $ENV{'LIBTOOLIZE'}  || 'libtoolize';
 --- a/bin/autoscan.in
 +++ b/bin/autoscan.in
-@@ -1,4 +1,4 @@
--#! @PERL@ -w
-+#! @PERL@
- # -*- perl -*-
- # @configure_input@
-@@ -23,9 +23,12 @@
- eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac'
-     if 0;
+@@ -28,9 +28,12 @@ use 5.006;
+ use strict;
+ use warnings FATAL => 'all';
  
 +$^W = 1;
 +
    unshift @INC, $pkgdatadir;
  
    # Override SHELL.  On DJGPP SHELL may not be set to a shell
-@@ -91,10 +94,10 @@ my $configure_scan = 'configure.scan';
+@@ -95,10 +98,10 @@ my %needed_macros =
  my $log;
  
  # Autoconf and lib files.
  # -----
 --- a/bin/autoupdate.in
 +++ b/bin/autoupdate.in
-@@ -1,4 +1,4 @@
--#! @PERL@ -w
-+#! @PERL@
- # -*- perl -*-
- # @configure_input@
-@@ -24,9 +24,12 @@
- eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac'
-     if 0;
+@@ -29,9 +29,12 @@ use 5.006;
+ use strict;
+ use warnings FATAL => 'all';
  
 +$^W = 1;
 +
    unshift @INC, $pkgdatadir;
  
    # Override SHELL.  On DJGPP SHELL may not be set to a shell
-@@ -50,10 +53,10 @@ my $autom4te = $ENV{'AUTOM4TE'} || '@bin
+@@ -55,10 +58,10 @@ my $autom4te = $ENV{'AUTOM4TE'} || '@bin
  my $autoconf = "$autom4te --language=autoconf";
  # We need to find m4sugar.
  my @prepend_include;
  # $HELP
 --- a/bin/ifnames.in
 +++ b/bin/ifnames.in
-@@ -1,10 +1,12 @@
--#! @PERL@ -w
-+#! @PERL@
- # -*- perl -*-
- # @configure_input@
- eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac'
-     if 0;
+@@ -33,9 +33,12 @@ use 5.006;
+ use strict;
+ use warnings FATAL => 'all';
  
 +$^W = 1;
 +
- # ifnames - print the identifiers used in C preprocessor conditionals
- # Copyright (C) 1994-1995, 1999-2003, 2005-2012 Free Software
-@@ -31,7 +33,8 @@ eval 'case $# in 0) exec @PERL@ -S "$0";
  BEGIN
  {
 -  my $pkgdatadir = $ENV{'autom4te_perllibdir'} || '@pkgdatadir@';
    # Override SHELL.  On DJGPP SHELL may not be set to a shell
 --- a/bin/autoconf.as
 +++ b/bin/autoconf.as
-@@ -84,7 +84,11 @@ exit_missing_arg='
+@@ -89,7 +89,11 @@ exit_missing_arg='
  # restore font-lock: '
  
  # Variables.
 +else
 +      : ${AUTOM4TE='@bindir@/@autom4te-name@'}
 +fi
+ : ${trailer_m4='@pkgdatadir@/autoconf/trailer.m4'}
  autom4te_options=
  outfile=
- verbose=false
diff --git a/tools/autoconf/patches/001-no_emacs_lib.patch b/tools/autoconf/patches/001-no_emacs_lib.patch
deleted file mode 100644 (file)
index 35c5164..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/lib/Makefile.am
-+++ b/lib/Makefile.am
-@@ -15,7 +15,7 @@
- # You should have received a copy of the GNU General Public License
- # along with this program.  If not, see <http://www.gnu.org/licenses/>.
--SUBDIRS = Autom4te m4sugar autoconf autotest autoscan emacs
-+SUBDIRS = Autom4te m4sugar autoconf autotest autoscan
- nodist_pkgdata_DATA = autom4te.cfg
- EXTRA_DIST = autom4te.in freeze.mk
---- a/lib/Makefile.in
-+++ b/lib/Makefile.in
-@@ -225,7 +225,7 @@ target_alias = @target_alias@
- top_build_prefix = @top_build_prefix@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--SUBDIRS = Autom4te m4sugar autoconf autotest autoscan emacs
-+SUBDIRS = Autom4te m4sugar autoconf autotest autoscan
- nodist_pkgdata_DATA = autom4te.cfg
- EXTRA_DIST = autom4te.in freeze.mk
- edit = sed \
diff --git a/tools/autoconf/patches/002-musl_host_fixup.patch b/tools/autoconf/patches/002-musl_host_fixup.patch
deleted file mode 100644 (file)
index 4dcb1ec..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/build-aux/config.sub
-+++ b/build-aux/config.sub
-@@ -122,9 +122,9 @@ esac
- # Here we must recognize all the valid KERNEL-OS combinations.
- maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
- case $maybe_os in
--  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
--  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
--  knetbsd*-gnu* | netbsd*-gnu* | \
-+  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-musl* | \
-+  linux-newlib* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
-+  kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
-   kopensolaris*-gnu* | \
-   storm-chaos* | os2-emx* | rtmk-nova*)
-     os=-$maybe_os
-@@ -1360,7 +1360,7 @@ case $os in
-             | -chorusos* | -chorusrdb* | -cegcc* \
-             | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-             | -mingw32* | -linux-gnu* | -linux-android* \
--            | -linux-newlib* | -linux-uclibc* \
-+            | -linux-musl* | -linux-newlib* | -linux-uclibc* \
-             | -uxpv* | -beos* | -mpeix* | -udk* \
-             | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
-             | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \