source: trunk/essentials/sys-devel/automake-1.9/doc/automake.info-2

Last change on this file was 3086, checked in by bird, 18 years ago

automake 1.9.6

File size: 140.3 KB
Line 
1This is automake.info, produced by makeinfo version 4.7 from
2automake.texi.
3
4 This manual is for GNU Automake (version 1.9.6, 9 July 2005), a
5program that creates GNU standards-compliant Makefiles from template
6files.
7
8 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
92004, 2005 Free Software Foundation, Inc.
10
11 Permission is granted to copy, distribute and/or modify this
12 document under the terms of the GNU Free Documentation License,
13 Version 1.2 or any later version published by the Free Software
14 Foundation; with no Invariant Sections, with the Front-Cover texts
15 being "A GNU Manual," and with the Back-Cover Texts as in (a)
16 below. A copy of the license is included in the section entitled
17 "GNU Free Documentation License."
18
19 (a) The FSF's Back-Cover Text is: "You have freedom to copy and
20 modify this GNU Manual, like GNU software. Copies published by
21 the Free Software Foundation raise funds for GNU development."
22
23INFO-DIR-SECTION Software development
24START-INFO-DIR-ENTRY
25* automake: (automake). Making Makefile.in's.
26END-INFO-DIR-ENTRY
27
28INFO-DIR-SECTION Individual utilities
29START-INFO-DIR-ENTRY
30* aclocal: (automake)Invoking aclocal. Generating aclocal.m4.
31END-INFO-DIR-ENTRY
32
33
34File: automake.info, Node: Timeline, Next: Dependency Tracking Evolution, Up: History
35
3627.1 Timeline
37=============
38
391994-09-19 First CVS commit.
40 If we can trust the CVS repository, David J. MacKenzie (djm)
41 started working on Automake (or AutoMake, as it was spelt then)
42 this Monday.
43
44 The first version of the `automake' script looks as follows.
45
46 #!/bin/sh
47
48 status=0
49
50 for makefile
51 do
52 if test ! -f ${makefile}.am; then
53 echo "automake: ${makefile}.am: No such honkin' file"
54 status=1
55 continue
56 fi
57
58 exec 4> ${makefile}.in
59
60 done
61
62 From this you can already see that Automake will be about reading
63 `*.am' file and producing `*.in' files. You cannot see anything
64 else, but if you also know that David is the one who created
65 Autoconf two years before you can guess the rest.
66
67 Several commits follow, and by the end of the day Automake is
68 reported to work for GNU fileutils and GNU m4.
69
70 The modus operandi is the one that is still used today: variables
71 assignments in `Makefile.am' files trigger injections of precanned
72 `Makefile' fragments into the generated `Makefile.in'. The use of
73 `Makefile' fragments was inspired by the 4.4BSD `make' and include
74 files, however Automake aims to be portable and to conform to the
75 GNU standards for `Makefile' variables and targets.
76
77 At this point, the most recent release of Autoconf is version 1.11,
78 and David is preparing to release Autoconf 2.0 in late October.
79 As a matter of fact, he will barely touch Automake after September.
80
811994-11-05 David MacKenzie's last commit.
82 At this point Automake is a 200 line portable shell script, plus
83 332 lines of `Makefile' fragments. In the `README', David states
84 his ambivalence between "portable shell" and "more appropriate
85 language":
86
87 I wrote it keeping in mind the possibility of it becoming an
88 Autoconf macro, so it would run at configure-time. That
89 would slow configuration down a bit, but allow users to
90 modify the Makefile.am without needing to fetch the AutoMake
91 package. And, the Makefile.in files wouldn't need to be
92 distributed. But all of AutoMake would. So I might
93 reimplement AutoMake in Perl, m4, or some other more
94 appropriate language.
95
96 Automake is described as "an experimental Makefile generator".
97 There is no documentation. Adventurous users are referred to the
98 examples and patches needed to use Automake with GNU m4 1.3,
99 fileutils 3.9, time 1.6, and development versions of find and
100 indent.
101
102 These examples seem to have been lost. However at the time of
103 writing (10 years later in September, 2004) the FSF still
104 distributes a package that uses this version of Automake: check
105 out GNU termutils 2.0.
106
1071995-11-12 Tom Tromey's first commit.
108 After one year of inactivity, Tom Tromey takes over the package.
109 Tom was working on GNU cpio back then, and doing this just for fun,
110 having trouble finding a project to contribute to. So while
111 hacking he wanted to bring the `Makefile.in' up to GNU standards.
112 This was hard, and one day he saw Automake on
113 `ftp://alpha.gnu.org/', grabbed it and tried it out.
114
115 Tom didn't talk to djm about it until later, just to make sure he
116 didn't mind if he made a release. He did a bunch of early
117 releases to the Gnits folks.
118
119 Gnits was (and still is) totally informal, just a few GNU friends
120 who Franc,ois Pinard knew, who were all interested in making a
121 common infrastructure for GNU projects, and shared a similar
122 outlook on how to do it. So they were able to make some progress.
123 It came along with Autoconf and extensions thereof, and then
124 Automake from David and Tom (who were both gnitsians). One of
125 their ideas was to write a document paralleling the GNU standards,
126 that was more strict in some ways and more detailed. They never
127 finished the GNITS standards, but the ideas mostly made their way
128 into Automake.
129
1301995-11-23 Automake 0.20
131 Besides introducing automatic dependency tracking (*note
132 Dependency Tracking Evolution::), this version also supplies a
133 9-page manual.
134
135 At this time `aclocal' and `AM_INIT_AUTOMAKE' did not exist, so
136 many things had to be done by hand. For instance, here is what a
137 configure.in (this is the former name of the `configure.ac' we use
138 today) must contain in order to use Automake 0.20:
139
140 PACKAGE=cpio
141 VERSION=2.3.911
142 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
143 AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
144 AC_SUBST(PACKAGE)
145 AC_SUBST(VERSION)
146 AC_ARG_PROGRAM
147 AC_PROG_INSTALL
148
149 (Today all of the above is achieved by `AC_INIT' and
150 `AM_INIT_AUTOMAKE'.)
151
152 Here is how programs are specified in `Makefile.am':
153
154 PROGRAMS = hello
155 hello_SOURCES = hello.c
156
157 This looks pretty much like what we do today, except the
158 `PROGRAMS' variable has no directory prefix specifying where
159 `hello' should be installed: all programs are installed in
160 `$(bindir)'. `LIBPROGRAMS' can be used to specify programs that
161 must be built but not installed (it is called `noinst_PROGRAMS'
162 nowadays).
163
164 Programs can be built conditionally using `AC_SUBST'itutions:
165
166 PROGRAMS = @progs@
167 AM_PROGRAMS = foo bar baz
168
169 (`AM_PROGRAMS' has since then been renamed to `EXTRA_PROGRAMS'.)
170
171 Similarly scripts, static libraries, and data can built and
172 installed using the `LIBRARIES', `SCRIPTS', and `DATA' variables.
173 However `LIBRARIES' were treated a bit specially in that Automake
174 did automatically supply the `lib' and `.a' prefixes. Therefore
175 to build `libcpio.a', one had to write
176
177 LIBRARIES = cpio
178 cpio_SOURCES = ...
179
180 Extra files to distribute must be listed in `DIST_OTHER' (the
181 ancestor of `EXTRA_DIST'). Also extra directories that are to be
182 distributed should appear in `DIST_SUBDIRS', but the manual
183 describes this as a temporary ugly hack (today extra directories
184 should also be listed in `EXTRA_DIST', and `DIST_SUBDIRS' is used
185 for another purpose, *note Conditional Subdirectories::).
186
1871995-11-26 Automake 0.21
188 In less time that it takes to cook a frozen pizza, Tom rewrites
189 Automake using Perl. At this time Perl 5 is only one year old, and
190 Perl 4.036 is in use at many sites. Supporting several Perl
191 versions has been a source of problems through the whole history
192 of Automake.
193
194 If you never used Perl 4, imagine Perl 5 without objects, without
195 `my' variables (only dynamically scoped `local' variables),
196 without function prototypes, with function calls that needs to be
197 prefixed with `&', etc. Traces of this old style can still be
198 found in today's `automake'.
199
2001995-11-28 Automake 0.22
2011995-11-29 Automake 0.23
202 Bug fixes.
203
2041995-12-08 Automake 0.24
2051995-12-10 Automake 0.25
206 Releases are raining. 0.24 introduces the uniform naming scheme we
207 use today, i.e., `bin_PROGRAMS' instead of `PROGRAMS',
208 `noinst_LIBRARIES' instead of `LIBLIBRARIES', etc. (However
209 `EXTRA_PROGRAMS' does not exist yet, `AM_PROGRAMS' is still in
210 use; and `TEXINFOS' and `MANS' still have no directory prefixes.)
211 Adding support for prefixes like that was one of the major ideas
212 in automake; it has lasted pretty well.
213
214 AutoMake is renamed to Automake (Tom seems to recall it was
215 Franc,ois Pinard's doing).
216
217 0.25 fixes a Perl 4 portability bug.
218
2191995-12-18 Jim Meyering starts using Automake in GNU Textutils.
220
2211995-12-31 Franc,ois Pinard starts using Automake in GNU tar.
222
2231996-01-03 Automake 0.26
2241996-01-03 Automake 0.27
225 Of the many change and suggestions sent by Franc,ois Pinard and
226 included in 0.26, the most important is perhaps the advise that to
227 ease customization a user rule or variable definition should always
228 override an Automake rule or definition.
229
230 Gordon Matzigkeit and Jim Meyering are two other early contributors
231 that have been sending fixes.
232
233 0.27 fixes yet another Perl 4 portability bug.
234
2351996-01-13 Automake 0.28
236 Automake starts scanning `configure.in' for `LIBOBJS' support.
237 This is an important step because until this version Automake did
238 only know about the `Makefile.am's it processed. `configure.in'
239 was Autoconf's world and the link between Autoconf and Automake
240 had to be done by the `Makefile.am' author. For instance, if
241 `config.h' was generated by `configure', it was the package
242 maintainer's responsibility to define the `CONFIG_HEADER' variable
243 in each `Makefile.am'.
244
245 Succeeding releases will rely more and more on scanning
246 `configure.in' to better automate the Autoconf integration.
247
248 0.28 also introduces the `AUTOMAKE_OPTIONS' variable and the
249 `--gnu' and `--gnits' options, the latter being stricter.
250
2511996-02-07 Automake 0.29
252 Thanks to `configure.in' scanning, `CONFIG_HEADER' is gone, and
253 rebuild rules for `configure'-generated file are automatically
254 output.
255
256 `TEXINFOS' and `MANS' converted to the uniform naming scheme.
257
2581996-02-24 Automake 0.30
259 The test suite is born. It contains 9 tests. From now on test
260 cases will be added pretty regularly (*note Releases::), and this
261 proved to be really helpful later on.
262
263 `EXTRA_PROGRAMS' finally replaces `AM_PROGRAMS'.
264
265 All the third-party Autoconf macros, written mostly by Franc,ois
266 Pinard (and later Jim Meyering), are distributed in Automake's
267 hand-written `aclocal.m4' file. Package maintainers are expected
268 to extract the necessary macros from this file. (In previous
269 version you had to copy and paste them from the manual...)
270
2711996-03-11 Automake 0.31
272 The test suite in 0.30 was run via a long `check-local' rule. Upon
273 Ulrich Drepper's suggestion, 0.31 makes it an Automake rule output
274 whenever the `TESTS' variable is defined.
275
276 `DIST_OTHER' is renamed to `EXTRA_DIST', and the `check_' prefix
277 is introduced. The syntax is now the same as today.
278
2791996-03-15 Gordon Matzigkeit starts writing libtool.
280
2811996-04-27 Automake 0.32
282 `-hook' targets are introduced; an idea from Dieter Baron.
283
284 `*.info' files, which were output in the build directory are now
285 built in the source directory, because they are distributed. It
286 seems these files like to move back and forth as that will happen
287 again in future versions.
288
2891996-05-18 Automake 0.33
290 Gord Matzigkeit's main two contributions:
291
292 * very preliminary libtool support
293
294 * the distcheck rule
295
296 Although they were very basic at this point, these are probably
297 among the top features for Automake today.
298
299 Jim Meyering also provides the infamous `jm_MAINTAINER_MODE',
300 since then renamed to `AM_MAINTAINER_MODE' and abandoned by its
301 author (*note maintainer-mode::).
302
3031996-05-28 Automake 1.0
304 After only six months of heavy development, the automake script is
305 3134 lines long, plus 973 lines of `Makefile' fragments. The
306 package has 30 pages of documentation, and 38 test cases.
307 `aclocal.m4' contains 4 macros.
308
309 From now on and until version 1.4, new releases will occur at a
310 rate of about one a year. 1.1 did not exist, actually 1.1b to
311 1.1p have been the name of beta releases for 1.2. This is the
312 first time Automake uses suffix letters to designate beta
313 releases, an habit that lasts.
314
3151996-10-10 Kevin Dalley packages Automake 1.0 for Debian GNU/Linux.
316
3171996-11-26 David J. MacKenzie releases Autoconf 2.12.
318 Between June and October, the Autoconf development is almost
319 staled. Roland McGrath has been working at the beginning of the
320 year. David comes back in November to release 2.12, but he won't
321 touch Autoconf anymore after this year, and Autoconf then really
322 stagnates. The desolate Autoconf `ChangeLog' for 1997 lists only
323 7 commits.
324
3251997-02-28 <automake@gnu.ai.mit.edu> list alive
326 The mailing list is announced as follows:
327 I've created the "automake" mailing list. It is
328 "automake@gnu.ai.mit.edu". Administrivia, as always, to
329 automake-request@gnu.ai.mit.edu.
330
331 The charter of this list is discussion of automake, autoconf, and
332 other configuration/portability tools (eg libtool). It is expected
333 that discussion will range from pleas for help all the way up to
334 patches.
335
336 This list is archived on the FSF machines. Offhand I don't know if
337 you can get the archive without an account there.
338
339 This list is open to anybody who wants to join. Tell all your
340 friends!
341 -- Tom Tromey
342
343 Before that people were discussing Automake privately, on the Gnits
344 mailing list (which is not public either), and less frequently on
345 `gnu.misc.discuss'.
346
347 `gnu.ai.mit.edu' is now `gnu.org', in case you never noticed. The
348 archives of the early years of the `automake@gnu.org' list have
349 been lost, so today it is almost impossible to find traces of
350 discussions that occurred before 1999. This has been annoying
351 more than once, as such discussions can be useful to understand
352 the rationale behind a piece of uncommented code that was
353 introduced back then.
354
3551997-06-22 Automake 1.2
356 Automake developments continues, and more and more new Autoconf
357 macros are required. Distributing them in `aclocal.m4' and
358 requiring people to browse this file to extract the relevant
359 macros becomes uncomfortable. Ideally, some of them should be
360 contributed to Autoconf so that they can be used directly, however
361 Autoconf is currently inactive. Automake 1.2 consequently
362 introduces `aclocal' (`aclocal' was actually started on
363 1996-07-28), a tool that automatically constructs an `aclocal.m4'
364 file from a repository of third-party macros. Because Autoconf has
365 stalled, Automake also becomes a kind of repository for such
366 third-party macros, even macros completely unrelated to Automake
367 (for instance macros that fix broken Autoconf macros).
368
369 The 1.2 release contains 20 macros, among which the
370 `AM_INIT_AUTOMAKE' macro that simplifies the creation of
371 `configure.in'.
372
373 Libtool is fully supported using `*_LTLIBRARIES'.
374
375 The missing script is introduced by Franc,ois Pinard; it is meant
376 to be a better solution than `AM_MAINTAINER_MODE' (*note
377 maintainer-mode::).
378
379 Conditionals support was implemented by Ian Lance Taylor. At the
380 time, Tom and Ian were working on an internal project at Cygnus.
381 They were using ILU, which is pretty similar to CORBA. They
382 wanted to integrate ILU into their build, which was all
383 `configure'-based, and Ian thought that adding conditionals to
384 `automake' was simpler than doing all the work in `configure'
385 (which was the standard at the time). So this was actually funded
386 by Cygnus.
387
388 This very useful but tricky feature will take a lot of time to
389 stabilize. (At the time this text is written, there are still
390 primaries that have not been updated to support conditional
391 definitions in Automake 1.9.)
392
393 The `automake' script has almost doubled: 6089 lines of Perl, plus
394 1294 lines of `Makefile' fragments.
395
3961997-07-08 Gordon Matzigkeit releases Libtool 1.0.
397
3981998-04-05 Automake 1.3
399 This is a small advance compared to 1.2. It add support for
400 assembly, and preliminary support for Java.
401
402 Perl 5.004_04 is out, but fixes to support Perl 4 are still
403 regularly submitted whenever Automake breaks it.
404
4051998-09-06 `sourceware.cygnus.com' is on-line.
406 Sourceware was setup by Jason Molenda to host open source projects.
407
4081998-09-19 Automake CVS repository moved to `sourceware.cygnus.com'
4091998-10-26 `sourceware.cygnus.com' announces it hosts Automake
410 Automake is now hosted on `sourceware.cygnus.com'. It has a
411 publicly accessible CVS repository. This CVS repository is a copy
412 of the one Tom was using on his machine, which in turn is based on
413 a copy of the CVS repository of David MacKenzie. This is why we
414 still have to full source history. (Automake is still on
415 Sourceware today, but the host has been renamed to
416 `sources.redhat.com'.)
417
418 The oldest file in the administrative directory of the CVS
419 repository that was created on Sourceware is dated 1998-09-19,
420 while the announcement that `automake' and `autoconf' had joined
421 `sourceware' was made on 1998-10-26. They were among the first
422 projects to be hosted there.
423
424 The heedful reader will have noticed Automake was exactly
425 4-year-old on 1998-09-19.
426
4271999-01-05 Ben Elliston releases Autoconf 2.13.
428
4291999-01-14 Automake 1.4
430 This release adds support for Fortran 77 and for the `include'
431 statement. Also, `+=' assignments are introduced, but it is still
432 quite easy to fool Automake when mixing this with conditionals.
433
434 These two releases, Automake 1.4 and Autoconf 2.13 makes a duo that
435 will be used together for years.
436
437 `automake' is 7228 lines, plus 1591 lines of Makefile fragment, 20
438 macros (some 1.3 macros were finally contributed back to
439 Autoconf), 197 test cases, and 51 pages of documentation.
440
4411999-03-27 The `user-dep-branch' is created on the CVS repository.
442 This implements a new dependency tracking schemed that should be
443 able to handle automatic dependency tracking using any compiler
444 (not just gcc) and any make (not just GNU `make'). In addition,
445 the new scheme should be more reliable than the old one, as
446 dependencies are generated on the end user's machine. Alexandre
447 Oliva creates depcomp for this purpose.
448
449 *Note Dependency Tracking Evolution::, for more details about the
450 evolution of automatic dependency tracking in Automake.
451
4521999-11-21 The `user-dep-branch' is merged into the main trunk.
453 This was a huge problem since we also had patches going in on the
454 trunk. The merge took a long time and was very painful.
455
4562000-05-10
457 Since September 1999 and until 2003, Akim Demaille will be
458 zealously revamping Autoconf.
459
460 I think the next release should be called "3.0".
461 Let's face it: you've basically rewritten autoconf.
462 Every weekend there are 30 new patches.
463 I don't see how we could call this "2.15" with a straight
464 face.
465 - Tom Tromey on <autoconf@gnu.org>
466
467 Actually Akim works like a submarine: he will pile up patches
468 while he works off-line during the weekend, and flush them in
469 batch when he resurfaces on Monday.
470
4712001-01-24
472 On this Wednesday, Autoconf 2.49c, the last beta before Autoconf
473 2.50 is out, and Akim has to find something to do during his
474 week-end :)
475
4762001-01-28
477 Akim sends a batch of 14 patches to <automake@gnu.org>.
478
479 Aiieeee! I was dreading the day that the Demaillator turned
480 his sights on automake... and now it has arrived! - Tom Tromey
481
482 It's only the beginning: in two months he will send 192 patches.
483 Then he would slow down so Tom can catch up and review all this.
484 Initially Tom actually read all these patches, then he probably
485 trustingly answered OK to most of them, and finally gave up and
486 let Akim apply whatever he wanted. There was no way to keep up
487 with that patch rate.
488
489 Anyway the patch below won't apply since it predates Akim's
490 sourcequake; I have yet to figure where the relevant passage
491 has been moved :) - Alexandre Duret-Lutz
492
493 All these patches were sent to and discussed on
494 <automake@gnu.org>, so subscribed users were literally drown in
495 technical mails. Eventually, the <automake-patches@gnu.org>
496 mailing list was created in May.
497
498 Year after year, Automake had drifted away from its initial design:
499 construct `Makefile.in' by assembling various `Makefile'
500 fragments. In 1.4, lots of `Makefile' rules are being emitted at
501 various places in the `automake' script itself; this does not help
502 ensuring a consistent treatment of these rules (for instance
503 making sure that user-defined rules override Automake's own rules).
504 One of Akim's goal was moving all these hard-coded rules to
505 separate `Makefile' fragments, so the logic could be centralized
506 in a `Makefile' fragment processor.
507
508 Another significant contribution of Akim is the interface with the
509 "trace" feature of Autoconf. The way to scan `configure.in' at
510 this time was to read the file and grep the various macro of
511 interest to Automake. Doing so could break in many unexpected
512 ways; automake could miss some definition (for instance
513 `AC_SUBST([$1], [$2])' where the arguments are known only when M4
514 is run), or conversely it could detect some macro that was not
515 expanded (because it is called conditionally). In the CVS version
516 of Autoconf, Akim had implemented the `--trace' option, which
517 provides accurate information about where macros are actually
518 called and with what arguments. Akim will equip Automake with a
519 second `configure.in' scanner that uses this `--trace' interface.
520 Since it was not sensible to drop the Autoconf 2.13 compatibility
521 yet, this experimental scanner was only used when an environment
522 variable was set, the traditional grep-scanner being still the
523 default.
524
5252001-04-25 Gary V. Vaughan releases Libtool 1.4
526 It has been more than two years since Automake 1.4, CVS Automake
527 has suffered lot's of heavy changes and still is not ready for
528 release. Libtool 1.4 had to be distributed with a patch against
529 Automake 1.4.
530
5312001-05-08 Automake 1.4-p1
5322001-05-24 Automake 1.4-p2
533 Gary V. Vaughan, the principal Libtool maintainer, makes a "patch
534 release" of Automake:
535
536 The main purpose of this release is to have a stable automake
537 which is compatible with the latest stable libtool.
538
539 The release also contains obvious fixes for bugs in Automake 1.4,
540 some of which were reported almost monthly.
541
5422001-05-21 Akim Demaille releases Autoconf 2.50
543
5442001-06-07 Automake 1.4-p3
5452001-06-10 Automake 1.4-p4
5462001-07-15 Automake 1.4-p5
547 Gary continues his patch-release series. These also add support
548 for some new Autoconf 2.50 idioms. Essentially, Autoconf now
549 advocates `configure.ac' over `configure.in', and it introduces a
550 new syntax for `AC_OUTPUT'ing files.
551
5522001-08-23 Automake 1.5
553 A major and long-awaited release, that comes more than two years
554 after 1.4. It brings many changes, among which:
555 * The new dependency tracking scheme that uses `depcomp'.
556 Aside from the improvement on the dependency tracking itself
557 (*note Dependency Tracking Evolution::), this also
558 streamlines the use of automake generated `Makefile.in's as
559 the `Makefile.in's used during development are now the same
560 as those used in distributions. Before that the
561 `Makefile.in's generated for maintainers required GNU `make'
562 and GCC, they were different from the portable `Makefile'
563 generated for distribution; this was causing some confusion.
564
565 * Support for per-target compilation flags.
566
567 * Support for reference to files in subdirectories in most
568 `Makefile.am' variables.
569
570 * Introduction of the `dist_', `nodist_', and `nobase_'
571 prefixes.
572
573 * Perl 4 support is finally dropped.
574
575 1.5 did broke several packages that worked with 1.4. Enough so
576 that Linux distributions could not easily install the new Automake
577 version without breaking many of the packages for which they had
578 to run `automake'.
579
580 Some of these breakages were effectively bugs that would
581 eventually be fixed in the next release. However, a lot of damage
582 was caused by some changes made deliberately to render Automake
583 stricter on some setup we did consider bogus. For instance, `make
584 distcheck' was improved to check that `make uninstall' did remove
585 all the files `make install' installed, that `make distclean' did
586 not omit some file, and that a VPATH build would work even if the
587 source directory was read-only. Similarly, Automake now rejects
588 multiple definitions of the same variable (because that would mix
589 very badly with conditionals), and `+=' assignments with no
590 previous definition. Because these changes all occurred suddenly
591 after 1.4 had been established for more that two years, it hurt
592 users.
593
594 To make matter worse, meanwhile Autoconf (now at version 2.52) was
595 facing similar troubles, for similar reasons.
596
5972002-03-05 Automake 1.6
598 This release introduced versioned installation (*note API
599 versioning::). This was mainly pushed by Havoc Pennington, taking
600 the GNOME source tree as motive: due to incompatibilities between
601 the autotools it's impossible for the GNOME packages to switch to
602 Autoconf 2.53 and Automake 1.5 all at once, so they are currently
603 stuck with Autoconf 2.13 and Automake 1.4.
604
605 The idea was to call this version `automake-1.6', call all its
606 bug-fix versions identically, and switch to `automake-1.7' for the
607 next release that adds new features or changes some rules. This
608 scheme implies maintaining a bug-fix branch in addition to the
609 development trunk, which means more work from the maintainer, but
610 providing regular bug-fix releases proved to be really worthwhile.
611
612 Like 1.5, 1.6 also introduced a bunch of incompatibilities, meant
613 or not. Perhaps the more annoying was the dependence on the newly
614 released Autoconf 2.53. Autoconf seemed to have stabilized enough
615 since its explosive 2.50 release, and included changes required to
616 fix some bugs in Automake. In order to upgrade to Automake 1.6,
617 people now had to upgrade Autoconf too; for some packages it was
618 no picnic.
619
620 While versioned installation helped people to upgrade, it also
621 unfortunately allowed people not to upgrade. At the time of
622 writing, some Linux distributions are shipping packages for
623 Automake 1.4, 1.5, 1.6, 1.7, 1.8, and 1.9. Most of these still
624 install 1.4 by default. Some distribution also call 1.4 the
625 "stable" version, and present "1.9" as the development version;
626 this does not really makes sense since 1.9 is way more solid than
627 1.4. All this does not help the newcomer.
628
6292002-04-11 Automake 1.6.1
630 1.6, and the upcoming 1.4-p6 release were the last release by Tom.
631 This one and those following will be handled by Alexandre
632 Duret-Lutz. Tom is still around, and will be there until about
633 1.7, but his interest into Automake is drifting away towards
634 projects like `gcj'.
635
636 Alexandre has been using Automake since 2000, and started to
637 contribute mostly on Akim's incitement (Akim and Alexandre have
638 been working in the same room from 1999 to 2002). In 2001 and
639 2002 he had a lot of free time to enjoy hacking Automake.
640
6412002-06-14 Automake 1.6.2
642
6432002-07-28 Automake 1.6.3
6442002-07-28 Automake 1.4-p6
645 Two releases on the same day. 1.6.3 is a bug-fix release.
646
647 Tom Tromey backported the versioned installation mechanism on the
648 1.4 branch, so that Automake 1.6.x and Automake 1.4-p6 could be
649 installed side by side. Another request from the GNOME folks.
650
6512002-09-25 Automake 1.7
652 This release switches to the new `configure.ac' scanner Akim was
653 experimenting in 1.5.
654
6552002-10-16 Automake 1.7.1
6562002-12-06 Automake 1.7.2
6572003-02-20 Automake 1.7.3
6582003-04-23 Automake 1.7.4
6592003-05-18 Automake 1.7.5
6602003-07-10 Automake 1.7.6
6612003-09-07 Automake 1.7.7
6622003-10-07 Automake 1.7.8
663 Many bug-fix releases. 1.7 lasted because the development version
664 (upcoming 1.8) was suffering some major internal revamping.
665
6662003-10-26 Automake on screen
667 Episode 49, `Repercussions', in the third season of the `Alias' TV
668 show is first aired.
669
670 Marshall, one of the character, is working on a computer virus
671 that he has to modify before it gets into the wrong hands or
672 something like that. The screenshots you see do not show any
673 program code, they show a `Makefile.in' `generated by automake'...
674
6752003-11-09 Automake 1.7.9
676
6772003-12-10 Automake 1.8
678 The most striking update is probably that of `aclocal'.
679
680 `aclocal' now uses `m4_include' in the produced `aclocal.m4' when
681 the included macros are already distributed with the package (an
682 idiom used in many packages), which reduces code duplication.
683 Many people liked that, but in fact this change was really
684 introduced to fix a bug in rebuild rules: `Makefile.in' must be
685 rebuilt whenever a dependency of `configure' changes, but all the
686 `m4' files included in `aclocal.m4' where unknown from `automake'.
687 Now `automake' can just trace the `m4_include's to discover the
688 dependencies.
689
690 `aclocal' also starts using the `--trace' Autoconf option in order
691 to discover used macros more accurately. This will turn out to be
692 very tricky (later releases will improve this) as people had
693 devised many ways to cope with the limitation of previous
694 `aclocal' versions, notably using handwritten `m4_include's:
695 `aclocal' must make sure not to redefine a rule that is already
696 included by such statement.
697
698 Automake also has seen its guts rewritten. Although this rewriting
699 took a lot of efforts, it is only apparent to the users in that
700 some constructions previously disallowed by the implementation now
701 work nicely. Conditionals, Locations, Variable and Rule
702 definitions, Options: these items on which Automake works have
703 been rewritten as separate Perl modules, and documented.
704
7052004-01-11 Automake 1.8.1
7062004-01-12 Automake 1.8.2
7072004-03-07 Automake 1.8.3
7082004-04-25 Automake 1.8.4
7092004-05-16 Automake 1.8.5
710
7112004-07-28 Automake 1.9
712 This release tries to simplify the compilation rules it outputs to
713 reduce the size of the Makefile. The complaint initially come from
714 the libgcj developers. Their `Makefile.in' generated with
715 Automake 1.4 and custom build rules (1.4 did not support compiled
716 Java) is 250KB. The one generated by 1.8 was over 9MB! 1.9 gets
717 it down to 1.2MB.
718
719 Aside from this it contains mainly minor changes and bug-fixes.
720
7212004-08-11 Automake 1.9.1
7222004-09-19 Automake 1.9.2
723 Automake has ten years. This chapter of the manual was initially
724 written for this occasion.
725
726
727
728File: automake.info, Node: Dependency Tracking Evolution, Next: Releases, Prev: Timeline, Up: History
729
73027.2 Dependency Tracking in Automake
731====================================
732
733Over the years Automake has deployed three different dependency
734tracking methods. Each method, including the current one, has had
735flaws of various sorts. Here we lay out the different dependency
736tracking methods, their flaws, and their fixes. We conclude with
737recommendations for tool writers, and by indicating future directions
738for dependency tracking work in Automake.
739
74027.2.1 First Take
741-----------------
742
743Description
744...........
745
746Our first attempt at automatic dependency tracking was based on the
747method recommended by GNU `make'. (*note Generating Prerequisites
748Automatically: (make)Automatic Prerequisites.)
749
750 This version worked by precomputing dependencies ahead of time. For
751each source file, it had a special `.P' file that held the
752dependencies. There was a rule to generate a `.P' file by invoking the
753compiler appropriately. All such `.P' files were included by the
754`Makefile', thus implicitly becoming dependencies of `Makefile'.
755
756Bugs
757....
758
759This approach had several critical bugs.
760
761 * The code to generate the `.P' file relied on `gcc'. (A
762 limitation, not technically a bug.)
763
764 * The dependency tracking mechanism itself relied on GNU `make'. (A
765 limitation, not technically a bug.)
766
767 * Because each `.P' file was a dependency of `Makefile', this meant
768 that dependency tracking was done eagerly by `make'. For
769 instance, `make clean' would cause all the dependency files to be
770 updated, and then immediately removed. This eagerness also caused
771 problems with some configurations; if a certain source file could
772 not be compiled on a given architecture for some reason,
773 dependency tracking would fail, aborting the entire build.
774
775 * As dependency tracking was done as a pre-pass, compile times were
776 doubled-the compiler had to be run twice per source file.
777
778 * `make dist' re-ran `automake' to generate a `Makefile' that did
779 not have automatic dependency tracking (and that was thus portable
780 to any version of `make'). In order to do this portably, Automake
781 had to scan the dependency files and remove any reference that was
782 to a source file not in the distribution. This process was
783 error-prone. Also, if `make dist' was run in an environment where
784 some object file had a dependency on a source file that was only
785 conditionally created, Automake would generate a `Makefile' that
786 referred to a file that might not appear in the end user's build.
787 A special, hacky mechanism was required to work around this.
788
789Historical Note
790...............
791
792The code generated by Automake is often inspired by the `Makefile'
793style of a particular author. In the case of the first implementation
794of dependency tracking, I believe the impetus and inspiration was Jim
795Meyering. (I could be mistaken. If you know otherwise feel free to
796correct me.)
797
79827.2.2 Dependencies As Side Effects
799-----------------------------------
800
801Description
802...........
803
804The next refinement of Automake's automatic dependency tracking scheme
805was to implement dependencies as side effects of the compilation. This
806was aimed at solving the most commonly reported problems with the first
807approach. In particular we were most concerned with eliminating the
808weird rebuilding effect associated with make clean.
809
810 In this approach, the `.P' files were included using the `-include'
811command, which let us create these files lazily. This avoided the
812`make clean' problem.
813
814 We only computed dependencies when a file was actually compiled.
815This avoided the performance penalty associated with scanning each file
816twice. It also let us avoid the other problems associated with the
817first, eager, implementation. For instance, dependencies would never
818be generated for a source file that was not compilable on a given
819architecture (because it in fact would never be compiled).
820
821Bugs
822....
823
824 * This approach also relied on the existence of `gcc' and GNU
825 `make'. (A limitation, not technically a bug.)
826
827 * Dependency tracking was still done by the developer, so the
828 problems from the first implementation relating to massaging of
829 dependencies by `make dist' were still in effect.
830
831 * This implementation suffered from the "deleted header file"
832 problem. Suppose a lazily-created `.P' file includes a dependency
833 on a given header file, like this:
834
835 maude.o: maude.c something.h
836
837 Now suppose that the developer removes `something.h' and updates
838 `maude.c' so that this include is no longer needed. If he runs
839 `make', he will get an error because there is no way to create
840 `something.h'.
841
842 We fixed this problem in a later release by further massaging the
843 output of `gcc' to include a dummy dependency for each header file.
844
84527.2.3 Dependencies for the User
846--------------------------------
847
848Description
849...........
850
851The bugs associated with `make dist', over time, became a real problem.
852Packages using Automake were being built on a large number of
853platforms, and were becoming increasingly complex. Broken dependencies
854were distributed in "portable" `Makefile.in's, leading to user
855complaints. Also, the requirement for `gcc' and GNU `make' was a
856constant source of bug reports. The next implementation of dependency
857tracking aimed to remove these problems.
858
859 We realized that the only truly reliable way to automatically track
860dependencies was to do it when the package itself was built. This
861meant discovering a method portable to any version of make and any
862compiler. Also, we wanted to preserve what we saw as the best point of
863the second implementation: dependency computation as a side effect of
864compilation.
865
866 In the end we found that most modern make implementations support
867some form of include directive. Also, we wrote a wrapper script that
868let us abstract away differences between dependency tracking methods for
869compilers. For instance, some compilers cannot generate dependencies
870as a side effect of compilation. In this case we simply have the
871script run the compiler twice. Currently our wrapper script
872(`depcomp') knows about twelve different compilers (including a
873"compiler" that simply invokes `makedepend' and then the real compiler,
874which is assumed to be a standard Unix-like C compiler with no way to
875do dependency tracking).
876
877Bugs
878....
879
880 * Running a wrapper script for each compilation slows down the build.
881
882 * Many users don't really care about precise dependencies.
883
884 * This implementation, like every other automatic dependency tracking
885 scheme in common use today (indeed, every one we've ever heard of),
886 suffers from the "duplicated new header" bug.
887
888 This bug occurs because dependency tracking tools, such as the
889 compiler, only generate dependencies on the successful opening of a
890 file, and not on every probe.
891
892 Suppose for instance that the compiler searches three directories
893 for a given header, and that the header is found in the third
894 directory. If the programmer erroneously adds a header file with
895 the same name to the first directory, then a clean rebuild from
896 scratch could fail (suppose the new header file is buggy), whereas
897 an incremental rebuild will succeed.
898
899 What has happened here is that people have a misunderstanding of
900 what a dependency is. Tool writers think a dependency encodes
901 information about which files were read by the compiler. However,
902 a dependency must actually encode information about what the
903 compiler tried to do.
904
905 This problem is not serious in practice. Programmers typically do
906 not use the same name for a header file twice in a given project.
907 (At least, not in C or C++. This problem may be more troublesome
908 in Java.) This problem is easy to fix, by modifying dependency
909 generators to record every probe, instead of every successful open.
910
911 * Since automake generates dependencies as a side effect of
912 compilation, there is a bootstrapping problem when header files
913 are generated by running a program. The problem is that, the
914 first time the build is done, there is no way by default to know
915 that the headers are required, so make might try to run a
916 compilation for which the headers have not yet been built.
917
918 This was also a problem in the previous dependency tracking
919 implementation.
920
921 The current fix is to use `BUILT_SOURCES' to list built headers
922 (*note Sources::). This causes them to be built before any other
923 other build rules are run. This is unsatisfactory as a general
924 solution, however in practice it seems sufficient for most actual
925 programs.
926
927 This code is used since Automake 1.5.
928
929 In GCC 3.0, we managed to convince the maintainers to add special
930command-line options to help Automake more efficiently do its job. We
931hoped this would let us avoid the use of a wrapper script when
932Automake's automatic dependency tracking was used with `gcc'.
933
934 Unfortunately, this code doesn't quite do what we want. In
935particular, it removes the dependency file if the compilation fails;
936we'd prefer that it instead only touch the file in any way if the
937compilation succeeds.
938
939 Nevertheless, since Automake 1.7, when a recent `gcc' is detected at
940`configure' time, we inline the dependency-generation code and do not
941use the `depcomp' wrapper script. This makes compilations faster for
942those using this compiler (probably our primary user base). The
943counterpart is that because we have to encode two compilation rules in
944`Makefile' (with or without `depcomp'), the produced `Makefile's are
945larger.
946
94727.2.4 Techniques for Computing Dependencies
948--------------------------------------------
949
950There are actually several ways for a build tool like Automake to cause
951tools to generate dependencies.
952
953`makedepend'
954 This was a commonly-used method in the past. The idea is to run a
955 special program over the source and have it generate dependency
956 information. Traditional implementations of `makedepend' ere not
957 completely precise; ordinarily they were conservative and
958 discovered too many dependencies.
959
960The tool
961 An obvious way to generate dependencies is to simply write the
962 tool so that it can generate the information needed by the build
963 tool. This is also the most portable method. Many compilers have
964 an option to generate dependencies. Unfortunately, not all tools
965 provide such an option.
966
967The file system
968 It is possible to write a special file system that tracks opens,
969 reads, writes, etc, and then feed this information back to the
970 build tool. `clearmake' does this. This is a very powerful
971 technique, as it doesn't require cooperation from the tool.
972 Unfortunately it is also very difficult to implement and also not
973 practical in the general case.
974
975`LD_PRELOAD'
976 Rather than use the file system, one could write a special library
977 to intercept `open' and other syscalls. This technique is also
978 quite powerful, but unfortunately it is not portable enough for
979 use in `automake'.
980
98127.2.5 Recommendations for Tool Writers
982---------------------------------------
983
984We think that every compilation tool ought to be able to generate
985dependencies as a side effect of compilation. Furthermore, at least
986while `make'-based tools are nearly universally in use (at least in the
987free software community), the tool itself should generate dummy
988dependencies for header files, to avoid the deleted header file bug.
989Finally, the tool should generate a dependency for each probe, instead
990of each successful file open, in order to avoid the duplicated new
991header bug.
992
99327.2.6 Future Directions for Automake's Dependency Tracking
994-----------------------------------------------------------
995
996Currently, only languages and compilers understood by Automake can have
997dependency tracking enabled. We would like to see if it is practical
998(and worthwhile) to let this support be extended by the user to
999languages unknown to Automake.
1000
1001
1002File: automake.info, Node: Releases, Prev: Dependency Tracking Evolution, Up: History
1003
100427.3 Release Statistics
1005=======================
1006
1007The following table (inspired by `perlhist(1)') quantifies the
1008evolution of Automake using these metrics:
1009
1010Date, Rel
1011 The date and version of the release.
1012
1013am
1014 The number of lines of the `automake' script.
1015
1016acl
1017 The number of lines of the `aclocal' script.
1018
1019pm
1020 The number of lines of the `Perl' supporting modules.
1021
1022`*.am'
1023 The number of lines of the `Makefile' fragments. The number in
1024 parenthesis is the number of files.
1025
1026m4
1027 The number of lines (and files) of Autoconf macros.
1028
1029doc
1030 The number of pages of the documentation (the Postscript version).
1031
1032t
1033 The number of test cases in the test suite.
1034
1035Date Rel am acl pm `*.am' m4 doc t
1036------------------------------------------------------------------------------
10371994-09-19 CVS 141 299 (24)
10381994-11-05 CVS 208 332 (28)
10391995-11-23 0.20 533 458 (35) 9
10401995-11-26 0.21 613 480 (36) 11
10411995-11-28 0.22 1116 539 (38) 12
10421995-11-29 0.23 1240 541 (38) 12
10431995-12-08 0.24 1462 504 (33) 14
10441995-12-10 0.25 1513 511 (37) 15
10451996-01-03 0.26 1706 438 (36) 16
10461996-01-03 0.27 1706 438 (36) 16
10471996-01-13 0.28 1964 934 (33) 16
10481996-02-07 0.29 2299 936 (33) 17
10491996-02-24 0.30 2544 919 (32) 85 (1) 20 9
10501996-03-11 0.31 2877 919 (32) 85 (1) 29 17
10511996-04-27 0.32 3058 921 (31) 85 (1) 30 26
10521996-05-18 0.33 3110 926 (31) 105 (1) 30 35
10531996-05-28 1.0 3134 973 (32) 105 (1) 30 38
10541997-06-22 1.2 6089 385 1294 (36) 592 (23) 37 126
10551998-04-05 1.3 6415 422 1470 (39) 741 (26) 39 156
10561999-01-14 1.4 7240 426 1591 (40) 734 (23) 51 197
10572001-05-08 1.4-p1 7251 426 1591 (40) 734 (23) 51 197
10582001-05-24 1.4-p2 7268 439 1591 (40) 734 (23) 49 197
10592001-06-07 1.4-p3 7312 439 1591 (40) 734 (23) 49 197
10602001-06-10 1.4-p4 7321 439 1591 (40) 734 (23) 49 198
10612001-07-15 1.4-p5 7228 426 1596 (40) 734 (23) 51 198
10622001-08-23 1.5 8016 475 600 2654 (39) 1166 (32) 63 327
10632002-03-05 1.6 8465 475 1136 2732 (39) 1603 (31) 66 365
10642002-04-11 1.6.1 8544 475 1136 2741 (39) 1603 (31) 66 372
10652002-06-14 1.6.2 8575 475 1136 2800 (39) 1609 (31) 67 386
10662002-07-28 1.6.3 8600 475 1153 2809 (39) 1609 (31) 67 391
10672002-07-28 1.4-p6 7332 455 1596 (40) 735 (24) 49 197
10682002-09-25 1.7 9189 471 1790 2965 (39) 1606 (33) 73 430
10692002-10-16 1.7.1 9229 475 1790 2977 (39) 1606 (33) 73 437
10702002-12-06 1.7.2 9334 475 1790 2988 (39) 1606 (33) 77 445
10712003-02-20 1.7.3 9389 475 1790 3023 (39) 1651 (34) 84 448
10722003-04-23 1.7.4 9429 475 1790 3031 (39) 1644 (34) 85 458
10732003-05-18 1.7.5 9429 475 1790 3033 (39) 1645 (34) 85 459
10742003-07-10 1.7.6 9442 475 1790 3033 (39) 1660 (34) 85 461
10752003-09-07 1.7.7 9443 475 1790 3041 (39) 1660 (34) 90 467
10762003-10-07 1.7.8 9444 475 1790 3041 (39) 1660 (34) 90 468
10772003-11-09 1.7.9 9444 475 1790 3048 (39) 1660 (34) 90 468
10782003-12-10 1.8 7171 585 7730 3236 (39) 1666 (36) 104 521
10792004-01-11 1.8.1 7217 663 7726 3287 (39) 1686 (36) 104 525
10802004-01-12 1.8.2 7217 663 7726 3288 (39) 1686 (36) 104 526
10812004-03-07 1.8.3 7214 686 7735 3303 (39) 1695 (36) 111 530
10822004-04-25 1.8.4 7214 686 7736 3310 (39) 1701 (36) 112 531
10832004-05-16 1.8.5 7240 686 7736 3299 (39) 1701 (36) 112 533
10842004-07-28 1.9 7508 715 7794 3352 (40) 1812 (37) 115 551
10852004-08-11 1.9.1 7512 715 7794 3354 (40) 1812 (37) 115 552
10862004-09-19 1.9.2 7512 715 7794 3354 (40) 1812 (37) 132 554
1087
1088
1089File: automake.info, Node: Copying This Manual, Next: Indices, Prev: History, Up: Top
1090
1091Appendix A Copying This Manual
1092******************************
1093
1094* Menu:
1095
1096* GNU Free Documentation License:: License for copying this manual
1097
1098
1099File: automake.info, Node: GNU Free Documentation License, Up: Copying This Manual
1100
1101A.1 GNU Free Documentation License
1102==================================
1103
1104 Version 1.2, November 2002
1105
1106 Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
1107 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
1108
1109 Everyone is permitted to copy and distribute verbatim copies
1110 of this license document, but changing it is not allowed.
1111
1112 0. PREAMBLE
1113
1114 The purpose of this License is to make a manual, textbook, or other
1115 functional and useful document "free" in the sense of freedom: to
1116 assure everyone the effective freedom to copy and redistribute it,
1117 with or without modifying it, either commercially or
1118 noncommercially. Secondarily, this License preserves for the
1119 author and publisher a way to get credit for their work, while not
1120 being considered responsible for modifications made by others.
1121
1122 This License is a kind of "copyleft", which means that derivative
1123 works of the document must themselves be free in the same sense.
1124 It complements the GNU General Public License, which is a copyleft
1125 license designed for free software.
1126
1127 We have designed this License in order to use it for manuals for
1128 free software, because free software needs free documentation: a
1129 free program should come with manuals providing the same freedoms
1130 that the software does. But this License is not limited to
1131 software manuals; it can be used for any textual work, regardless
1132 of subject matter or whether it is published as a printed book.
1133 We recommend this License principally for works whose purpose is
1134 instruction or reference.
1135
1136 1. APPLICABILITY AND DEFINITIONS
1137
1138 This License applies to any manual or other work, in any medium,
1139 that contains a notice placed by the copyright holder saying it
1140 can be distributed under the terms of this License. Such a notice
1141 grants a world-wide, royalty-free license, unlimited in duration,
1142 to use that work under the conditions stated herein. The
1143 "Document", below, refers to any such manual or work. Any member
1144 of the public is a licensee, and is addressed as "you". You
1145 accept the license if you copy, modify or distribute the work in a
1146 way requiring permission under copyright law.
1147
1148 A "Modified Version" of the Document means any work containing the
1149 Document or a portion of it, either copied verbatim, or with
1150 modifications and/or translated into another language.
1151
1152 A "Secondary Section" is a named appendix or a front-matter section
1153 of the Document that deals exclusively with the relationship of the
1154 publishers or authors of the Document to the Document's overall
1155 subject (or to related matters) and contains nothing that could
1156 fall directly within that overall subject. (Thus, if the Document
1157 is in part a textbook of mathematics, a Secondary Section may not
1158 explain any mathematics.) The relationship could be a matter of
1159 historical connection with the subject or with related matters, or
1160 of legal, commercial, philosophical, ethical or political position
1161 regarding them.
1162
1163 The "Invariant Sections" are certain Secondary Sections whose
1164 titles are designated, as being those of Invariant Sections, in
1165 the notice that says that the Document is released under this
1166 License. If a section does not fit the above definition of
1167 Secondary then it is not allowed to be designated as Invariant.
1168 The Document may contain zero Invariant Sections. If the Document
1169 does not identify any Invariant Sections then there are none.
1170
1171 The "Cover Texts" are certain short passages of text that are
1172 listed, as Front-Cover Texts or Back-Cover Texts, in the notice
1173 that says that the Document is released under this License. A
1174 Front-Cover Text may be at most 5 words, and a Back-Cover Text may
1175 be at most 25 words.
1176
1177 A "Transparent" copy of the Document means a machine-readable copy,
1178 represented in a format whose specification is available to the
1179 general public, that is suitable for revising the document
1180 straightforwardly with generic text editors or (for images
1181 composed of pixels) generic paint programs or (for drawings) some
1182 widely available drawing editor, and that is suitable for input to
1183 text formatters or for automatic translation to a variety of
1184 formats suitable for input to text formatters. A copy made in an
1185 otherwise Transparent file format whose markup, or absence of
1186 markup, has been arranged to thwart or discourage subsequent
1187 modification by readers is not Transparent. An image format is
1188 not Transparent if used for any substantial amount of text. A
1189 copy that is not "Transparent" is called "Opaque".
1190
1191 Examples of suitable formats for Transparent copies include plain
1192 ASCII without markup, Texinfo input format, LaTeX input format,
1193 SGML or XML using a publicly available DTD, and
1194 standard-conforming simple HTML, PostScript or PDF designed for
1195 human modification. Examples of transparent image formats include
1196 PNG, XCF and JPG. Opaque formats include proprietary formats that
1197 can be read and edited only by proprietary word processors, SGML or
1198 XML for which the DTD and/or processing tools are not generally
1199 available, and the machine-generated HTML, PostScript or PDF
1200 produced by some word processors for output purposes only.
1201
1202 The "Title Page" means, for a printed book, the title page itself,
1203 plus such following pages as are needed to hold, legibly, the
1204 material this License requires to appear in the title page. For
1205 works in formats which do not have any title page as such, "Title
1206 Page" means the text near the most prominent appearance of the
1207 work's title, preceding the beginning of the body of the text.
1208
1209 A section "Entitled XYZ" means a named subunit of the Document
1210 whose title either is precisely XYZ or contains XYZ in parentheses
1211 following text that translates XYZ in another language. (Here XYZ
1212 stands for a specific section name mentioned below, such as
1213 "Acknowledgements", "Dedications", "Endorsements", or "History".)
1214 To "Preserve the Title" of such a section when you modify the
1215 Document means that it remains a section "Entitled XYZ" according
1216 to this definition.
1217
1218 The Document may include Warranty Disclaimers next to the notice
1219 which states that this License applies to the Document. These
1220 Warranty Disclaimers are considered to be included by reference in
1221 this License, but only as regards disclaiming warranties: any other
1222 implication that these Warranty Disclaimers may have is void and
1223 has no effect on the meaning of this License.
1224
1225 2. VERBATIM COPYING
1226
1227 You may copy and distribute the Document in any medium, either
1228 commercially or noncommercially, provided that this License, the
1229 copyright notices, and the license notice saying this License
1230 applies to the Document are reproduced in all copies, and that you
1231 add no other conditions whatsoever to those of this License. You
1232 may not use technical measures to obstruct or control the reading
1233 or further copying of the copies you make or distribute. However,
1234 you may accept compensation in exchange for copies. If you
1235 distribute a large enough number of copies you must also follow
1236 the conditions in section 3.
1237
1238 You may also lend copies, under the same conditions stated above,
1239 and you may publicly display copies.
1240
1241 3. COPYING IN QUANTITY
1242
1243 If you publish printed copies (or copies in media that commonly
1244 have printed covers) of the Document, numbering more than 100, and
1245 the Document's license notice requires Cover Texts, you must
1246 enclose the copies in covers that carry, clearly and legibly, all
1247 these Cover Texts: Front-Cover Texts on the front cover, and
1248 Back-Cover Texts on the back cover. Both covers must also clearly
1249 and legibly identify you as the publisher of these copies. The
1250 front cover must present the full title with all words of the
1251 title equally prominent and visible. You may add other material
1252 on the covers in addition. Copying with changes limited to the
1253 covers, as long as they preserve the title of the Document and
1254 satisfy these conditions, can be treated as verbatim copying in
1255 other respects.
1256
1257 If the required texts for either cover are too voluminous to fit
1258 legibly, you should put the first ones listed (as many as fit
1259 reasonably) on the actual cover, and continue the rest onto
1260 adjacent pages.
1261
1262 If you publish or distribute Opaque copies of the Document
1263 numbering more than 100, you must either include a
1264 machine-readable Transparent copy along with each Opaque copy, or
1265 state in or with each Opaque copy a computer-network location from
1266 which the general network-using public has access to download
1267 using public-standard network protocols a complete Transparent
1268 copy of the Document, free of added material. If you use the
1269 latter option, you must take reasonably prudent steps, when you
1270 begin distribution of Opaque copies in quantity, to ensure that
1271 this Transparent copy will remain thus accessible at the stated
1272 location until at least one year after the last time you
1273 distribute an Opaque copy (directly or through your agents or
1274 retailers) of that edition to the public.
1275
1276 It is requested, but not required, that you contact the authors of
1277 the Document well before redistributing any large number of
1278 copies, to give them a chance to provide you with an updated
1279 version of the Document.
1280
1281 4. MODIFICATIONS
1282
1283 You may copy and distribute a Modified Version of the Document
1284 under the conditions of sections 2 and 3 above, provided that you
1285 release the Modified Version under precisely this License, with
1286 the Modified Version filling the role of the Document, thus
1287 licensing distribution and modification of the Modified Version to
1288 whoever possesses a copy of it. In addition, you must do these
1289 things in the Modified Version:
1290
1291 A. Use in the Title Page (and on the covers, if any) a title
1292 distinct from that of the Document, and from those of
1293 previous versions (which should, if there were any, be listed
1294 in the History section of the Document). You may use the
1295 same title as a previous version if the original publisher of
1296 that version gives permission.
1297
1298 B. List on the Title Page, as authors, one or more persons or
1299 entities responsible for authorship of the modifications in
1300 the Modified Version, together with at least five of the
1301 principal authors of the Document (all of its principal
1302 authors, if it has fewer than five), unless they release you
1303 from this requirement.
1304
1305 C. State on the Title page the name of the publisher of the
1306 Modified Version, as the publisher.
1307
1308 D. Preserve all the copyright notices of the Document.
1309
1310 E. Add an appropriate copyright notice for your modifications
1311 adjacent to the other copyright notices.
1312
1313 F. Include, immediately after the copyright notices, a license
1314 notice giving the public permission to use the Modified
1315 Version under the terms of this License, in the form shown in
1316 the Addendum below.
1317
1318 G. Preserve in that license notice the full lists of Invariant
1319 Sections and required Cover Texts given in the Document's
1320 license notice.
1321
1322 H. Include an unaltered copy of this License.
1323
1324 I. Preserve the section Entitled "History", Preserve its Title,
1325 and add to it an item stating at least the title, year, new
1326 authors, and publisher of the Modified Version as given on
1327 the Title Page. If there is no section Entitled "History" in
1328 the Document, create one stating the title, year, authors,
1329 and publisher of the Document as given on its Title Page,
1330 then add an item describing the Modified Version as stated in
1331 the previous sentence.
1332
1333 J. Preserve the network location, if any, given in the Document
1334 for public access to a Transparent copy of the Document, and
1335 likewise the network locations given in the Document for
1336 previous versions it was based on. These may be placed in
1337 the "History" section. You may omit a network location for a
1338 work that was published at least four years before the
1339 Document itself, or if the original publisher of the version
1340 it refers to gives permission.
1341
1342 K. For any section Entitled "Acknowledgements" or "Dedications",
1343 Preserve the Title of the section, and preserve in the
1344 section all the substance and tone of each of the contributor
1345 acknowledgements and/or dedications given therein.
1346
1347 L. Preserve all the Invariant Sections of the Document,
1348 unaltered in their text and in their titles. Section numbers
1349 or the equivalent are not considered part of the section
1350 titles.
1351
1352 M. Delete any section Entitled "Endorsements". Such a section
1353 may not be included in the Modified Version.
1354
1355 N. Do not retitle any existing section to be Entitled
1356 "Endorsements" or to conflict in title with any Invariant
1357 Section.
1358
1359 O. Preserve any Warranty Disclaimers.
1360
1361 If the Modified Version includes new front-matter sections or
1362 appendices that qualify as Secondary Sections and contain no
1363 material copied from the Document, you may at your option
1364 designate some or all of these sections as invariant. To do this,
1365 add their titles to the list of Invariant Sections in the Modified
1366 Version's license notice. These titles must be distinct from any
1367 other section titles.
1368
1369 You may add a section Entitled "Endorsements", provided it contains
1370 nothing but endorsements of your Modified Version by various
1371 parties--for example, statements of peer review or that the text
1372 has been approved by an organization as the authoritative
1373 definition of a standard.
1374
1375 You may add a passage of up to five words as a Front-Cover Text,
1376 and a passage of up to 25 words as a Back-Cover Text, to the end
1377 of the list of Cover Texts in the Modified Version. Only one
1378 passage of Front-Cover Text and one of Back-Cover Text may be
1379 added by (or through arrangements made by) any one entity. If the
1380 Document already includes a cover text for the same cover,
1381 previously added by you or by arrangement made by the same entity
1382 you are acting on behalf of, you may not add another; but you may
1383 replace the old one, on explicit permission from the previous
1384 publisher that added the old one.
1385
1386 The author(s) and publisher(s) of the Document do not by this
1387 License give permission to use their names for publicity for or to
1388 assert or imply endorsement of any Modified Version.
1389
1390 5. COMBINING DOCUMENTS
1391
1392 You may combine the Document with other documents released under
1393 this License, under the terms defined in section 4 above for
1394 modified versions, provided that you include in the combination
1395 all of the Invariant Sections of all of the original documents,
1396 unmodified, and list them all as Invariant Sections of your
1397 combined work in its license notice, and that you preserve all
1398 their Warranty Disclaimers.
1399
1400 The combined work need only contain one copy of this License, and
1401 multiple identical Invariant Sections may be replaced with a single
1402 copy. If there are multiple Invariant Sections with the same name
1403 but different contents, make the title of each such section unique
1404 by adding at the end of it, in parentheses, the name of the
1405 original author or publisher of that section if known, or else a
1406 unique number. Make the same adjustment to the section titles in
1407 the list of Invariant Sections in the license notice of the
1408 combined work.
1409
1410 In the combination, you must combine any sections Entitled
1411 "History" in the various original documents, forming one section
1412 Entitled "History"; likewise combine any sections Entitled
1413 "Acknowledgements", and any sections Entitled "Dedications". You
1414 must delete all sections Entitled "Endorsements."
1415
1416 6. COLLECTIONS OF DOCUMENTS
1417
1418 You may make a collection consisting of the Document and other
1419 documents released under this License, and replace the individual
1420 copies of this License in the various documents with a single copy
1421 that is included in the collection, provided that you follow the
1422 rules of this License for verbatim copying of each of the
1423 documents in all other respects.
1424
1425 You may extract a single document from such a collection, and
1426 distribute it individually under this License, provided you insert
1427 a copy of this License into the extracted document, and follow
1428 this License in all other respects regarding verbatim copying of
1429 that document.
1430
1431 7. AGGREGATION WITH INDEPENDENT WORKS
1432
1433 A compilation of the Document or its derivatives with other
1434 separate and independent documents or works, in or on a volume of
1435 a storage or distribution medium, is called an "aggregate" if the
1436 copyright resulting from the compilation is not used to limit the
1437 legal rights of the compilation's users beyond what the individual
1438 works permit. When the Document is included in an aggregate, this
1439 License does not apply to the other works in the aggregate which
1440 are not themselves derivative works of the Document.
1441
1442 If the Cover Text requirement of section 3 is applicable to these
1443 copies of the Document, then if the Document is less than one half
1444 of the entire aggregate, the Document's Cover Texts may be placed
1445 on covers that bracket the Document within the aggregate, or the
1446 electronic equivalent of covers if the Document is in electronic
1447 form. Otherwise they must appear on printed covers that bracket
1448 the whole aggregate.
1449
1450 8. TRANSLATION
1451
1452 Translation is considered a kind of modification, so you may
1453 distribute translations of the Document under the terms of section
1454 4. Replacing Invariant Sections with translations requires special
1455 permission from their copyright holders, but you may include
1456 translations of some or all Invariant Sections in addition to the
1457 original versions of these Invariant Sections. You may include a
1458 translation of this License, and all the license notices in the
1459 Document, and any Warranty Disclaimers, provided that you also
1460 include the original English version of this License and the
1461 original versions of those notices and disclaimers. In case of a
1462 disagreement between the translation and the original version of
1463 this License or a notice or disclaimer, the original version will
1464 prevail.
1465
1466 If a section in the Document is Entitled "Acknowledgements",
1467 "Dedications", or "History", the requirement (section 4) to
1468 Preserve its Title (section 1) will typically require changing the
1469 actual title.
1470
1471 9. TERMINATION
1472
1473 You may not copy, modify, sublicense, or distribute the Document
1474 except as expressly provided for under this License. Any other
1475 attempt to copy, modify, sublicense or distribute the Document is
1476 void, and will automatically terminate your rights under this
1477 License. However, parties who have received copies, or rights,
1478 from you under this License will not have their licenses
1479 terminated so long as such parties remain in full compliance.
1480
1481 10. FUTURE REVISIONS OF THIS LICENSE
1482
1483 The Free Software Foundation may publish new, revised versions of
1484 the GNU Free Documentation License from time to time. Such new
1485 versions will be similar in spirit to the present version, but may
1486 differ in detail to address new problems or concerns. See
1487 `http://www.gnu.org/copyleft/'.
1488
1489 Each version of the License is given a distinguishing version
1490 number. If the Document specifies that a particular numbered
1491 version of this License "or any later version" applies to it, you
1492 have the option of following the terms and conditions either of
1493 that specified version or of any later version that has been
1494 published (not as a draft) by the Free Software Foundation. If
1495 the Document does not specify a version number of this License,
1496 you may choose any version ever published (not as a draft) by the
1497 Free Software Foundation.
1498
1499A.1.1 ADDENDUM: How to use this License for your documents
1500----------------------------------------------------------
1501
1502To use this License in a document you have written, include a copy of
1503the License in the document and put the following copyright and license
1504notices just after the title page:
1505
1506 Copyright (C) YEAR YOUR NAME.
1507 Permission is granted to copy, distribute and/or modify this document
1508 under the terms of the GNU Free Documentation License, Version 1.2
1509 or any later version published by the Free Software Foundation;
1510 with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
1511 Texts. A copy of the license is included in the section entitled ``GNU
1512 Free Documentation License''.
1513
1514 If you have Invariant Sections, Front-Cover Texts and Back-Cover
1515Texts, replace the "with...Texts." line with this:
1516
1517 with the Invariant Sections being LIST THEIR TITLES, with
1518 the Front-Cover Texts being LIST, and with the Back-Cover Texts
1519 being LIST.
1520
1521 If you have Invariant Sections without Cover Texts, or some other
1522combination of the three, merge those two alternatives to suit the
1523situation.
1524
1525 If your document contains nontrivial examples of program code, we
1526recommend releasing these examples in parallel under your choice of
1527free software license, such as the GNU General Public License, to
1528permit their use in free software.
1529
1530
1531File: automake.info, Node: Indices, Prev: Copying This Manual, Up: Top
1532
1533Appendix B Indices
1534******************
1535
1536* Menu:
1537
1538* Macro Index:: Index of Autoconf macros
1539* Variable Index:: Index of Makefile variables
1540* General Index:: General index
1541
1542
1543File: automake.info, Node: Macro Index, Next: Variable Index, Up: Indices
1544
1545B.1 Macro Index
1546===============
1547
1548[index]
1549* Menu:
1550
1551* _AM_DEPENDENCIES: Private macros. (line 12)
1552* AC_CANONICAL_BUILD: Optional. (line 43)
1553* AC_CANONICAL_HOST: Optional. (line 44)
1554* AC_CANONICAL_TARGET: Optional. (line 45)
1555* AC_CONFIG_AUX_DIR <1>: Subpackages. (line 6)
1556* AC_CONFIG_AUX_DIR: Optional. (line 21)
1557* AC_CONFIG_FILES: Requirements. (line 15)
1558* AC_CONFIG_HEADERS: Optional. (line 11)
1559* AC_CONFIG_LIBOBJ_DIR: LIBOBJS. (line 48)
1560* AC_CONFIG_LINKS: Optional. (line 16)
1561* AC_CONFIG_SUBDIRS: Subpackages. (line 6)
1562* AC_DEFUN: Extending aclocal. (line 33)
1563* AC_F77_LIBRARY_LDFLAGS: Optional. (line 80)
1564* AC_INIT: Public macros. (line 32)
1565* AC_LIBOBJ <1>: LIBOBJS. (line 11)
1566* AC_LIBOBJ <2>: LTLIBOBJS. (line 6)
1567* AC_LIBOBJ: Optional. (line 53)
1568* AC_LIBSOURCE <1>: LIBOBJS. (line 17)
1569* AC_LIBSOURCE: Optional. (line 51)
1570* AC_LIBSOURCES: Optional. (line 52)
1571* AC_OUTPUT: Requirements. (line 15)
1572* AC_PREREQ: Extending aclocal. (line 33)
1573* AC_PROG_CC_C_O: Public macros. (line 87)
1574* AC_PROG_CXX: Optional. (line 71)
1575* AC_PROG_F77: Optional. (line 75)
1576* AC_PROG_FC: Optional. (line 86)
1577* AC_PROG_LEX <1>: Public macros. (line 92)
1578* AC_PROG_LEX: Optional. (line 101)
1579* AC_PROG_LIBTOOL: Optional. (line 91)
1580* AC_PROG_RANLIB: Optional. (line 67)
1581* AC_PROG_YACC: Optional. (line 95)
1582* AC_SUBST: Optional. (line 105)
1583* AM_C_PROTOTYPES <1>: ANSI. (line 27)
1584* AM_C_PROTOTYPES <2>: Public macros. (line 7)
1585* AM_C_PROTOTYPES: Optional. (line 116)
1586* AM_CONDITIONAL: Conditionals. (line 8)
1587* AM_CONFIG_HEADER: Obsolete macros. (line 13)
1588* AM_DEP_TRACK: Private macros. (line 14)
1589* AM_ENABLE_MULTILIB: Public macros. (line 14)
1590* AM_GNU_GETTEXT: Optional. (line 120)
1591* AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL: Obsolete macros. (line 18)
1592* AM_INIT_AUTOMAKE <1>: Public macros. (line 23)
1593* AM_INIT_AUTOMAKE: Requirements. (line 6)
1594* AM_MAINTAINER_MODE <1>: maintainer-mode. (line 36)
1595* AM_MAINTAINER_MODE <2>: Rebuilding. (line 9)
1596* AM_MAINTAINER_MODE: Optional. (line 126)
1597* AM_MAKE_INCLUDE: Private macros. (line 20)
1598* AM_OUTPUT_DEPENDENCY_COMMANDS: Private macros. (line 15)
1599* AM_PATH_LISPDIR: Public macros. (line 67)
1600* AM_PATH_PYTHON: Python. (line 25)
1601* AM_PROG_AS: Public macros. (line 82)
1602* AM_PROG_CC_C_O: Public macros. (line 87)
1603* AM_PROG_GCJ: Public macros. (line 97)
1604* AM_PROG_INSTALL_STRIP: Private macros. (line 25)
1605* AM_PROG_LEX: Public macros. (line 92)
1606* AM_SANITY_CHECK: Private macros. (line 30)
1607* AM_SET_DEPDIR: Private macros. (line 13)
1608* AM_SYS_POSIX_TERMIOS: Obsolete macros. (line 24)
1609* AM_WITH_DMALLOC: Public macros. (line 102)
1610* AM_WITH_REGEX: Public macros. (line 107)
1611* m4_include <1>: Dist. (line 17)
1612* m4_include: Optional. (line 134)
1613
1614
1615File: automake.info, Node: Variable Index, Next: General Index, Prev: Macro Index, Up: Indices
1616
1617B.2 Variable Index
1618==================
1619
1620[index]
1621* Menu:
1622
1623* _DATA: Data. (line 6)
1624* _HEADERS: Headers. (line 6)
1625* _LIBRARIES: A Library. (line 6)
1626* _LISP: Emacs Lisp. (line 6)
1627* _LTLIBRARIES: Libtool Libraries. (line 6)
1628* _MANS: Man pages. (line 6)
1629* _PROGRAMS <1>: Program Sources. (line 6)
1630* _PROGRAMS: Uniform. (line 11)
1631* _PYTHON: Python. (line 6)
1632* _SCRIPTS: Scripts. (line 6)
1633* _SOURCES <1>: Default _SOURCES. (line 6)
1634* _SOURCES: Program Sources. (line 32)
1635* _TEXINFOS: Texinfo. (line 6)
1636* ACLOCAL_AMFLAGS <1>: Rebuilding. (line 12)
1637* ACLOCAL_AMFLAGS: Local Macros. (line 19)
1638* ALLOCA <1>: LIBOBJS. (line 6)
1639* ALLOCA: LTLIBOBJS. (line 6)
1640* AM_CCASFLAGS: Assembly Support. (line 8)
1641* AM_CFLAGS: Program variables. (line 36)
1642* AM_CPPFLAGS: Program variables. (line 15)
1643* AM_CXXFLAGS: C++ Support. (line 22)
1644* AM_ETAGSFLAGS: Tags. (line 25)
1645* AM_FCFLAGS: Fortran 9x Support. (line 22)
1646* AM_FFLAGS: Fortran 77 Support. (line 22)
1647* AM_GCJFLAGS: Java Support. (line 24)
1648* AM_INSTALLCHECK_STD_OPTIONS_EXEMPT: Options. (line 119)
1649* AM_JAVACFLAGS: Java. (line 36)
1650* AM_LDFLAGS <1>: Program variables. (line 46)
1651* AM_LDFLAGS: Linking. (line 10)
1652* AM_LFLAGS: Yacc and Lex. (line 56)
1653* AM_MAKEFLAGS: Subdirectories. (line 29)
1654* AM_MAKEINFOFLAGS: Texinfo. (line 87)
1655* AM_MAKEINFOHTMLFLAGS: Texinfo. (line 88)
1656* AM_RFLAGS: Fortran 77 Support. (line 28)
1657* AM_RUNTESTFLAGS: Tests. (line 62)
1658* AM_YFLAGS: Yacc and Lex. (line 33)
1659* ANSI2KNR: Public macros. (line 7)
1660* AUTOCONF: Invoking Automake. (line 28)
1661* AUTOM4TE: Invoking aclocal. (line 45)
1662* AUTOMAKE_OPTIONS <1>: Options. (line 11)
1663* AUTOMAKE_OPTIONS <2>: Dependencies. (line 34)
1664* AUTOMAKE_OPTIONS <3>: ANSI. (line 14)
1665* AUTOMAKE_OPTIONS: Public macros. (line 26)
1666* bin_PROGRAMS: Program Sources. (line 6)
1667* bin_SCRIPTS: Scripts. (line 38)
1668* build_triplet: Optional. (line 46)
1669* BUILT_SOURCES: Sources. (line 27)
1670* CC: Program variables. (line 11)
1671* CCAS <1>: Assembly Support. (line 8)
1672* CCAS: Public macros. (line 82)
1673* CCASFLAGS <1>: Assembly Support. (line 8)
1674* CCASFLAGS: Public macros. (line 82)
1675* CFLAGS: Program variables. (line 11)
1676* check_: Uniform. (line 74)
1677* check_LTLIBRARIES: Libtool Convenience Libraries.
1678 (line 6)
1679* check_PROGRAMS <1>: Default _SOURCES. (line 29)
1680* check_PROGRAMS: Program Sources. (line 6)
1681* check_SCRIPTS: Scripts. (line 38)
1682* CLASSPATH_ENV: Java. (line 45)
1683* CLEANFILES: Clean. (line 13)
1684* COMPILE: Program variables. (line 42)
1685* CONFIG_STATUS_DEPENDENCIES: Rebuilding. (line 19)
1686* CONFIGURE_DEPENDENCIES: Rebuilding. (line 19)
1687* CPPFLAGS: Program variables. (line 11)
1688* CXX: C++ Support. (line 16)
1689* CXXCOMPILE: C++ Support. (line 25)
1690* CXXFLAGS: C++ Support. (line 19)
1691* CXXLINK <1>: How the Linker is Chosen.
1692 (line 12)
1693* CXXLINK: C++ Support. (line 29)
1694* DATA <1>: Data. (line 7)
1695* DATA: Uniform. (line 79)
1696* data_DATA: Data. (line 9)
1697* DEFS: Program variables. (line 11)
1698* DEJATOOL: Tests. (line 57)
1699* DESTDIR: Install. (line 79)
1700* dist_ <1>: Dist. (line 53)
1701* dist_: Alternative. (line 30)
1702* dist_lisp_LISP: Emacs Lisp. (line 11)
1703* dist_noinst_LISP: Emacs Lisp. (line 11)
1704* DIST_SUBDIRS <1>: Dist. (line 41)
1705* DIST_SUBDIRS: Conditional Subdirectories.
1706 (line 84)
1707* DISTCHECK_CONFIGURE_FLAGS: Dist. (line 117)
1708* distcleancheck_listfiles <1>: distcleancheck. (line 114)
1709* distcleancheck_listfiles: Dist. (line 111)
1710* DISTCLEANFILES <1>: Dist. (line 133)
1711* DISTCLEANFILES: Clean. (line 13)
1712* distdir <1>: Third-Party Makefiles.
1713 (line 25)
1714* distdir: Dist. (line 89)
1715* distuninstallcheck_listfiles: Dist. (line 111)
1716* DVIPS: Texinfo. (line 113)
1717* EMACS: Public macros. (line 67)
1718* ETAGS_ARGS: Tags. (line 25)
1719* ETAGSFLAGS: Tags. (line 25)
1720* EXPECT: Tests. (line 57)
1721* EXTRA_DIST: Dist. (line 30)
1722* EXTRA_maude_SOURCES: Program and Library Variables.
1723 (line 53)
1724* EXTRA_PROGRAMS: Conditional Programs.
1725 (line 15)
1726* F77: Fortran 77 Support. (line 16)
1727* F77COMPILE: Fortran 77 Support. (line 31)
1728* F77LINK: How the Linker is Chosen.
1729 (line 14)
1730* FC: Fortran 9x Support. (line 16)
1731* FCCOMPILE: Fortran 9x Support. (line 25)
1732* FCFLAGS: Fortran 9x Support. (line 19)
1733* FCLINK <1>: Fortran 9x Support. (line 29)
1734* FCLINK: How the Linker is Chosen.
1735 (line 16)
1736* FFLAGS: Fortran 77 Support. (line 19)
1737* FLIBS: Mixing Fortran 77 With C and C++.
1738 (line 21)
1739* FLINK: Fortran 77 Support. (line 35)
1740* GCJ: Public macros. (line 97)
1741* GCJFLAGS <1>: Java Support. (line 14)
1742* GCJFLAGS: Public macros. (line 97)
1743* GCJLINK: How the Linker is Chosen.
1744 (line 10)
1745* GTAGS_ARGS: Tags. (line 49)
1746* GZIP_ENV: Dist. (line 13)
1747* HEADERS: Uniform. (line 79)
1748* host_triplet: Optional. (line 46)
1749* include_HEADERS: Headers. (line 6)
1750* INCLUDES <1>: Program variables. (line 30)
1751* INCLUDES: Hello. (line 80)
1752* info_TEXINFOS: Texinfo. (line 6)
1753* JAVA: Uniform. (line 79)
1754* JAVAC: Java. (line 29)
1755* JAVACFLAGS: Java. (line 32)
1756* JAVAROOT: Java. (line 41)
1757* LDADD: Linking. (line 10)
1758* LDFLAGS: Program variables. (line 11)
1759* LFLAGS: Yacc and Lex. (line 56)
1760* lib_LIBRARIES: A Library. (line 6)
1761* lib_LTLIBRARIES: Libtool Libraries. (line 6)
1762* libexec_PROGRAMS: Program Sources. (line 6)
1763* libexec_SCRIPTS: Scripts. (line 38)
1764* LIBOBJS <1>: LIBOBJS. (line 6)
1765* LIBOBJS <2>: LTLIBOBJS. (line 6)
1766* LIBOBJS: Optional. (line 54)
1767* LIBRARIES: Uniform. (line 79)
1768* LIBS: Program variables. (line 11)
1769* LINK <1>: How the Linker is Chosen.
1770 (line 20)
1771* LINK: Program variables. (line 51)
1772* LISP: Uniform. (line 79)
1773* lisp_LISP: Emacs Lisp. (line 6)
1774* lispdir: Public macros. (line 67)
1775* localstate_DATA: Data. (line 9)
1776* LTALLOCA <1>: LIBOBJS. (line 6)
1777* LTALLOCA: LTLIBOBJS. (line 6)
1778* LTLIBOBJS <1>: LIBOBJS. (line 6)
1779* LTLIBOBJS: LTLIBOBJS. (line 6)
1780* MAINTAINERCLEANFILES: Clean. (line 13)
1781* MAKE: Subdirectories. (line 29)
1782* MAKEINFO: Texinfo. (line 71)
1783* MAKEINFOFLAGS: Texinfo. (line 81)
1784* MAKEINFOHTML: Texinfo. (line 77)
1785* man_MANS: Man pages. (line 6)
1786* MANS: Uniform. (line 79)
1787* maude_AR: Program and Library Variables.
1788 (line 68)
1789* maude_CCASFLAGS: Program and Library Variables.
1790 (line 131)
1791* maude_CFLAGS: Program and Library Variables.
1792 (line 132)
1793* maude_CPPFLAGS: Program and Library Variables.
1794 (line 133)
1795* maude_CXXFLAGS: Program and Library Variables.
1796 (line 134)
1797* maude_DEPENDENCIES <1>: Program and Library Variables.
1798 (line 105)
1799* maude_DEPENDENCIES: Linking. (line 41)
1800* maude_FFLAGS: Program and Library Variables.
1801 (line 135)
1802* maude_GCJFLAGS: Program and Library Variables.
1803 (line 136)
1804* maude_LDADD <1>: Program and Library Variables.
1805 (line 86)
1806* maude_LDADD: Linking. (line 17)
1807* maude_LDFLAGS <1>: Program and Library Variables.
1808 (line 101)
1809* maude_LDFLAGS: Linking. (line 37)
1810* maude_LFLAGS: Program and Library Variables.
1811 (line 137)
1812* maude_LIBADD <1>: Program and Library Variables.
1813 (line 78)
1814* maude_LIBADD: A Library. (line 26)
1815* maude_LINK: Program and Library Variables.
1816 (line 120)
1817* maude_OBJCFLAGS: Program and Library Variables.
1818 (line 138)
1819* maude_RFLAGS: Program and Library Variables.
1820 (line 139)
1821* maude_SHORTNAME: Program and Library Variables.
1822 (line 169)
1823* maude_SOURCES: Program and Library Variables.
1824 (line 18)
1825* maude_YFLAGS: Program and Library Variables.
1826 (line 140)
1827* MOSTLYCLEANFILES: Clean. (line 13)
1828* nobase_: Alternative. (line 24)
1829* nodist_ <1>: Dist. (line 53)
1830* nodist_: Alternative. (line 30)
1831* noinst_: Uniform. (line 69)
1832* noinst_HEADERS: Headers. (line 6)
1833* noinst_LIBRARIES: A Library. (line 6)
1834* noinst_LISP: Emacs Lisp. (line 6)
1835* noinst_LTLIBRARIES: Libtool Convenience Libraries.
1836 (line 6)
1837* noinst_PROGRAMS: Program Sources. (line 6)
1838* noinst_SCRIPTS: Scripts. (line 38)
1839* OBJCLINK: How the Linker is Chosen.
1840 (line 18)
1841* oldinclude_HEADERS: Headers. (line 6)
1842* PACKAGE: Dist. (line 9)
1843* pkgdata_DATA: Data. (line 9)
1844* pkgdata_SCRIPTS: Scripts. (line 38)
1845* pkgdatadir: Uniform. (line 19)
1846* pkginclude_HEADERS: Headers. (line 6)
1847* pkgincludedir: Uniform. (line 19)
1848* pkglib_LIBRARIES: A Library. (line 6)
1849* pkglib_LTLIBRARIES: Libtool Libraries. (line 6)
1850* pkglib_PROGRAMS: Program Sources. (line 6)
1851* pkglibdir: Uniform. (line 19)
1852* pkgpyexecdir: Python. (line 86)
1853* pkgpythondir: Python. (line 77)
1854* PROGRAMS: Uniform. (line 17)
1855* pyexecdir: Python. (line 82)
1856* PYTHON <1>: Python. (line 42)
1857* PYTHON: Uniform. (line 79)
1858* PYTHON_EXEC_PREFIX: Python. (line 63)
1859* PYTHON_PLATFORM: Python. (line 68)
1860* PYTHON_PREFIX: Python. (line 58)
1861* PYTHON_VERSION: Python. (line 54)
1862* pythondir: Python. (line 73)
1863* RFLAGS: Fortran 77 Support. (line 25)
1864* RUNTEST: Tests. (line 57)
1865* RUNTESTDEFAULTFLAGS: Tests. (line 52)
1866* RUNTESTFLAGS: Tests. (line 62)
1867* sbin_PROGRAMS: Program Sources. (line 6)
1868* sbin_SCRIPTS: Scripts. (line 38)
1869* SCRIPTS <1>: Scripts. (line 9)
1870* SCRIPTS: Uniform. (line 79)
1871* sharedstate_DATA: Data. (line 9)
1872* SOURCES <1>: Default _SOURCES. (line 6)
1873* SOURCES: Program Sources. (line 33)
1874* SUBDIRS <1>: Dist. (line 41)
1875* SUBDIRS: Subdirectories. (line 8)
1876* SUFFIXES: Suffixes. (line 6)
1877* sysconf_DATA: Data. (line 9)
1878* TAGS_DEPENDENCIES: Tags. (line 35)
1879* target_triplet: Optional. (line 46)
1880* TESTS: Tests. (line 29)
1881* TESTS_ENVIRONMENT: Tests. (line 29)
1882* TEXI2DVI: Texinfo. (line 104)
1883* TEXI2PDF: Texinfo. (line 109)
1884* TEXINFO_TEX: Texinfo. (line 117)
1885* TEXINFOS <1>: Texinfo. (line 48)
1886* TEXINFOS: Uniform. (line 79)
1887* top_distdir <1>: Third-Party Makefiles.
1888 (line 25)
1889* top_distdir: Dist. (line 89)
1890* U: Public macros. (line 7)
1891* VERSION: Dist. (line 9)
1892* WARNINGS: Invoking Automake. (line 167)
1893* WITH_DMALLOC: Public macros. (line 102)
1894* WITH_REGEX: Public macros. (line 107)
1895* XFAIL_TESTS: Tests. (line 33)
1896* YACC: Optional. (line 96)
1897* YFLAGS: Yacc and Lex. (line 33)
1898
1899
1900File: automake.info, Node: General Index, Prev: Variable Index, Up: Indices
1901
1902B.3 General Index
1903=================
1904
1905[index]
1906* Menu:
1907
1908* ## (special Automake comment): General Operation. (line 54)
1909* $(LIBOBJS) and empty libraries: LIBOBJS. (line 69)
1910* +=: General Operation. (line 23)
1911* --acdir: aclocal options. (line 9)
1912* --add-missing: Invoking Automake. (line 41)
1913* --copy: Invoking Automake. (line 63)
1914* --cygnus: Invoking Automake. (line 67)
1915* --enable-debug, example: Conditionals. (line 23)
1916* --enable-maintainer-mode: Optional. (line 127)
1917* --force: aclocal options. (line 20)
1918* --force-missing: Invoking Automake. (line 72)
1919* --foreign: Invoking Automake. (line 78)
1920* --gnits: Invoking Automake. (line 82)
1921* --gnits, complete description: Gnits. (line 21)
1922* --gnu: Invoking Automake. (line 86)
1923* --gnu, complete description: Gnits. (line 6)
1924* --gnu, required files: Gnits. (line 6)
1925* --help <1>: aclocal options. (line 13)
1926* --help: Invoking Automake. (line 90)
1927* --help check: Options. (line 114)
1928* --include-deps: Invoking Automake. (line 98)
1929* --libdir: Invoking Automake. (line 58)
1930* --no-force: Invoking Automake. (line 103)
1931* --output: aclocal options. (line 25)
1932* --output-dir: Invoking Automake. (line 110)
1933* --print-ac-dir: aclocal options. (line 28)
1934* --verbose <1>: aclocal options. (line 34)
1935* --verbose: Invoking Automake. (line 117)
1936* --version <1>: aclocal options. (line 37)
1937* --version: Invoking Automake. (line 121)
1938* --version check: Options. (line 114)
1939* --warnings: Invoking Automake. (line 126)
1940* --with-dmalloc: Public macros. (line 102)
1941* --with-regex: Public macros. (line 107)
1942* -a: Invoking Automake. (line 41)
1943* -c: Invoking Automake. (line 62)
1944* -f: Invoking Automake. (line 71)
1945* -hook targets: Extending. (line 59)
1946* -I: aclocal options. (line 16)
1947* -i: Invoking Automake. (line 94)
1948* -local targets: Extending. (line 36)
1949* -module, libtool: Libtool Modules. (line 6)
1950* -o: Invoking Automake. (line 110)
1951* -v: Invoking Automake. (line 117)
1952* -W: Invoking Automake. (line 126)
1953* .la suffix, defined: Libtool Concept. (line 6)
1954* _DATA primary, defined: Data. (line 6)
1955* _DEPENDENCIES, defined: Linking. (line 41)
1956* _HEADERS primary, defined: Headers. (line 6)
1957* _JAVA primary, defined: Java. (line 6)
1958* _LDFLAGS, defined: Linking. (line 37)
1959* _LDFLAGS, libtool: Libtool Flags. (line 6)
1960* _LIBADD, libtool: Libtool Flags. (line 6)
1961* _LIBRARIES primary, defined: A Library. (line 6)
1962* _LISP primary, defined: Emacs Lisp. (line 6)
1963* _LTLIBRARIES primary, defined: Libtool Libraries. (line 6)
1964* _MANS primary, defined: Man pages. (line 6)
1965* _PROGRAMS primary variable: Uniform. (line 11)
1966* _PYTHON primary, defined: Python. (line 6)
1967* _SCRIPTS primary, defined: Scripts. (line 6)
1968* _SOURCES and header files: Program Sources. (line 39)
1969* _SOURCES primary, defined: Program Sources. (line 32)
1970* _SOURCES, default: Default _SOURCES. (line 6)
1971* _SOURCES, empty: Default _SOURCES. (line 43)
1972* _TEXINFOS primary, defined: Texinfo. (line 6)
1973* AC_SUBST and SUBDIRS: Conditional Subdirectories.
1974 (line 95)
1975* acinclude.m4, defined: Complete. (line 23)
1976* aclocal program, introduction: Complete. (line 23)
1977* aclocal search path: Macro search path. (line 6)
1978* aclocal's scheduled death: Future of aclocal. (line 6)
1979* aclocal, extending: Extending aclocal. (line 6)
1980* aclocal, Invoking: Invoking aclocal. (line 6)
1981* aclocal, Options: aclocal options. (line 6)
1982* aclocal.m4, preexisting: Complete. (line 23)
1983* Adding new SUFFIXES: Suffixes. (line 6)
1984* all: Extending. (line 40)
1985* all-local: Extending. (line 40)
1986* ALLOCA, and Libtool: LTLIBOBJS. (line 6)
1987* ALLOCA, example: LIBOBJS. (line 6)
1988* ALLOCA, special handling: LIBOBJS. (line 6)
1989* AM_CCASFLAGS and CCASFLAGS: Flag Variables Ordering.
1990 (line 20)
1991* AM_CFLAGS and CFLAGS: Flag Variables Ordering.
1992 (line 20)
1993* AM_CONDITIONAL and SUBDIRS: Conditional Subdirectories.
1994 (line 65)
1995* AM_CPPFLAGS and CPPFLAGS: Flag Variables Ordering.
1996 (line 20)
1997* AM_CXXFLAGS and CXXFLAGS: Flag Variables Ordering.
1998 (line 20)
1999* AM_FCFLAGS and FCFLAGS: Flag Variables Ordering.
2000 (line 20)
2001* AM_FFLAGS and FFLAGS: Flag Variables Ordering.
2002 (line 20)
2003* AM_GCJFLAGS and GCJFLAGS: Flag Variables Ordering.
2004 (line 20)
2005* AM_INIT_AUTOMAKE, example use: Complete. (line 11)
2006* AM_LDFLAGS and LDFLAGS: Flag Variables Ordering.
2007 (line 20)
2008* AM_LFLAGS and LFLAGS: Flag Variables Ordering.
2009 (line 20)
2010* AM_MAINTAINER_MODE, purpose: maintainer-mode. (line 36)
2011* AM_OBJCFLAGS and OBJCFLAGS: Flag Variables Ordering.
2012 (line 20)
2013* AM_RFLAGS and RFLAGS: Flag Variables Ordering.
2014 (line 20)
2015* AM_YFLAGS and YFLAGS: Flag Variables Ordering.
2016 (line 20)
2017* ansi2knr <1>: Options. (line 22)
2018* ansi2knr: ANSI. (line 14)
2019* ansi2knr and LIBOBJS: ANSI. (line 48)
2020* ansi2knr and LTLIBOBJS: ANSI. (line 48)
2021* Append operator: General Operation. (line 23)
2022* autogen.sh and autoreconf: Libtool Issues. (line 9)
2023* autom4te: Invoking aclocal. (line 45)
2024* Automake constraints: Introduction. (line 22)
2025* automake options: Invoking Automake. (line 37)
2026* Automake requirements <1>: Requirements. (line 6)
2027* Automake requirements: Introduction. (line 27)
2028* automake, invoking: Invoking Automake. (line 6)
2029* Automake, recursive operation: General Operation. (line 44)
2030* Automatic dependency tracking: Dependencies. (line 11)
2031* Automatic linker selection: How the Linker is Chosen.
2032 (line 6)
2033* autoreconf and libtoolize: Libtool Issues. (line 9)
2034* autoupdate: Obsolete macros. (line 6)
2035* Auxiliary programs: Auxiliary Programs. (line 6)
2036* Avoiding path stripping: Alternative. (line 24)
2037* bootstrap.sh and autoreconf: Libtool Issues. (line 9)
2038* Bugs, reporting: Introduction. (line 31)
2039* BUILT_SOURCES, defined: Sources. (line 27)
2040* C++ support: C++ Support. (line 6)
2041* canonicalizing Automake variables: Canonicalization. (line 6)
2042* CCASFLAGS and AM_CCASFLAGS: Flag Variables Ordering.
2043 (line 20)
2044* CFLAGS and AM_CFLAGS: Flag Variables Ordering.
2045 (line 20)
2046* cfortran: Mixing Fortran 77 With C and C++.
2047 (line 6)
2048* check <1>: Extending. (line 40)
2049* check: Tests. (line 6)
2050* check-local: Extending. (line 40)
2051* check-news: Options. (line 29)
2052* check_ primary prefix, definition: Uniform. (line 74)
2053* check_PROGRAMS example: Default _SOURCES. (line 29)
2054* clean: Extending. (line 40)
2055* clean-local <1>: Extending. (line 40)
2056* clean-local: Clean. (line 15)
2057* Comment, special to Automake: General Operation. (line 54)
2058* Compile Flag Variables: Flag Variables Ordering.
2059 (line 20)
2060* Complete example: Complete. (line 6)
2061* Conditional example, --enable-debug: Conditionals. (line 23)
2062* conditional libtool libraries: Conditional Libtool Libraries.
2063 (line 6)
2064* Conditional programs: Conditional Programs.
2065 (line 6)
2066* Conditional subdirectories: Conditional Subdirectories.
2067 (line 6)
2068* Conditional SUBDIRS: Conditional Subdirectories.
2069 (line 6)
2070* Conditionals: Conditionals. (line 6)
2071* config.guess: Invoking Automake. (line 39)
2072* configure.ac, from GNU Hello: Hello. (line 16)
2073* configure.ac, scanning: configure. (line 6)
2074* conflicting definitions: Extending. (line 14)
2075* Constraints of Automake: Introduction. (line 22)
2076* convenience libraries, libtool: Libtool Convenience Libraries.
2077 (line 6)
2078* copying semantics: Extending. (line 10)
2079* cpio example: Uniform. (line 36)
2080* CPPFLAGS and AM_CPPFLAGS: Flag Variables Ordering.
2081 (line 20)
2082* CVS and generated files: CVS. (line 49)
2083* CVS and third-party files: CVS. (line 140)
2084* CVS and timestamps: CVS. (line 28)
2085* cvs-dist: General Operation. (line 12)
2086* cvs-dist, non-standard example: General Operation. (line 12)
2087* CXXFLAGS and AM_CXXFLAGS: Flag Variables Ordering.
2088 (line 20)
2089* cygnus: Options. (line 17)
2090* cygnus strictness: Cygnus. (line 6)
2091* DATA primary, defined: Data. (line 6)
2092* de-ANSI-fication, defined: ANSI. (line 6)
2093* default _SOURCES: Default _SOURCES. (line 6)
2094* default source, Libtool modules example: Default _SOURCES. (line 37)
2095* definitions, conflicts: Extending. (line 14)
2096* dejagnu <1>: Options. (line 33)
2097* dejagnu: Tests. (line 57)
2098* depcomp: Dependencies. (line 22)
2099* dependencies and distributed files: distcleancheck. (line 6)
2100* Dependency tracking: Dependencies. (line 11)
2101* Dependency tracking, disabling: Dependencies. (line 37)
2102* dirlist: Macro search path. (line 62)
2103* Disabling dependency tracking: Dependencies. (line 37)
2104* dist: Dist. (line 9)
2105* dist-bzip2 <1>: Options. (line 36)
2106* dist-bzip2: Dist. (line 192)
2107* dist-gzip: Dist. (line 195)
2108* dist-hook <1>: Extending. (line 62)
2109* dist-hook: Dist. (line 71)
2110* dist-shar <1>: Options. (line 39)
2111* dist-shar: Dist. (line 198)
2112* dist-tarZ <1>: Options. (line 45)
2113* dist-tarZ: Dist. (line 204)
2114* dist-zip <1>: Options. (line 42)
2115* dist-zip: Dist. (line 201)
2116* dist_ and nobase_: Alternative. (line 30)
2117* DIST_SUBDIRS, explained: Conditional Subdirectories.
2118 (line 34)
2119* distcheck: Dist. (line 111)
2120* distcheck-hook: Dist. (line 122)
2121* distclean <1>: distcleancheck. (line 6)
2122* distclean: Extending. (line 40)
2123* distclean, diagnostic: distcleancheck. (line 6)
2124* distclean-local <1>: Extending. (line 40)
2125* distclean-local: Clean. (line 15)
2126* distcleancheck <1>: distcleancheck. (line 6)
2127* distcleancheck: Dist. (line 133)
2128* distdir: Third-Party Makefiles.
2129 (line 25)
2130* dmalloc, support for: Public macros. (line 102)
2131* dvi: Extending. (line 40)
2132* DVI output using Texinfo: Texinfo. (line 6)
2133* dvi-local: Extending. (line 40)
2134* E-mail, bug reports: Introduction. (line 31)
2135* EDITION Texinfo flag: Texinfo. (line 18)
2136* else: Conditionals. (line 38)
2137* empty _SOURCES: Default _SOURCES. (line 43)
2138* Empty libraries: A Library. (line 46)
2139* Empty libraries and $(LIBOBJS): LIBOBJS. (line 69)
2140* endif: Conditionals. (line 38)
2141* Example conditional --enable-debug: Conditionals. (line 23)
2142* Example of recursive operation: General Operation. (line 44)
2143* Example of shared libraries: Libtool Libraries. (line 6)
2144* Example, EXTRA_PROGRAMS: Uniform. (line 36)
2145* Example, false and true: true. (line 6)
2146* Example, GNU Hello: Hello. (line 6)
2147* Example, handling Texinfo files: Hello. (line 64)
2148* Example, mixed language: Mixing Fortran 77 With C and C++.
2149 (line 36)
2150* Example, regression test: Hello. (line 72)
2151* Executable extension: EXEEXT. (line 6)
2152* Exit status 77, special interpretation: Tests. (line 20)
2153* Expected test failure: Tests. (line 31)
2154* Extending aclocal: Extending aclocal. (line 6)
2155* Extending list of installation directories: Uniform. (line 55)
2156* Extension, executable: EXEEXT. (line 6)
2157* Extra files distributed with Automake: Invoking Automake. (line 39)
2158* EXTRA_, prepending: Uniform. (line 29)
2159* EXTRA_prog_SOURCES, defined: Conditional Sources. (line 18)
2160* EXTRA_PROGRAMS, defined <1>: Conditional Programs.
2161 (line 15)
2162* EXTRA_PROGRAMS, defined: Uniform. (line 36)
2163* false Example: true. (line 6)
2164* FCFLAGS and AM_FCFLAGS: Flag Variables Ordering.
2165 (line 20)
2166* FDL, GNU Free Documentation License: GNU Free Documentation License.
2167 (line 6)
2168* FFLAGS and AM_FFLAGS: Flag Variables Ordering.
2169 (line 20)
2170* filename-length-max=99: Options. (line 48)
2171* Files distributed with Automake: Invoking Automake. (line 39)
2172* First line of Makefile.am: General Operation. (line 60)
2173* Flag Variables, Ordering: Flag Variables Ordering.
2174 (line 20)
2175* Flag variables, ordering: Flag Variables Ordering.
2176 (line 6)
2177* FLIBS, defined: Mixing Fortran 77 With C and C++.
2178 (line 21)
2179* foreign: Options. (line 17)
2180* foreign strictness: Strictness. (line 10)
2181* Fortran 77 support: Fortran 77 Support. (line 6)
2182* Fortran 77, mixing with C and C++: Mixing Fortran 77 With C and C++.
2183 (line 6)
2184* Fortran 77, Preprocessing: Preprocessing Fortran 77.
2185 (line 6)
2186* Fortran 9x support: Fortran 9x Support. (line 6)
2187* GCJFLAGS and AM_GCJFLAGS: Flag Variables Ordering.
2188 (line 20)
2189* generated files and CVS: CVS. (line 49)
2190* generated files, distributed: CVS. (line 9)
2191* Gettext support: gettext. (line 6)
2192* gnits: Options. (line 17)
2193* gnits strictness: Strictness. (line 10)
2194* gnu: Options. (line 17)
2195* GNU Gettext support: gettext. (line 6)
2196* GNU Hello, configure.ac: Hello. (line 16)
2197* GNU Hello, example: Hello. (line 6)
2198* GNU make extensions: General Operation. (line 19)
2199* GNU Makefile standards: Introduction. (line 12)
2200* gnu strictness: Strictness. (line 10)
2201* GNUmakefile including Makefile: Third-Party Makefiles.
2202 (line 107)
2203* Header files in _SOURCES: Program Sources. (line 39)
2204* HEADERS primary, defined: Headers. (line 6)
2205* HEADERS, installation directories: Headers. (line 6)
2206* Hello example: Hello. (line 6)
2207* Hello, configure.ac: Hello. (line 16)
2208* hook targets: Extending. (line 59)
2209* HP-UX 10, lex problems: Public macros. (line 92)
2210* html: Extending. (line 40)
2211* HTML output using Texinfo: Texinfo. (line 6)
2212* html-local: Extending. (line 40)
2213* id: Tags. (line 44)
2214* if: Conditionals. (line 38)
2215* include <1>: Include. (line 6)
2216* include: Dist. (line 17)
2217* include, distribution: Dist. (line 17)
2218* INCLUDES, example usage: Hello. (line 80)
2219* Including Makefile fragment: Include. (line 6)
2220* info <1>: Extending. (line 40)
2221* info: Options. (line 88)
2222* info-local: Extending. (line 40)
2223* install <1>: Extending. (line 40)
2224* install: Install. (line 45)
2225* Install hook: Install. (line 74)
2226* Install, two parts of: Install. (line 45)
2227* install-data: Install. (line 45)
2228* install-data-hook: Extending. (line 62)
2229* install-data-local <1>: Extending. (line 40)
2230* install-data-local: Install. (line 68)
2231* install-exec <1>: Extending. (line 40)
2232* install-exec: Install. (line 45)
2233* install-exec-hook: Extending. (line 62)
2234* install-exec-local <1>: Extending. (line 40)
2235* install-exec-local: Install. (line 68)
2236* install-info <1>: Options. (line 88)
2237* install-info: Texinfo. (line 65)
2238* install-info target: Texinfo. (line 65)
2239* install-man <1>: Options. (line 94)
2240* install-man: Man pages. (line 32)
2241* install-man target: Man pages. (line 32)
2242* install-strip: Install. (line 108)
2243* Installation directories, extending list: Uniform. (line 55)
2244* Installation support: Install. (line 6)
2245* installcheck: Extending. (line 40)
2246* installcheck-local: Extending. (line 40)
2247* installdirs <1>: Extending. (line 40)
2248* installdirs: Install. (line 108)
2249* installdirs-local: Extending. (line 40)
2250* Installing headers: Headers. (line 6)
2251* Installing scripts: Scripts. (line 38)
2252* installing versioned binaries: Extending. (line 78)
2253* Interfacing with third-party packages: Third-Party Makefiles.
2254 (line 6)
2255* Invoking aclocal: Invoking aclocal. (line 6)
2256* Invoking automake: Invoking Automake. (line 6)
2257* JAVA primary, defined: Java. (line 6)
2258* JAVA restrictions: Java. (line 19)
2259* Java support: Java Support. (line 6)
2260* LDFLAGS and AM_LDFLAGS: Flag Variables Ordering.
2261 (line 20)
2262* lex problems with HP-UX 10: Public macros. (line 92)
2263* lex, multiple lexers: Yacc and Lex. (line 60)
2264* LFLAGS and AM_LFLAGS: Flag Variables Ordering.
2265 (line 20)
2266* libltdl, introduction: Libtool Concept. (line 30)
2267* LIBOBJS and ansi2knr: ANSI. (line 48)
2268* LIBOBJS, and Libtool: LTLIBOBJS. (line 6)
2269* LIBOBJS, example: LIBOBJS. (line 6)
2270* LIBOBJS, special handling: LIBOBJS. (line 6)
2271* LIBRARIES primary, defined: A Library. (line 6)
2272* libtool convenience libraries: Libtool Convenience Libraries.
2273 (line 6)
2274* libtool libraries, conditional: Conditional Libtool Libraries.
2275 (line 6)
2276* libtool library, definition: Libtool Concept. (line 6)
2277* libtool modules: Libtool Modules. (line 6)
2278* Libtool modules, default source example: Default _SOURCES. (line 37)
2279* libtool, introduction: Libtool Concept. (line 6)
2280* libtoolize and autoreconf: Libtool Issues. (line 9)
2281* libtoolize, no longer run by automake: Libtool Issues. (line 9)
2282* Linking Fortran 77 with C and C++: Mixing Fortran 77 With C and C++.
2283 (line 6)
2284* LISP primary, defined: Emacs Lisp. (line 6)
2285* LN_S example: Extending. (line 78)
2286* local targets: Extending. (line 36)
2287* LTALLOCA, special handling: LTLIBOBJS. (line 6)
2288* LTLIBOBJS and ansi2knr: ANSI. (line 48)
2289* LTLIBOBJS, special handling: LTLIBOBJS. (line 6)
2290* LTLIBRARIES primary, defined: Libtool Libraries. (line 6)
2291* ltmain.sh not found: Libtool Issues. (line 9)
2292* m4_include, distribution: Dist. (line 17)
2293* Macro search path: Macro search path. (line 6)
2294* Macros Automake recognizes: Optional. (line 6)
2295* maintainer-clean-local: Clean. (line 15)
2296* make check: Tests. (line 6)
2297* make clean support: Clean. (line 6)
2298* make dist: Dist. (line 9)
2299* make distcheck: Dist. (line 111)
2300* make distclean, diagnostic: distcleancheck. (line 6)
2301* make distcleancheck: Dist. (line 111)
2302* make distuninstallcheck: Dist. (line 111)
2303* make install support: Install. (line 6)
2304* make installcheck, testing --help and --version: Options. (line 114)
2305* Make rules, overriding: General Operation. (line 32)
2306* Make targets, overriding: General Operation. (line 32)
2307* Makefile fragment, including: Include. (line 6)
2308* Makefile.am, first line: General Operation. (line 60)
2309* MANS primary, defined: Man pages. (line 6)
2310* many outputs, rules with: Multiple Outputs. (line 6)
2311* mdate-sh: Texinfo. (line 18)
2312* missing, purpose: maintainer-mode. (line 9)
2313* Mixed language example: Mixing Fortran 77 With C and C++.
2314 (line 36)
2315* Mixing Fortran 77 with C and C++: Mixing Fortran 77 With C and C++.
2316 (line 6)
2317* Mixing Fortran 77 with C and/or C++: Mixing Fortran 77 With C and C++.
2318 (line 6)
2319* modules, libtool: Libtool Modules. (line 6)
2320* mostlyclean: Extending. (line 40)
2321* mostlyclean-local <1>: Extending. (line 40)
2322* mostlyclean-local: Clean. (line 15)
2323* Multiple configure.ac files: Invoking Automake. (line 6)
2324* Multiple lex lexers: Yacc and Lex. (line 60)
2325* multiple outputs, rules with: Multiple Outputs. (line 6)
2326* Multiple yacc parsers: Yacc and Lex. (line 60)
2327* Nesting packages: Subpackages. (line 6)
2328* no-define <1>: Options. (line 56)
2329* no-define: Public macros. (line 61)
2330* no-dependencies <1>: Options. (line 61)
2331* no-dependencies: Dependencies. (line 34)
2332* no-dist: Options. (line 68)
2333* no-dist-gzip: Options. (line 72)
2334* no-exeext: Options. (line 75)
2335* no-installinfo <1>: Options. (line 85)
2336* no-installinfo: Texinfo. (line 65)
2337* no-installman <1>: Options. (line 91)
2338* no-installman: Man pages. (line 32)
2339* no-texinfo.tex <1>: Options. (line 101)
2340* no-texinfo.tex: Texinfo. (line 60)
2341* nobase_ and dist_ or nodist_: Alternative. (line 30)
2342* nobase_ prefix: Alternative. (line 24)
2343* nodist_ and nobase_: Alternative. (line 30)
2344* noinst_ primary prefix, definition: Uniform. (line 69)
2345* noinstall-info option: Texinfo. (line 65)
2346* noinstall-man option: Man pages. (line 32)
2347* Non-GNU packages: Strictness. (line 6)
2348* Non-standard targets: General Operation. (line 12)
2349* nostdinc: Options. (line 97)
2350* OBJCFLAGS and AM_OBJCFLAGS: Flag Variables Ordering.
2351 (line 20)
2352* Objects in subdirectory: Program and Library Variables.
2353 (line 51)
2354* obsolete macros: Obsolete macros. (line 6)
2355* Option, --warnings=CATEGORY: Options. (line 193)
2356* Option, -WCATEGORY: Options. (line 193)
2357* Option, ansi2knr: Options. (line 22)
2358* Option, check-news: Options. (line 29)
2359* Option, cygnus: Options. (line 17)
2360* Option, dejagnu: Options. (line 33)
2361* Option, dist-bzip2: Options. (line 36)
2362* Option, dist-shar: Options. (line 39)
2363* Option, dist-tarZ: Options. (line 45)
2364* Option, dist-zip: Options. (line 42)
2365* Option, filename-length-max=99: Options. (line 48)
2366* Option, foreign: Options. (line 17)
2367* Option, gnits: Options. (line 17)
2368* Option, gnu: Options. (line 17)
2369* Option, no-define: Options. (line 56)
2370* Option, no-dependencies: Options. (line 61)
2371* Option, no-dist: Options. (line 68)
2372* Option, no-dist-gzip: Options. (line 72)
2373* Option, no-exeext: Options. (line 75)
2374* Option, no-installinfo: Options. (line 85)
2375* Option, no-installman: Options. (line 91)
2376* Option, no-texinfo.tex: Options. (line 101)
2377* Option, noinstall-info: Texinfo. (line 65)
2378* Option, noinstall-man: Man pages. (line 32)
2379* Option, nostdinc: Options. (line 97)
2380* Option, readme-alpha: Options. (line 105)
2381* Option, tar-pax: Options. (line 143)
2382* Option, tar-ustar: Options. (line 143)
2383* Option, tar-v7: Options. (line 143)
2384* Option, VERSION: Options. (line 188)
2385* Option, warnings: Options. (line 193)
2386* Options, aclocal: aclocal options. (line 6)
2387* Options, automake: Invoking Automake. (line 37)
2388* Options, std-options: Options. (line 114)
2389* Options, subdir-objects: Options. (line 134)
2390* Ordering flag variables: Flag Variables Ordering.
2391 (line 6)
2392* Overriding make rules: General Operation. (line 32)
2393* Overriding make targets: General Operation. (line 32)
2394* Overriding make variables: General Operation. (line 37)
2395* overriding rules: Extending. (line 25)
2396* overriding semantics: Extending. (line 25)
2397* PACKAGE, directory: Uniform. (line 19)
2398* PACKAGE, prevent definition: Public macros. (line 61)
2399* Path stripping, avoiding: Alternative. (line 24)
2400* pax format: Options. (line 143)
2401* pdf: Extending. (line 40)
2402* PDF output using Texinfo: Texinfo. (line 6)
2403* pdf-local: Extending. (line 40)
2404* Per-object flags, emulated: Per-Object Flags. (line 6)
2405* per-target compilation flags, defined: Program and Library Variables.
2406 (line 141)
2407* pkgdatadir, defined: Uniform. (line 19)
2408* pkgincludedir, defined: Uniform. (line 19)
2409* pkglibdir, defined: Uniform. (line 19)
2410* POSIX termios headers: Obsolete macros. (line 24)
2411* Preprocessing Fortran 77: Preprocessing Fortran 77.
2412 (line 6)
2413* Primary variable, DATA: Data. (line 6)
2414* Primary variable, defined: Uniform. (line 11)
2415* Primary variable, HEADERS: Headers. (line 6)
2416* Primary variable, JAVA: Java. (line 6)
2417* Primary variable, LIBRARIES: A Library. (line 6)
2418* Primary variable, LISP: Emacs Lisp. (line 6)
2419* Primary variable, LTLIBRARIES: Libtool Libraries. (line 6)
2420* Primary variable, MANS: Man pages. (line 6)
2421* Primary variable, PROGRAMS: Uniform. (line 11)
2422* Primary variable, PYTHON: Python. (line 6)
2423* Primary variable, SCRIPTS: Scripts. (line 6)
2424* Primary variable, SOURCES: Program Sources. (line 32)
2425* Primary variable, TEXINFOS: Texinfo. (line 6)
2426* prog_LDADD, defined: Linking. (line 12)
2427* PROGRAMS primary variable: Uniform. (line 11)
2428* Programs, auxiliary: Auxiliary Programs. (line 6)
2429* PROGRAMS, bindir: Program Sources. (line 6)
2430* Programs, conditional: Conditional Programs.
2431 (line 6)
2432* Proxy Makefile for third-party packages: Third-Party Makefiles.
2433 (line 124)
2434* ps: Extending. (line 40)
2435* PS output using Texinfo: Texinfo. (line 6)
2436* ps-local: Extending. (line 40)
2437* PYTHON primary, defined: Python. (line 6)
2438* Ratfor programs: Preprocessing Fortran 77.
2439 (line 6)
2440* README-alpha: Gnits. (line 34)
2441* readme-alpha: Options. (line 105)
2442* rebuild rules <1>: CVS. (line 9)
2443* rebuild rules: Rebuilding. (line 6)
2444* Recognized macros by Automake: Optional. (line 6)
2445* Recursive operation of Automake: General Operation. (line 44)
2446* recursive targets and third-party Makefiles: Third-Party Makefiles.
2447 (line 15)
2448* regex package: Public macros. (line 107)
2449* Regression test example: Hello. (line 72)
2450* Reporting bugs: Introduction. (line 31)
2451* Requirements of Automake: Requirements. (line 6)
2452* Requirements, Automake: Introduction. (line 27)
2453* Restrictions for JAVA: Java. (line 19)
2454* RFLAGS and AM_RFLAGS: Flag Variables Ordering.
2455 (line 20)
2456* rules with multiple outputs: Multiple Outputs. (line 6)
2457* rules, conflicting: Extending. (line 14)
2458* rules, overriding: Extending. (line 25)
2459* rx package: Public macros. (line 107)
2460* Scanning configure.ac: configure. (line 6)
2461* SCRIPTS primary, defined: Scripts. (line 6)
2462* SCRIPTS, installation directories: Scripts. (line 38)
2463* Selecting the linker automatically: How the Linker is Chosen.
2464 (line 6)
2465* Shared libraries, support for: A Shared Library. (line 6)
2466* site.exp: Tests. (line 64)
2467* SOURCES primary, defined: Program Sources. (line 32)
2468* Special Automake comment: General Operation. (line 54)
2469* std-options: Options. (line 114)
2470* Strictness, command line: Invoking Automake. (line 37)
2471* Strictness, defined: Strictness. (line 10)
2472* Strictness, foreign: Strictness. (line 10)
2473* Strictness, gnits: Strictness. (line 10)
2474* Strictness, gnu: Strictness. (line 10)
2475* subdir-objects: Options. (line 134)
2476* Subdirectories, building conditionally: Conditional Subdirectories.
2477 (line 6)
2478* Subdirectories, configured conditionally: Conditional Subdirectories.
2479 (line 119)
2480* Subdirectories, not distributed: Conditional Subdirectories.
2481 (line 170)
2482* Subdirectory, objects in: Program and Library Variables.
2483 (line 51)
2484* SUBDIRS and AC_SUBST: Conditional Subdirectories.
2485 (line 95)
2486* SUBDIRS and AM_CONDITIONAL: Conditional Subdirectories.
2487 (line 65)
2488* SUBDIRS, conditional: Conditional Subdirectories.
2489 (line 6)
2490* SUBDIRS, explained: Subdirectories. (line 6)
2491* Subpackages: Subpackages. (line 6)
2492* suffix .la, defined: Libtool Concept. (line 6)
2493* suffix .lo, defined: Libtool Concept. (line 15)
2494* SUFFIXES, adding: Suffixes. (line 6)
2495* Support for C++: C++ Support. (line 6)
2496* Support for Fortran 77: Fortran 77 Support. (line 6)
2497* Support for Fortran 9x: Fortran 9x Support. (line 6)
2498* Support for GNU Gettext: gettext. (line 6)
2499* Support for Java: Java Support. (line 6)
2500* tags: Tags. (line 9)
2501* TAGS support: Tags. (line 6)
2502* tar formats: Options. (line 143)
2503* tar-pax: Options. (line 143)
2504* tar-ustar: Options. (line 143)
2505* tar-v7: Options. (line 143)
2506* Target, install-info: Texinfo. (line 65)
2507* Target, install-man: Man pages. (line 32)
2508* termios POSIX headers: Obsolete macros. (line 24)
2509* Test suites: Tests. (line 6)
2510* Tests, expected failure: Tests. (line 31)
2511* Texinfo file handling example: Hello. (line 64)
2512* Texinfo flag, EDITION: Texinfo. (line 18)
2513* Texinfo flag, UPDATED: Texinfo. (line 18)
2514* Texinfo flag, UPDATED-MONTH: Texinfo. (line 18)
2515* Texinfo flag, VERSION: Texinfo. (line 18)
2516* texinfo.tex: Texinfo. (line 53)
2517* TEXINFOS primary, defined: Texinfo. (line 6)
2518* third-party files and CVS: CVS. (line 140)
2519* Third-party packages, interfacing with: Third-Party Makefiles.
2520 (line 6)
2521* timestamps and CVS: CVS. (line 28)
2522* true Example: true. (line 6)
2523* underquoted AC_DEFUN: Extending aclocal. (line 33)
2524* Uniform naming scheme: Uniform. (line 6)
2525* uninstall <1>: Extending. (line 40)
2526* uninstall: Install. (line 108)
2527* uninstall-hook: Extending. (line 62)
2528* uninstall-local: Extending. (line 40)
2529* UPDATED Texinfo flag: Texinfo. (line 18)
2530* UPDATED-MONTH Texinfo flag: Texinfo. (line 18)
2531* user variables: User Variables. (line 6)
2532* ustar format: Options. (line 143)
2533* v7 tar format: Options. (line 143)
2534* variables, conflicting: Extending. (line 14)
2535* Variables, overriding: General Operation. (line 37)
2536* variables, reserved for the user: User Variables. (line 6)
2537* VERSION Texinfo flag: Texinfo. (line 18)
2538* VERSION, prevent definition: Public macros. (line 61)
2539* version.m4, example: Rebuilding. (line 19)
2540* version.sh, example: Rebuilding. (line 19)
2541* versioned binaries, installing: Extending. (line 78)
2542* wildcards: wildcards. (line 6)
2543* Windows: EXEEXT. (line 6)
2544* yacc, multiple parsers: Yacc and Lex. (line 60)
2545* YFLAGS and AM_YFLAGS: Flag Variables Ordering.
2546 (line 20)
2547* ylwrap: Yacc and Lex. (line 60)
2548* zardoz example: Complete. (line 35)
2549
2550
Note: See TracBrowser for help on using the repository browser.