automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: automake/511: ./config.status in generated makefile conflicts with A


From: Ralf Wildenhues
Subject: Re: automake/511: ./config.status in generated makefile conflicts with AM_MAKEFLAGS=-f alternativemakefilename
Date: Sun, 12 Nov 2006 18:33:52 +0100
User-agent: Mutt/1.5.13 (2006-08-11)

* address@hidden wrote on Sat, Oct 28, 2006 at 04:25:32PM CEST:
> Synopsis: ./config.status in generated makefile conflicts with 
> AM_MAKEFLAGS=-f alternativemakefilename
> 
> State-Changed-From-To: open->closed

Following up on this, here is a proposed patch to make automake warn.

OK to apply?  (make check is still running.)

Cheers,
Ralf

2006-11-12  Ralf Wildenhues  <address@hidden>

        * automake.in (scan_autoconf_config_files): Warn about leading
        `./' in config file names.
        * tests/canon-name.test: New test.
        * tests/Makefile.am: Update.
        * THANKS: Update.
        Suggestion by Claudio Fontana.

Index: THANKS
===================================================================
RCS file: /cvs/automake/automake/THANKS,v
retrieving revision 1.296
diff -u -r1.296 THANKS
--- THANKS      16 Oct 2006 05:24:17 -0000      1.296
+++ THANKS      12 Nov 2006 17:31:00 -0000
@@ -47,6 +47,7 @@
 Charles Wilson         address@hidden
 Chris Provenzano       address@hidden
 Christian Cornelssen   address@hidden
+Claudio Fontana                address@hidden
 Clifford Wolf          address@hidden
 Dalibor Topic          address@hidden
 danbp                  address@hidden
Index: automake.in
===================================================================
RCS file: /cvs/automake/automake/automake.in,v
retrieving revision 1.1641
diff -u -r1.1641 automake.in
--- automake.in 16 Oct 2006 05:24:17 -0000      1.1641
+++ automake.in 12 Nov 2006 17:29:12 -0000
@@ -4753,6 +4753,10 @@
       # Handle $local:$input syntax.
       my ($local, @rest) = split (/:/);
       @rest = ("$local.in",) unless @rest;
+      msg ('portability', $where,
+         "Omit leading `./' from config file names such as `$local',"
+         . "\nas not all make implementations treat `file' and `./file' 
equally.")
+       if ($local =~ /^\.\//);
       my $input = locate_am @rest;
       if ($input)
         {
Index: tests/Makefile.am
===================================================================
RCS file: /cvs/automake/automake/tests/Makefile.am,v
retrieving revision 1.617
diff -u -r1.617 Makefile.am
--- tests/Makefile.am   16 Oct 2006 05:24:17 -0000      1.617
+++ tests/Makefile.am   12 Nov 2006 17:29:12 -0000
@@ -78,6 +79,7 @@
 canon3.test \
 canon4.test \
 canon5.test \
+canon-name.test \
 ccnoco.test \
 ccnoco2.test \
 check.test \
--- /dev/null   2006-11-12 18:30:05.160373500 +0100
+++ tests/canon-name.test       2006-11-12 18:29:55.000000000 +0100
@@ -0,0 +1,39 @@
+#! /bin/sh
+# Copyright (C) 2006  Free Software Foundation, Inc.
+#
+# This file is part of GNU Automake.
+#
+# GNU Automake 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.
+#
+# GNU Automake 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 Automake; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+# Boston, MA 02110-1301, USA.
+
+# PR 511: Make sure we warn about AC_CONFIG_FILES([./makefile]).
+
+. ./defs || exit 1
+
+cat > configure.in << 'END'
+AC_INIT([canon-name], [1.0])
+AM_INIT_AUTOMAKE
+AC_CONFIG_FILES([./gmakefile ./sub/gmakefile])
+AC_OUTPUT
+END
+
+mkdir sub
+echo 'SUBDIRS = sub' >gmakefile.am
+: >sub/gmakefile.am
+
+$ACLOCAL
+AUTOMAKE_fails
+grep 'leading.*\./.*\./gmakefile' stderr
+grep 'leading.*\./.*\./sub/gmakefile' stderr




reply via email to

[Prev in Thread] Current Thread [Next in Thread]