document configmake in the manual instead of the source
authorKarl Berry <karl@freefriends.org>
Mon, 10 Jan 2011 00:30:27 +0000 (16:30 -0800)
committerKarl Berry <karl@freefriends.org>
Mon, 10 Jan 2011 00:30:27 +0000 (16:30 -0800)
ChangeLog
doc/configmake.texi [new file with mode: 0644]
doc/gnulib.texi
modules/configmake

index 15fb92f2149d555a5b31346d6e9f421a8d9ea25a..2b37ac01b9d0901177ad406a207b00f6ca7586a9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2011-01-09  Karl Berry  <karl@gnu.org>
+
+       * doc/configmake.texi: New file.
+       * doc/gnulib.texi: Include it.
+       * modules/configmake: Move documentation from here.
+
 2011-01-09  Bruno Haible  <bruno@clisp.org>
 
        Update to Unicode 6.0.0.
diff --git a/doc/configmake.texi b/doc/configmake.texi
new file mode 100644 (file)
index 0000000..a6f161e
--- /dev/null
@@ -0,0 +1,31 @@
+@node configmake
+@section configmake
+
+@findex configmake @r{module}
+@cindex @file{configmake.h}, module for updating
+
+The @code{configmake} module builds a C include file named
+@file{configmake.h} containing the usual installation directory
+values; for example, those specified by @code{--prefix} or
+@code{--libdir} to configure.  Each variable is given a @code{#define}
+with an all-uppercase macro name, such as @code{PREFIX} and
+@code{LIBDIR}.  (Automake cannot create this file directly because the
+user might override directory values at @code{make} time.)
+
+Specifically, the module retrieves values of the variables through
+@code{configure} followed by @code{make}, not directly through
+@code{configure}, so that a user who sets some of these variables
+consistently on the @code{make} command line gets correct results.
+
+One advantage of this approach, compared to the classical approach of
+adding @code{-DLIBDIR=\"$(libdir)\"} etc.@: to @code{AM_CPPFLAGS}, is
+that it protects against the use of undefined variables.  That is, if,
+say, @code{$(libdir)} is not set in the Makefile, @code{LIBDIR} is not
+defined by this module, and code using @code{LIBDIR} gives a
+compilation error.
+
+Another advantage is that @code{make} output is shorter.
+
+For the complete list of variables which are @code{#define}d this way,
+see the file @file{gnulib/modules/configmake}, or inspect your
+resulting gnulib Makefile.
index 82efeeab6575ae3ad7002cc42b18b8eb056fa02f..966560d595aa52f9714e3a9e102a838adaf312f1 100644 (file)
@@ -6496,6 +6496,7 @@ This list of functions is sorted according to the header that declares them.
 * Visual Studio Compatibility::
 * Supporting Relocation::
 * func::
+* configmake::
 * warnings::
 * manywarnings::
 * Running self-tests under valgrind::
@@ -6583,6 +6584,8 @@ ASCII characters.
 
 @include func.texi
 
+@include configmake.texi
+
 @include warnings.texi
 
 @include manywarnings.texi
index c9af25912d3b75f5e6796c3e1913aa1fb34651a4..a387984a37d7138b4c9d418393436469d8ce02fd 100644 (file)
@@ -1,5 +1,5 @@
 Description:
-Variables set by "configure" or "make".
+Access from source code to variables set by "configure" or "make".
 
 Files:
 m4/configmake.m4
@@ -10,20 +10,6 @@ configure.ac:
 gl_CONFIGMAKE_PREP
 
 Makefile.am:
-# Retrieve values of the variables through 'configure' followed by
-# 'make', not directly through 'configure', so that a user who
-# sets some of these variables consistently on the 'make' command
-# line gets correct results.
-#
-# One advantage of this approach, compared to the classical
-# approach of adding -DLIBDIR=\"$(libdir)\" etc. to AM_CPPFLAGS,
-# is that it protects against the use of undefined variables.
-# If, say, $(libdir) is not set in the Makefile, LIBDIR is not
-# defined by this module, and code using LIBDIR gives a
-# compilation error.
-#
-# Another advantage is that 'make' output is shorter.
-#
 # Listed in the same order as the GNU makefile conventions, and
 # provided by autoconf 2.59c+.
 # The Automake-defined pkg* macros are appended, in the order