summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefano Lattarini <stefano.lattarini@gmail.com>2011-10-29 12:15:59 +0200
committerStefano Lattarini <stefano.lattarini@gmail.com>2011-11-03 11:26:10 +0100
commita45c636491dda9b628266c2dfed5457a90baba1e (patch)
treef54410e3e8f8ca3ab61d32b54e1bb916e0612498
parentcb9f2c28b2cb8bdcc942468008765598f87f425c (diff)
downloadautomake-a45c636491dda9b628266c2dfed5457a90baba1e.tar.gz
maint-mode: fix botched configure messages
This change fixes automake bug#9890. * m4/maintainer.m4 (AM_MAINTAINER_MODE): Fix the "checking ..." configure message related to the enabling/disabling of maintainer mode. * tests/help-maintainer.test: Renamed ... * tests/maintmode-configure-msg.test: ... to this, and extended to cover the fixed bug. Also, since we are at it, make grepping of configure help screens stricter, and throw in some few other changes to reduce code duplication and enhance readability. * tests/Makefile.am (TESTS): Update. * THANKS: Update with Zack's new e-mail address. Report and initial patch by Zack Weinberg, test cases added by Stefano Lattarini.
-rw-r--r--ChangeLog18
-rw-r--r--THANKS2
-rw-r--r--m4/maintainer.m46
-rw-r--r--tests/Makefile.am2
-rw-r--r--tests/Makefile.in2
-rwxr-xr-xtests/help-maintainer.test61
-rwxr-xr-xtests/maintmode-configure-msg.test79
7 files changed, 103 insertions, 67 deletions
diff --git a/ChangeLog b/ChangeLog
index 39c661c67..74e27dddf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,21 @@
+2011-11-03 Zack Weinberg <zackw@panix.com> (tiny change)
+ Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ maint-mode: fix botched configure messages
+ This change fixes automake bug#9890.
+ * m4/maintainer.m4 (AM_MAINTAINER_MODE): Fix the "checking ..."
+ configure message related to the enabling/disabling of maintainer
+ mode.
+ * tests/help-maintainer.test: Renamed ...
+ * tests/maintmode-configure-msg.test: ... to this, and extended
+ to cover the fixed bug. Also, since we are at it, make grepping
+ of configure help screens stricter, and throw in some few other
+ changes to reduce code duplication and enhance readability.
+ * tests/Makefile.am (TESTS): Update.
+ * THANKS: Update with Zack's new e-mail address.
+ Report and initial patch by Zack Weinberg, test cases added by
+ Stefano Lattarini.
+
2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
deps: partially revert commit `v1.11-512-geeee551'
diff --git a/THANKS b/THANKS
index eae683fef..37f7cce0e 100644
--- a/THANKS
+++ b/THANKS
@@ -366,7 +366,7 @@ William Pursell bill.pursell@gmail.com
William S Fulton wsf@fultondesigns.co.uk
Yann Droneaud ydroneaud@meuh.eu.org
Younes Younes younes@cs.tu-berlin.de
-Zack Weinberg zack@codesourcery.com
+Zack Weinberg zackw@panix.com
Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl
Zoltan Rado z.rado@chello.hu
diff --git a/m4/maintainer.m4 b/m4/maintainer.m4
index 0b54e67ed..085e96cdf 100644
--- a/m4/maintainer.m4
+++ b/m4/maintainer.m4
@@ -1,8 +1,8 @@
# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
# From Jim Meyering
-# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008,
+# 2011 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -22,7 +22,7 @@ AC_DEFUN([AM_MAINTAINER_MODE],
[disable], [m4_define([am_maintainer_other], [enable])],
[m4_define([am_maintainer_other], [enable])
m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
-AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles])
+AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
dnl maintainer-mode's default is 'disable' unless 'enable' is passed
AC_ARG_ENABLE([maintainer-mode],
[ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful
diff --git a/tests/Makefile.am b/tests/Makefile.am
index c16eb9fbd..dfa97812f 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -422,7 +422,6 @@ help-depend2.test \
help-dmalloc.test \
help-init.test \
help-lispdir.test \
-help-maintainer.test \
help-multilib.test \
help-python.test \
help-regex.test \
@@ -548,6 +547,7 @@ lzma.test \
m4-inclusion.test \
maintclean.test \
maintclean-vpath.test \
+maintmode-configure-msg.test \
make.test \
makej.test \
makej2.test \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 65e8d7fa1..248b6ba1c 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -706,7 +706,6 @@ help-depend2.test \
help-dmalloc.test \
help-init.test \
help-lispdir.test \
-help-maintainer.test \
help-multilib.test \
help-python.test \
help-regex.test \
@@ -832,6 +831,7 @@ lzma.test \
m4-inclusion.test \
maintclean.test \
maintclean-vpath.test \
+maintmode-configure-msg.test \
make.test \
makej.test \
makej2.test \
diff --git a/tests/help-maintainer.test b/tests/help-maintainer.test
deleted file mode 100755
index 6933d0c65..000000000
--- a/tests/help-maintainer.test
+++ /dev/null
@@ -1,61 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2010 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/>.
-
-# Make sure that our macro `AM_MAINTAINER_MODE' adds proper text to
-# the configure help screen.
-
-. ./defs || Exit 1
-
-set -e
-
-cat > configure.in <<END
-AC_INIT([$me], [1.0])
-AM_MAINTAINER_MODE
-END
-
-cat configure.in
-$ACLOCAL
-$AUTOCONF --force
-./configure --help >stdout || { cat stdout; Exit 1; }
-cat stdout
-$EGREP '^ *--enable-maintainer-mode( |$)' stdout
-$FGREP ' enable make rules' stdout
-
-rm -rf autom4te*.cache # just to be sure
-sed 's/\(AM_MAINTAINER_MODE\).*/\1([disable])/' configure.in >t
-mv -f t configure.in
-
-cat configure.in
-$ACLOCAL
-$AUTOCONF --force
-./configure --help >stdout || { cat stdout; Exit 1; }
-cat stdout
-$EGREP '^ *--enable-maintainer-mode( |$)' stdout
-$FGREP ' enable make rules' stdout
-
-rm -rf autom4te*.cache # just to be sure
-sed 's/\(AM_MAINTAINER_MODE\).*/\1([enable])/' configure.in >t
-mv -f t configure.in
-
-cat configure.in
-$ACLOCAL
-$AUTOCONF --force
-./configure --help >stdout || { cat stdout; Exit 1; }
-cat stdout
-$EGREP '^ *--disable-maintainer-mode( |$)' stdout
-$FGREP ' disable make rules' stdout
-
-:
diff --git a/tests/maintmode-configure-msg.test b/tests/maintmode-configure-msg.test
new file mode 100755
index 000000000..5771392c8
--- /dev/null
+++ b/tests/maintmode-configure-msg.test
@@ -0,0 +1,79 @@
+#! /bin/sh
+# Copyright (C) 2010, 2011 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/>.
+
+# Make sure that our macro `AM_MAINTAINER_MODE' adds proper text to
+# the configure help screen. Also make sure the "checking ..." messages
+# related to the enabling/disabling of maintainer mode are correct (see
+# automake bug#9890).
+
+. ./defs || Exit 1
+
+set -e
+
+set_maintmode ()
+{
+ rm -rf autom4te*.cache # Just to be sure not to use a stale cache.
+ echo "AC_INIT([$me], [1.0])" > configure.in
+ case $1 in
+ DEFAULT) echo AM_MAINTAINER_MODE;;
+ *) echo "AM_MAINTAINER_MODE([$*])";;
+ esac >> configure.in
+}
+
+check_configure_message_with ()
+{
+ answer=$1; shift
+ ./configure ${1+"$@"} >stdout || { cat stdout; Exit 1; }
+ cat stdout
+ grep "^checking whether to enable maintainer-specific.*\\.\\.\\. $answer$" stdout
+ test `grep -c 'checking.*maint' stdout` -eq 1
+ :
+}
+
+set_maintmode "DEFAULT"
+
+$ACLOCAL
+
+$AUTOCONF --force
+
+./configure --help >stdout || { cat stdout; Exit 1; }
+cat stdout
+grep '^ *--enable-maintainer-mode.* enable make rules' stdout
+
+check_configure_message_with "no"
+check_configure_message_with "yes" --enable-maintainer-mode
+
+set_maintmode "disable"
+
+$AUTOCONF --force
+./configure --help >stdout || { cat stdout; Exit 1; }
+cat stdout
+grep '^ *--enable-maintainer-mode.* enable make rules' stdout
+
+check_configure_message_with "no"
+check_configure_message_with "yes" --enable-maintainer-mode
+
+set_maintmode "enable"
+
+$AUTOCONF --force
+./configure --help >stdout || { cat stdout; Exit 1; }
+cat stdout
+grep '^ *--disable-maintainer-mode.* disable make rules' stdout
+
+check_configure_message_with "yes"
+check_configure_message_with "no" --disable-maintainer-mode
+
+: