[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 1/5] Drop support for 'configure.in' as the Autoconf input file
From: |
Stefano Lattarini |
Subject: |
[PATCH 1/5] Drop support for 'configure.in' as the Autoconf input file |
Date: |
Sat, 29 Dec 2012 00:39:22 +0100 |
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 2b64a1e..76546c7 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 0c06401..68e9339 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 fcaf0f7..e53913a 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 1a1bb94..0000000
--- 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 <http://www.gnu.org/licenses/>.
-
-# 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 <<EOF
-AC_INIT([$me], [1.0])
-AM_INIT_AUTOMAKE
-AC_CONFIG_FILES([Makefile])
-EOF
-
-cat >configure.in <<EOF
-AC_INIT([$me], [1.0])
-AM_INIT_AUTOMAKE([an-invalid-automake-option])
-AC_CONFIG_FILES([Makefile])
-EOF
-
-: >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 c4e5112..827b0c5 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 \
--
1.8.0.1.409.g252f922