DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(autocf21.info.gz) Automatic Remaking

Info Catalog (autocf21.info.gz) Build Directories (autocf21.info.gz) Makefile Substitutions
 
 3.3.3 Automatic Remaking
 ------------------------
 
 You can put rules like the following in the top-level `Makefile.in' for
 a package to automatically update the configuration information when
 you change the configuration files.  This example includes all of the
 optional files, such as `aclocal.m4' and those related to configuration
 header files.  Omit from the `Makefile.in' rules any of these files
 that your package does not use.
 
    The `${srcdir}/' prefix is included because of limitations in the
 `VPATH' mechanism.
 
    The `stamp-' files are necessary because the timestamps of
 `config.h.in' and `config.h' will not be changed if remaking them does
 not change their contents.  This feature avoids unnecessary
 recompilation.  You should include the file `stamp-h.in' your package's
 distribution, so `make' will consider `config.h.in' up to date.  On
 some old BSD systems, `touch' or any command that results in an empty
 file does not update the timestamps, so use a command like `echo' as a
 workaround.
 
      ${srcdir}/configure: configure.in aclocal.m4
              cd ${srcdir} && autoconf
 
      # autoheader might not change config.h.in, so touch a stamp file.
      ${srcdir}/config.h.in: stamp-h.in
      ${srcdir}/stamp-h.in: configure.in aclocal.m4 acconfig.h \
          config.h.top config.h.bot
              cd ${srcdir} && autoheader
              echo timestamp > ${srcdir}/stamp-h.in
 
      config.h: stamp-h
      stamp-h: config.h.in config.status
              ./config.status
 
      Makefile: Makefile.in config.status
              ./config.status
 
      config.status: configure
              ./config.status --recheck
 
    In addition, you should pass `echo timestamp > stamp-h' in the
 EXTRA-CMDS argument to `AC_OUTPUT', so `config.status' will ensure that
 `config.h' is considered up to date.   Output, for more
 information about `AC_OUTPUT'.
 
     Invoking config.status, for more examples of handling
 configuration-related dependencies.
 
Info Catalog (autocf21.info.gz) Build Directories (autocf21.info.gz) Makefile Substitutions
automatically generated byinfo2html