automake-patches
[Top][All Lists]
Advanced

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

Patch: more manual updates


From: Tom Tromey
Subject: Patch: more manual updates
Date: 16 Jul 2001 23:59:32 -0600

I'm checking this in.

2001-07-16  Tom Tromey  <address@hidden>

        * automake.texi (Dependencies): Link to dependency tracking page.
        (Data): Mention dist_.
        (Clean): Mention clean heuristics.
        (Install): Mention nobase_.

Tom

Index: automake.texi
===================================================================
RCS file: /cvs/automake/automake/automake.texi,v
retrieving revision 1.220
diff -u -r1.220 automake.texi
--- automake.texi 2001/07/17 04:19:39 1.220
+++ automake.texi 2001/07/17 05:35:04
@@ -2718,10 +2718,12 @@
 
 @cindex depcomp
 
-Experience with earlier versions of Automake taught us that it is not
-reliable to generate dependencies only on the maintainer's system, as
-configurations vary too much.  So instead Automake implements dependency
-tracking at build time.
+Experience with earlier versions of Automake @footnote{See
address@hidden://sources.redhat.com/automake/dependencies.html} for more
+information on the history and experiences with automatic dependency
+tracking in Automake} taught us that it is not reliable to generate
+dependencies only on the maintainer's system, as configurations vary too
+much.  So instead Automake implements dependency tracking at build time.
 
 Automatic dependency tracking can be suppressed by putting
 @code{no-dependencies} in the variable @code{AUTOMAKE_OPTIONS}.  Or, you
@@ -2848,7 +2850,9 @@
 @code{sysconfdir}, @code{sharedstatedir}, @code{localstatedir}, or
 @code{pkgdatadir}.
 
-By default, data files are @emph{not} included in a distribution.
+By default, data files are @emph{not} included in a distribution.  Of
+course, you can use the @samp{dist_} prefix to change this on a
+per-variable basis.
 
 Here is how Automake installs its auxiliary data files:
 
@@ -3299,6 +3303,30 @@
 primaries are automatically installed in the appropriate places when the
 user runs @code{make install}.
 
+A file named in a primary is installed by copying the built file into
+the appropriate directory.  The base name of the file is used when
+installing.
+
address@hidden
+bin_PROGRAMS = hello subdir/goodbye
address@hidden example
+
+In this example, both @samp{hello} and @samp{goodbye} will be installed
+in @code{$(bindir)}.
+
+Sometimes it is useful to avoid the basename step at install time.  For
+instance, you might have a number of header files in subdirectories of
+the source tree which are laid out precisely how you want to install
+them.  In this situation you can use the @samp{nobase_} prefix to
+suppress the base name step.  For example:
+
address@hidden
+include_HEADERS = stdio.h sys/types.h
address@hidden example
+
+Will include @file{stdio.h} in @code{$(includedir)} and @file{types.h}
+in @code{$(includedir)/sys}.
+
 Automake generates separate @code{install-data} and @code{install-exec}
 targets, in case the installer is installing on multiple machines which
 share directory structure---these targets allow the machine-independent
@@ -3373,6 +3401,30 @@
 @vindex CLEANFILES
 @vindex DISTCLEANFILES
 @vindex MAINTAINERCLEANFILES
+
+As the GNU Standards aren't always explicit as to which files should be
+removed by which target, we've adopted a heuristic which we believe were
+first formulated by Fran@,{c}ois Pinard:
+
address@hidden @bullet 
address@hidden
+If @code{make} built it, and it is commonly something that one would
+want to rebuild (for instance, a @file{.o} file), then
address@hidden should delete it.
+
address@hidden
+Otherwise, if @code{make} built it, then @code{clean} should delete it.
+
address@hidden
+If @code{configure} built it, then @code{distclean} should delete it
+
address@hidden
+If the maintainer built it, then @code{maintainer-clean} should
+delete it.
address@hidden itemize
+
+We recommend that you follow this same set of heuristics in your
address@hidden
 
 
 @node Dist, Tests, Clean, Top



reply via email to

[Prev in Thread] Current Thread [Next in Thread]