Each subdirectory in a distribution that contains something to be
compiled or installed should come with a file Makefile.in, from
which configure
creates a file Makefile in that directory.
To create Makefile, configure
performs a simple variable
substitution, replacing occurrences of ‘@variable@’ in
Makefile.in with the value that configure
has determined
for that variable. Variables that are substituted into output files in
this way are called output variables. They are ordinary shell
variables that are set in configure
. To make configure
substitute a particular variable into the output files, the macro
AC_SUBST
must be called with that variable name as an argument.
Any occurrences of ‘@variable@’ for other variables are
left unchanged. See Setting Output Variables, for more information
on creating output variables with AC_SUBST
.
A software package that uses a configure
script should be
distributed with a file Makefile.in, but no makefile; that
way, the user has to properly configure the package for the local system
before compiling it.
See Makefile Conventions in The GNU Coding Standards, for more information on what to put in makefiles.