From bff57c887dbd57ace4860b8cd83100cfca02f930 Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Fri, 25 May 2012 17:50:59 +0200 Subject: [PATCH] Drop support for 'configure.in' as the Autoconf input file The autoconf input should be named 'configure.ac' instead. The use of 'configure.in' has been deprecated in Autoconf since at least the 2.13 -> 2.50 transition, and future Autoconf versions (starting with 2.70 probably) will start to warn about it at runtime. Automake has been warning about it since the 1.13 release. This change is basically a backport of commit 'v1.12-325-g927d4cb', from Automake-NG. * lib/Automake/Configure_ac.pm (find_configure_ac): Don't look for 'configure.in' if 'configure.ac' is not found. (require_configure_ac): On failure, don't tell that "'configure.ac' or 'configure.in' is required", but just that "'configure.ac' is required". * automake.in (@common_sometimes): Don't list 'configure.in'. (scan_autoconf_files): Adjust heading comments. * NEWS: Update. * t/help.sh: Adjust. * t/configure.sh: Remove as obsolete. * t/list-of-tests.mk: Adjust. --- NEWS | 4 +++ automake.in | 3 +- lib/Automake/Configure_ac.pm | 23 +------------- t/configure.sh | 59 ------------------------------------ t/list-of-tests.mk | 1 - 5 files changed, 6 insertions(+), 84 deletions(-) delete mode 100755 t/configure.sh diff --git a/NEWS b/NEWS index 2b64a1e35..76546c746 100644 --- a/NEWS +++ b/NEWS @@ -13,6 +13,10 @@ New in 1.14: * Obsolete and obsolescent features: + - Support for the long-deprecated name 'configure.in' for the Autoconf + input file has been removed altogether. Just use the modern name + 'configure.ac' instead. + - Support for the long-obsolete variable $(ACLOCAL_M4_SOURCES) has been removed. It should be safe to simply remove any definition of it you have in your Makefiles. diff --git a/automake.in b/automake.in index 0c06401c3..68e933943 100644 --- a/automake.in +++ b/automake.in @@ -231,7 +231,7 @@ my @common_files = # is used for the --help output only. my @common_sometimes = qw(aclocal.m4 acconfig.h config.h.top config.h.bot configure - configure.ac configure.in stamp-vti); + configure.ac stamp-vti); # Standard directories from the GNU Coding Standards, and additional # pkg* directories from Automake. Stored in a hash for fast member check. @@ -5390,7 +5390,6 @@ EOF # &scan_autoconf_files () # ----------------------- -# Check whether we use 'configure.ac' or 'configure.in'. # Scan it (and possibly 'aclocal.m4') for interesting things. # We must scan aclocal.m4 because there might be AC_SUBSTs and such there. sub scan_autoconf_files () diff --git a/lib/Automake/Configure_ac.pm b/lib/Automake/Configure_ac.pm index fcaf0f75c..e53913a5c 100644 --- a/lib/Automake/Configure_ac.pm +++ b/lib/Automake/Configure_ac.pm @@ -70,28 +70,7 @@ sub find_configure_ac (;@) { my ($directory) = @_; $directory ||= '.'; - my $configure_ac = - File::Spec->canonpath (File::Spec->catfile ($directory, 'configure.ac')); - my $configure_in = - File::Spec->canonpath (File::Spec->catfile ($directory, 'configure.in')); - - if (-f $configure_in) - { - msg ('obsolete', "autoconf input should be named 'configure.ac'," . - " not 'configure.in'"); - if (-f $configure_ac) - { - msg ('unsupported', - "'$configure_ac' and '$configure_in' both present.\n" - . "proceeding with '$configure_ac'"); - return $configure_ac - } - else - { - return $configure_in; - } - } - return $configure_ac; + return File::Spec->canonpath (File::Spec->catfile ($directory, 'configure.ac')); } diff --git a/t/configure.sh b/t/configure.sh deleted file mode 100755 index 1a1bb94ad..000000000 --- a/t/configure.sh +++ /dev/null @@ -1,59 +0,0 @@ -#! /bin/sh -# Copyright (C) 2010-2012 Free Software Foundation, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# Diagnose if the autoconf input is named configure.in. -# Diagnose if both configure.in and configure.ac are present, prefer -# configure.ac. - -. test-init.sh - -cat >configure.ac <configure.in <Makefile.am - -$ACLOCAL 2>stderr && { cat stderr >&2; exit 1; } -cat stderr >&2 -grep 'configure\.ac.*configure\.in.*both present' stderr - -$ACLOCAL -Wno-error 2>stderr || { cat stderr >&2; exit 1; } -cat stderr >&2 -grep 'configure\.ac.*configure\.in.*both present' stderr -grep 'proceeding.*configure\.ac' stderr - -# Ensure we really proceed with configure.ac. -AUTOMAKE_fails -Werror -grep 'configure\.ac.*configure\.in.*both present' stderr -grep 'proceeding.*configure\.ac' stderr - -AUTOMAKE_run -Wno-error -grep 'configure\.ac.*configure\.in.*both present' stderr -grep 'proceeding.*configure\.ac' stderr - -mv -f configure.ac configure.in -AUTOMAKE_fails -grep "autoconf input.*'configure.ac', not 'configure.in'" stderr - -: diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk index c4e511297..827b0c505 100644 --- a/t/list-of-tests.mk +++ b/t/list-of-tests.mk @@ -315,7 +315,6 @@ t/condinc2.sh \ t/condlib.sh \ t/condman2.sh \ t/condman3.sh \ -t/configure.sh \ t/confdeps.sh \ t/conff.sh \ t/conff2.sh \ -- 2.47.2