Re: Explanation in autoconf manual

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

 



[Visiting another old thread]

According to santilistas on 8/9/2009 4:31 AM:
> In chapter 3, the diagram showing files for configuring and distributing
> has a line like this:
>
> Makefile.in ----------------------------------------> Makefile.in
>
> Is this ok?

According to Ralf Wildenhues on 8/10/2009 1:32 PM:
> * Philip Herron wrote on Mon, Aug 10, 2009 at 02:08:41AM CEST:
>> The pipeline is this:
>>
>>                       *Automake                       *Autoconf
>> Makefile.am  -------------> Makefile.in -> configure.ac -> Makefile
> 
> Nope.  While automake turns *.am files into *.in files for each * listed
> in an AC_CONFIG_FILES macro in configure.ac, the script that turns *.in
> files into * files is named config.status, and is generated and invoked
> by the configure script.  Confusing, eh?  ;-)

The autoconf manual already has a number of places that call out behavior
both with and without automake.  So, I think the best thing to do here is
try and expand the diagram to show that automake is optional, as well as
how it fits in when used.  Here's what I'm thinking of; any ideas for
improvements?

santalistas, do you have a preferred name to be listed as in THANKS?
Right now, it only lists your email address with "santilín".

-- 
Don't work too hard, make some time for fun as well!

Eric Blake             ebb9@xxxxxxx
From 85b1e2e3eaac648b040afa9910bfcc3ee2a23fe0 Mon Sep 17 00:00:00 2001
From: Eric Blake <eblake@xxxxxxxxxx>
Date: Thu, 25 Feb 2010 15:49:12 -0700
Subject: [PATCH] Update file flow diagram to mention Automake.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* doc/autoconf.texi (Making configure Scripts): Avoid confusion
with listing Makefile.in twice on one line.  Add a diagram showing
how automake fits into the picture.
Reported by santilín.

Signed-off-by: Eric Blake <eblake@xxxxxxxxxx>
---
 ChangeLog         |    6 ++++++
 doc/autoconf.texi |   25 +++++++++++++++++++++++--
 2 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index f0be2df..90befe8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2010-02-25  Eric Blake  <eblake@xxxxxxxxxx>

+	Update file flow diagram to mention Automake.
+	* doc/autoconf.texi (Making configure Scripts): Avoid confusion
+	with listing Makefile.in twice on one line.  Add a diagram showing
+	how automake fits into the picture.
+	Reported by santilín.
+
 	Document how to safely override CFLAGS default.
 	* doc/autoconf.texi (C Compiler) <AC_PROG_CC>: Document a way to
 	change the default CFLAGS.
diff --git a/doc/autoconf.texi b/doc/autoconf.texi
index 86d434c..3bb2e42 100644
--- a/doc/autoconf.texi
+++ b/doc/autoconf.texi
@@ -1009,7 +1009,8 @@ Making configure Scripts
 macro files (by reading @file{autoconf.m4}).

 @noindent
-Files used in preparing a software package for distribution:
+Files used in preparing a software package for distribution, when using
+just Autoconf:
 @example
 your source files --> [autoscan*] --> [configure.scan] --> configure.ac

@@ -1021,7 +1022,27 @@ Making configure Scripts
 [acsite.m4] ---'
 @end group

-Makefile.in -------------------------------> Makefile.in
+Makefile.in
+@end example
+
+@noindent
+Additionally, if you use Automake, the following additional productions
+come into play:
+
+@example
+@group
+[acinclude.m4] --.
+                 |
+[local macros] --+--> aclocal* --> aclocal.m4
+                 |
+configure.ac ----'
+@end group
+
+@group
+configure.ac --.
+               +--> automake* --> Makefile.in
+Makefile.am ---'
+@end group
 @end example

 @noindent
-- 
1.6.6.1

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Autoconf mailing list
Autoconf@xxxxxxx
http://lists.gnu.org/mailman/listinfo/autoconf

[Index of Archives]     [GCC Help]     [Kernel Discussion]     [RPM Discussion]     [Red Hat Development]     [Yosemite News]     [Linux USB]     [Samba]

  Powered by Linux