Any difference between configure.ac and configure.in, and Makefile.am and Makefile.in?

15,785

configure.ac and configure.in are two possible names for the master Autoconf source file, which is processed by autoconf to generate the configure shell script. configure.ac is preferred for new packages, configure.in is an older name which still works. (The .in suffix is now recommended to be used only for files which will be processed by config.status, which is the result of running configure.)

Makefile.am is an Automake source file. Automake processes it and generates Makefile.in, which is then further processed by config.status to generate the final Makefile. An Automake-generated Makefile.in is not meant to be edited by hand. However, if a project doesn't use Automake (but does use Autoconf), then it will only have a Makefile.in which is hand-edited.

For further details see http://www.gnu.org/software/autoconf/manual/html_node/Making-configure-Scripts.html - particularly the diagrams.

Share:
15,785
Mohit Deshpande
Author by

Mohit Deshpande

I am a researcher at The Ohio State University in the field of computer vision and machine learning. I have worked as a mobile apps instructor for Zenva and current work as a writer for Zenva in machine learning.

Updated on June 02, 2022

Comments

  • Mohit Deshpande
    Mohit Deshpande almost 2 years

    I have seen both in different things I have configured. What I the difference? Is it notable to use only one? Or does it not matter which one to use?