summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2012-10-22 16:14:49 +0200
committerJim Meyering <jim@meyering.net>2012-10-26 12:48:38 +0200
commitdf23dafc30d54164035281aec1f6ce14d0f4b0fc (patch)
tree78c472187cb4614cde335fdef589e44561742c5d /doc
parent7411adcdad588acf2a167dd05e5a942fa752e90e (diff)
downloadautomake-df23dafc30d54164035281aec1f6ce14d0f4b0fc.tar.gz
compat: reinstate AM_PROG_MKDIR_P, for gettext
Do not remove AM_PROG_MKDIR_P just yet. gettext (latest from git) still AC_REQUIRE's AM_PROG_MKDIR_P via its intl.m4 and po.m4 files, which are pulled into *many* projects. When I try to build one of those projects (coreutils) using the latest from automake.git/master, I see this failure: $ aclocal -I m4 configure.ac:477: warning: AM_PROG_MKDIR_P is m4_require'd \ but not m4_defun'd m4/po.m4:23: AM_PO_SUBDIRS is expanded from... m4/gettext.m4:57: AM_GNU_GETTEXT is expanded from... configure.ac:477: the top level That is because AM_PROG_MKDIR_P was removed (via commit v1.12-20-g8a1c64f) in preparation for the next release of automake. * NEWS: Remove the paragraph that announced the removal of AM_PROG_MKDIR_P. * Makefile.am (dist_automake_ac_DATA): Add m4/mkdirp.m4. * m4/mkdirp.m4: Re-add file. * t/mkdirp-deprecation.sh: Likewise. * t/list-of-tests.mk: Add it. * automake.in: Restore removed code, and adjust comments, s/1.13/1.14/ to reflect new plan for removal. * doc/automake.texi (Obsolete Macros): Restore the section, but now with only one entry: the one for AM_PROG_MKDIR_P.
Diffstat (limited to 'doc')
-rw-r--r--doc/automake.texi40
1 files changed, 40 insertions, 0 deletions
diff --git a/doc/automake.texi b/doc/automake.texi
index 7058545ec..40d3fc0b7 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -3880,6 +3880,7 @@ Automake ships with several Autoconf macros that you can use from your
@menu
* Public Macros:: Macros that you can use.
+* Obsolete Macros:: Macros that will soon be removed.
* Private Macros:: Macros that you should not use.
@end menu
@@ -4046,6 +4047,45 @@ define @code{WITH_DMALLOC} and add @option{-ldmalloc} to @code{LIBS}.
@end table
+@node Obsolete Macros
+@subsection Obsolete Macros
+@cindex obsolete macros
+@cindex autoupdate
+
+Although using some of the following macros was required in past
+releases, you should not use any of them in new code. @emph{All
+these macros will be removed in the next major Automake version};
+if you are still using them, running @command{autoupdate} should
+adjust your @file{configure.ac} automatically (@pxref{autoupdate
+Invocation, , Using @command{autoupdate} to Modernize
+@file{configure.ac}, autoconf, The Autoconf Manual}).
+@emph{Do it NOW!}
+
+@table @code
+
+@item AM_PROG_MKDIR_P
+@acindex AM_PROG_MKDIR_P
+@cindex @code{mkdir -p}, macro check
+@vindex MKDIR_P
+@vindex mkdir_p
+
+From Automake 1.8 to 1.9.6 this macro used to define the output
+variable @code{mkdir_p} to one of @code{mkdir -p}, @code{install-sh
+-d}, or @code{mkinstalldirs}.
+
+Nowadays Autoconf provides a similar functionality with
+@code{AC_PROG_MKDIR_P} (@pxref{Particular Programs, , Particular
+Program Checks, autoconf, The Autoconf Manual}), however this defines
+the output variable @code{MKDIR_P} instead. In case you are still
+using the @code{AM_PROG_MKDIR_P} macro in your @file{configure.ac},
+or its provided variable @code{$(mkdir_p)} in your @file{Makefile.am},
+you are advised to switch ASAP to the more modern Autoconf-provided
+interface instead; both the macro and the variable @emph{will be
+removed} in the next major Automake release.
+
+@end table
+
+
@node Private Macros
@subsection Private Macros