[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] {master} Deprecate obsoleted macro AM_WITH_REGEX.
From: |
Stefano Lattarini |
Subject: |
Re: [PATCH] {master} Deprecate obsoleted macro AM_WITH_REGEX. |
Date: |
Sat, 13 Nov 2010 13:39:04 +0100 |
User-agent: |
KMail/1.13.3 (Linux/2.6.30-2-686; KDE/4.4.4; i686; ; ) |
On Saturday 13 November 2010, Ralf Wildenhues wrote:
> * Stefano Lattarini wrote on Sat, Nov 13, 2010 at 12:32:49PM CET:
> > * m4/regex.m4: Document the `AM_WITH_REGEX' macro as obsoleted,
>
> I think technically "obsolete" is right here, without trailing "d".
OK. All instances fixed.
> > and tell that it should be removed two years from now.
>
> s/tell/state/
Fixed.
> > (AM_WITH_REGEX): Raise an m4-time warning of the "obsolete"
> > category when this macro is used.
> > * doc/automake.texi (Public Macros): Move description of
> > `AM_WITH_REGEX' from here ...
> > (Private Macros): ... to here, and declare it as obsoleted and
>
> Did you mean (Obsolete Macros) here?
Yes, sorry.
> > "to be removed in a future version".
> > * tests/regex-obsolete.test: New test.
>
> That file is missing from the patch.
Hmpf, forgotten `git add'. Sorry for the slopppiness.
> Please resend and I'll finish the review.
>
> > * tests/Makefile.am (TESTS): Update.
>
> > address@hidden AM_WITH_REGEX
> > address@hidden AM_WITH_REGEX
> > address@hidden WITH_REGEX
> > address@hidden --with-regex
> > address@hidden regex package
> > address@hidden rx package
> > +Adds @option{--with-regex} to the @command{configure} command line. If
> > +specified (the default), then the @samp{regex} regular expression
> > +library is used, @file{regex.o} is put into @code{LIBOBJS}, and
> > address@hidden is defined. If @option{--without-regex} is given, then
> > +the @code{rx} regular expression library is used, and @file{rx.o} is put
> > +into @code{LIBOBJS}. This macro is obsolete now (since rx doesn't seem
> > +to be maintained), and will be removed in a future version of Automake.
>
> Is rx a package? Where did you find traces to it?
There was this in automake.texi:
"@cindex rx package"
Also, older comments in m4/regex.m4 read:
# FIXME: This macro seems quite obsolete now since rx doesn't seem to
# be maintained, while regex is.
But I agree that the warning in AM_WITH_REGEX could be simplified to:
"$0 is obsolete, since `rx' is unmantained now"
That's what I've done in the attached amended patch.
> How about adding "Consider using gnulib if you need regex
> functionality."?
OK, done.
Thanks,
Stefano
From 37b0aeedba10f06a079228a576a813536d188108 Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Sat, 13 Nov 2010 12:21:28 +0100
Subject: [PATCH] Deprecate obsolete macro AM_WITH_REGEX.
* m4/regex.m4: Document the `AM_WITH_REGEX' macro as obsolete,
and state that it should be removed two years from now.
(AM_WITH_REGEX): Raise an m4-time warning of the "obsolete"
category when this macro is used.
* doc/automake.texi (Public Macros): Move description of
`AM_WITH_REGEX' from here ...
(Obsolete Macros): ... to here, and declare it as obsolete
and "to be removed in a future version".
* tests/regex-obsolete.test: New test.
* tests/Makefile.am (TESTS): Update.
---
ChangeLog | 14 ++++++++++++++
doc/automake.texi | 28 +++++++++++++++-------------
m4/regex.m4 | 12 +++++++-----
tests/Makefile.am | 1 +
tests/Makefile.in | 1 +
tests/regex-obsolete.test | 32 ++++++++++++++++++++++++++++++++
6 files changed, 70 insertions(+), 18 deletions(-)
create mode 100755 tests/regex-obsolete.test
diff --git a/ChangeLog b/ChangeLog
index 24b20ae..2091761 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2010-11-13 Stefano Lattarini <address@hidden>
+
+ Deprecate obsolete macro AM_WITH_REGEX.
+ * m4/regex.m4: Document the `AM_WITH_REGEX' macro as obsolete,
+ and state that it should be removed two years from now.
+ (AM_WITH_REGEX): Raise an m4-time warning of the "obsolete"
+ category when this macro is used.
+ * doc/automake.texi (Public Macros): Move description of
+ `AM_WITH_REGEX' from here ...
+ (Obsolete Macros): ... to here, and declare it as obsolete
+ and "to be removed in a future version".
+ * tests/regex-obsolete.test: New test.
+ * tests/Makefile.am (TESTS): Update.
+
2010-11-08 Stefano Lattarini <address@hidden>
Improve and extend tests on man pages support.
diff --git a/doc/automake.texi b/doc/automake.texi
index 5ae565c..c4a1902 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -3921,19 +3921,6 @@ Add support for the @uref{http://dmalloc.com/, Dmalloc
package}. If
the user runs @command{configure} with @option{--with-dmalloc}, then
define @code{WITH_DMALLOC} and add @option{-ldmalloc} to @code{LIBS}.
address@hidden AM_WITH_REGEX
address@hidden AM_WITH_REGEX
address@hidden WITH_REGEX
address@hidden --with-regex
address@hidden regex package
address@hidden rx package
-Adds @option{--with-regex} to the @command{configure} command line. If
-specified (the default), then the @samp{regex} regular expression
-library is used, @file{regex.o} is put into @code{LIBOBJS}, and
address@hidden is defined. If @option{--without-regex} is given, then
-the @code{rx} regular expression library is used, and @file{rx.o} is put
-into @code{LIBOBJS}.
-
@end table
@@ -4009,6 +3996,21 @@ system. If so, set the shell variable
@code{am_cv_sys_posix_termios} to
@samp{yes}. If not, set the variable to @samp{no}. This macro is obsolete,
you should use Autoconf's @code{AC_SYS_POSIX_TERMIOS} instead.
address@hidden AM_WITH_REGEX
address@hidden AM_WITH_REGEX
address@hidden WITH_REGEX
address@hidden --with-regex
address@hidden regex package
address@hidden rx package
+Adds @option{--with-regex} to the @command{configure} command line. If
+specified (the default), then the @samp{regex} regular expression
+library is used, @file{regex.o} is put into @code{LIBOBJS}, and
address@hidden is defined. If @option{--without-regex} is given, then
+the @samp{rx} regular expression library is used, and @file{rx.o} is put
+into @code{LIBOBJS}. This macro is obsolete now (since @samp{rx} doesn't
+seem to be maintained), and will be removed in a future version of
+Automake. Consider using gnulib if you need regex functionality.
+
@end table
diff --git a/m4/regex.m4 b/m4/regex.m4
index c05bb38..a453930 100644
--- a/m4/regex.m4
+++ b/m4/regex.m4
@@ -1,18 +1,21 @@
## --------------------------------- ## -*- Autoconf -*-
## Check if --with-regex was given. ##
## --------------------------------- ##
-# Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-# Free Software Foundation, Inc.
+# Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+# 2010 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 7
+# serial 8
# AM_WITH_REGEX
# -------------
#
+# THIS MACRO IS OBSOLETE now, since rx doesn't seem to be maintained,
+# while regex is. This macro should be removed on 2013-01-01.
+#
# The idea is to distribute rx.[hc] and regex.[hc] together, for a
# while. The WITH_REGEX symbol is used to decide which of regex.h or
# rx.h should be included in the application. If `./configure
@@ -23,10 +26,9 @@
# package will use the system's rx which, on Linux at least, will
# result in a smaller executable file.
#
-# FIXME: This macro seems quite obsolete now since rx doesn't seem to
-# be maintained, while regex is.
AC_DEFUN([AM_WITH_REGEX],
[AC_PREREQ(2.50)dnl
+m4_warn([obsolete], [$0 is obsolete, since `rx' is unmantained now])dnl
AC_LIBSOURCES([rx.h, rx.c, regex.c, regex.h])dnl
AC_MSG_CHECKING([which of GNU rx or gawk's regex is wanted])
AC_ARG_WITH([regex],
diff --git a/tests/Makefile.am b/tests/Makefile.am
index a604da5..a221ffb 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -701,6 +701,7 @@ remake5.test \
remake6.test \
remake7.test \
regex.test \
+regex-obsolete.test \
req.test \
reqd.test \
reqd2.test \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 142ba54..d6a6877 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -963,6 +963,7 @@ remake5.test \
remake6.test \
remake7.test \
regex.test \
+regex-obsolete.test \
req.test \
reqd.test \
reqd2.test \
diff --git a/tests/regex-obsolete.test b/tests/regex-obsolete.test
new file mode 100755
index 0000000..c283025
--- /dev/null
+++ b/tests/regex-obsolete.test
@@ -0,0 +1,32 @@
+#! /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/>.
+
+# Check tha the AM_WITH_REGEX macro is reported as obsolete.
+
+. ./defs || Exit 1
+
+set -e
+
+cat >> configure.in << 'END'
+AM_WITH_REGEX
+END
+
+$ACLOCAL
+$AUTOCONF -Werror -Wobsolete 2>stderr && { cat stderr >&2; Exit 1; }
+cat stderr >&2
+grep '^configure\.in:.*AM_WITH_REGEX.*obsolete' stderr
+
+:
--
1.7.1