manpagez: man pages & more
info autoconf
Home | html | info | man

File: autoconf.info,  Node: Autom4te Cache,  Next: Present But Cannot Be Compiled,  Prev: Defining Directories,  Up: FAQ

20.6 What is ‘autom4te.cache’?
==============================

     What is this directory ‘autom4te.cache’?  Can I safely remove it?

   In the GNU Build System, ‘configure.ac’ plays a central role and is
read by many tools: ‘autoconf’ to create ‘configure’, ‘autoheader’ to
create ‘config.h.in’, ‘automake’ to create ‘Makefile.in’, ‘autoscan’ to
check the completeness of ‘configure.ac’, ‘autoreconf’ to check the GNU
Build System components that are used.  To "read ‘configure.ac’"
actually means to compile it with M4, which can be a long process for
complex ‘configure.ac’.

   This is why all these tools, instead of running directly M4, invoke
‘autom4te’ (*note autom4te Invocation::) which, while answering to a
specific demand, stores additional information in ‘autom4te.cache’ for
future runs.  For instance, if you run ‘autoconf’, behind the scenes,
‘autom4te’ also stores information for the other tools, so that when you
invoke ‘autoheader’ or ‘automake’ etc., reprocessing ‘configure.ac’ is
not needed.  The speed up is frequently 30%, and is increasing with the
size of ‘configure.ac’.

   But it is and remains being simply a cache: you can safely remove it.


     Can I permanently get rid of it?

   The creation of this cache can be disabled from ‘~/.autom4te.cfg’,
see *note Customizing autom4te::, for more details.  You should be aware
that disabling the cache slows down the Autoconf test suite by 40%.  The
more GNU Build System components are used, the more the cache is useful;
for instance running ‘autoreconf -f’ on the Core Utilities is twice
slower without the cache _although ‘--force’ implies that the cache is
not fully exploited_, and eight times slower than without ‘--force’.

© manpagez.com 2000-2024
Individual documents may contain additional copyright information.