 gnu autoconf is a tool for producing configure scripts for building, installing and packaging software on computer systems where a bourne shell is available. autoconf is agnostic about the programming languages used, but it is often used for projects using c, c++, fortran, fortran 77, erlang or objective-c. a configure script configures a software package for installation on a particular target system. after running a series of tests on the target system, the configure script generates header files and a makefile from templates, thus customizing the software package for the target system. together with automake and libtool, autoconf forms the gnu build system, which comprises several other tools, notably autoheader. == usage overview ==  the developer specifies the desired behaviour of the configure script by writing a list of instructions in the gnu m4 language in a file called "configure.ac". a library of pre-defined m4 macros is available to describe common configure script instructions. autoconf transforms the instructions in "configure.ac" into a portable configure script. the system that will be doing the building need not have autoconf installed: autoconf is needed only to build the configure script, that is usually shipped with the software. === configure.ac format === the gnu autoconf manual suggests the following format for the configure.ac file: ; ac_prereq(version) : the ac_prereq(version) macro can be used to ensure that a recent enough version of the autoconf program is available to process the configure.ac file ; ac_init(package, version, bug-report-address) : this macro is required in every configure.ac file. it specifies the name and version of the software package for which to generate a configure script and the email address of the developer. ; information on the package ; checks for programs ; checks for libraries ; checks for header f
Build_automation Computer_configuration Cross-platform_free_software Free_computer_libraries GNU_Project_software