automake-patches
[Top][All Lists]
Advanced

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

Re: FYI: revamp Headers node


From: Alexandre Duret-Lutz
Subject: Re: FYI: revamp Headers node
Date: Mon, 31 May 2004 23:28:23 +0200
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux)

>>> "Akim" == Akim Demaille <address@hidden> writes:

>>> "adl" == Alexandre Duret-Lutz <address@hidden> writes:
 >> +For header files that are built and must not be distributed, use the
 >> address@hidden prefix as in @code{nodist_include_HEADERS} or
 >> address@hidden  If these generated headers are needed
 >> +during the build, you must also ensure they exist before they are
 >> +used, see @xref{Sources}.
 
 Akim> Wow!  I had never realized there was this feature!  Then, maybe the
 Akim> documentation lacks clarification of BUILT_SOURCES
 Akim> vs. nodist_.*_SOURCES.  I have found no node covering the two
 Akim> simultaneously, and at first sight, it looks to me like some uses of
 Akim> BUILT_SOURCES in the documentation ought to refer to
 Akim> nodist_.*_SOURCES.

Thanks, I'm installing the following.

2004-05-31  Alexandre Duret-Lutz  <address@hidden>

        * doc/automake.texi (Built sources example): Explain what
        nodist_foo_SOURCES is (not) useful to, and use it in all the
        examples.
        (Tags): Mention nodist_noinst_HEADERS and nodist_prog_SOURCES.
        Suggested by Akim Demaille.

Index: doc/automake.texi
===================================================================
RCS file: /cvs/automake/automake/doc/automake.texi,v
retrieving revision 1.36
diff -u -r1.36 automake.texi
--- doc/automake.texi   22 May 2004 07:19:35 -0000      1.36
+++ doc/automake.texi   31 May 2004 21:27:48 -0000
@@ -4486,6 +4486,14 @@
 make: *** [foo.o] Error 1
 @end example
 
+In this example @file{bindir.h} is not distributed, not installed, and
+it is not even being built on-time.  One may wonder what the
address@hidden = bindir.h} line has any use at all.  This
+line simply states that @file{bindir.h} is a source of @code{foo}, so
+for instance it should be inspected while generating tags
+(@pxref{Tags}).  In other words, it does not help our present problem,
+and the build would fail identically without it.
+
 @unnumberedsubsec Using @code{BUILT_SOURCES}
 
 A solution is to require @file{bindir.h} to be built before anything
@@ -4494,6 +4502,7 @@
 @example
 bin_PROGRAMS = foo
 foo_SOURCES = foo.c
+nodist_foo_SOURCES = bindir.h
 BUILT_SOURCES = bindir.h
 CLEANFILES = bindir.h
 bindir.h: Makefile
@@ -4545,6 +4554,7 @@
 @example
 bin_PROGRAMS = foo
 foo_SOURCES = foo.c
+nodist_foo_SOURCES = bindir.h
 foo.$(OBJEXT): bindir.h
 CLEANFILES = bindir.h
 bindir.h: Makefile
@@ -6051,9 +6061,14 @@
 Automake will generate rules to generate @file{TAGS} files for use with
 GNU Emacs under some circumstances.
 
address@hidden tags
 If any C, C++ or Fortran 77 source code or headers are present, then
 @code{tags} and @code{TAGS} rules will be generated for the directory.
address@hidden tags
+All files listed using the @code{_SOURCES}, @code{_HEADERS}, and
address@hidden primaries will be used to generate tags.  Note that
+generated source files that are not distributed must be declared in
+variables like @code{nodist_noinst_HEADERS} or
address@hidden@var{prog}_SOURCES} or they will be ignored.
 
 At the topmost directory of a multi-directory package, a @code{tags}
 rule will be output which, when run, will generate a @file{TAGS} file
-- 
Alexandre Duret-Lutz





reply via email to

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