230 |
* Declarations:: Declarations that may be missing |
* Declarations:: Declarations that may be missing |
231 |
* Structures:: Structures or members that might be missing |
* Structures:: Structures or members that might be missing |
232 |
* Types:: Types that might be missing |
* Types:: Types that might be missing |
233 |
* Compilers and Preprocessors:: Checks for compiling programs |
* Compilers and Preprocessors:: Checking for compiling programs |
234 |
* System Services:: Operating system services |
* System Services:: Operating system services |
235 |
* UNIX Variants:: Special kludges for specific UNIX variants |
* UNIX Variants:: Special kludges for specific UNIX variants |
236 |
|
|
289 |
* Multiple Cases:: Tests for several possible values |
* Multiple Cases:: Tests for several possible values |
290 |
* Language Choice:: Selecting which language to use for testing |
* Language Choice:: Selecting which language to use for testing |
291 |
|
|
292 |
Checking Run-Time Behavior |
Checking Run Time Behavior |
293 |
|
|
294 |
* Test Programs:: Running test programs |
* Test Programs:: Running test programs |
295 |
* Guidelines:: General rules for writing test programs |
* Guidelines:: General rules for writing test programs |
313 |
* M4 Quotation:: Protecting macros from unwanted expansion |
* M4 Quotation:: Protecting macros from unwanted expansion |
314 |
* Invoking autom4te:: The Autoconf executables backbone |
* Invoking autom4te:: The Autoconf executables backbone |
315 |
* Programming in M4sugar:: Convenient pure M4 macros |
* Programming in M4sugar:: Convenient pure M4 macros |
316 |
* Programming in M4sh:: Common shell constructs |
* Programming in M4sh:: Common shell Constructs |
317 |
|
|
318 |
M4 Quotation |
M4 Quotation |
319 |
|
|
320 |
* Active Characters:: Characters that change the behavior of m4 |
* Active Characters:: Characters that change the behavior of M4 |
321 |
* One Macro Call:: Quotation and one macro call |
* One Macro Call:: Quotation and one macro call |
322 |
* Quotation and Nested Macros:: Macros calling macros |
* Quotation and Nested Macros:: Macros calling macros |
323 |
* Changequote is Evil:: Worse than INTERCAL: M4 + changequote |
* Changequote is Evil:: Worse than INTERCAL: M4 + changequote |
433 |
* Bootstrapping:: Autoconf and GNU M4 require each other? |
* Bootstrapping:: Autoconf and GNU M4 require each other? |
434 |
* Why Not Imake:: Why GNU uses @command{configure} instead of Imake |
* Why Not Imake:: Why GNU uses @command{configure} instead of Imake |
435 |
* Defining Directories:: Passing @code{datadir} to program |
* Defining Directories:: Passing @code{datadir} to program |
436 |
|
* autom4te.cache:: What is it? Can I remove it? |
437 |
|
|
438 |
History of Autoconf |
History of Autoconf |
439 |
|
|
13893 |
* Bootstrapping:: Autoconf and GNU M4 require each other? |
* Bootstrapping:: Autoconf and GNU M4 require each other? |
13894 |
* Why Not Imake:: Why GNU uses @command{configure} instead of Imake |
* Why Not Imake:: Why GNU uses @command{configure} instead of Imake |
13895 |
* Defining Directories:: Passing @code{datadir} to program |
* Defining Directories:: Passing @code{datadir} to program |
13896 |
|
* autom4te.cache:: What is it? Can I remove it? |
13897 |
@end menu |
@end menu |
13898 |
|
|
13899 |
@node Distributing |
@node Distributing |
14138 |
@end itemize |
@end itemize |
14139 |
|
|
14140 |
|
|
14141 |
|
@node autom4te.cache |
14142 |
|
@section What is @file{autom4te.cache}? |
14143 |
|
|
14144 |
|
@display |
14145 |
|
What is this directory @file{autom4te.cache}? Can I safely remove it? |
14146 |
|
@end display |
14147 |
|
|
14148 |
|
In the GNU Build System, @file{configure.ac} plays a central role and is |
14149 |
|
read by many tools: @command{autoconf} to create @file{configure}, |
14150 |
|
@command{autoheader} to create @file{config.h.in}, @command{automake} to |
14151 |
|
create @file{Makefile.in}, @command{autoscan} to check the completeness |
14152 |
|
of @file{configure.ac}, @command{autoreconf} to check the GNU Build |
14153 |
|
System components that are used. To ``read @file{configure.ac}'' |
14154 |
|
actually means to compile it with M4, which can be a very long process |
14155 |
|
for complex @file{configure.ac}. |
14156 |
|
|
14157 |
|
This is why all these tools, instead of running directly M4, invoke |
14158 |
|
@command{autom4te} (@pxref{Invoking autom4te}) which, while answering to |
14159 |
|
a specific demand, stores additional information in |
14160 |
|
@file{autom4te.cache} for future runs. For instance, if you run |
14161 |
|
@command{autoconf}, behind the scenes, @command{autom4te} will also |
14162 |
|
store information for the other tools, so that when you invoke |
14163 |
|
@command{autoheader} or @command{automake} etc., re-processing |
14164 |
|
@file{configure.ac} is not needed. The speed up is frequently of 30, |
14165 |
|
and is increasing with the size of @file{configure.ac}. |
14166 |
|
|
14167 |
|
But it is and remains being simply a cache: you can safely remove it. |
14168 |
|
|
14169 |
|
|
14170 |
|
|
14171 |
@c ===================================================== History of Autoconf. |
@c ===================================================== History of Autoconf. |
14172 |
|
|