autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: conditionally using libtool


From: Bob Friesenhahn
Subject: Re: conditionally using libtool
Date: Mon, 1 May 2006 21:39:04 -0500 (CDT)

On Mon, 1 May 2006, Bob Rossi wrote:

Would you mind quicly explaining how autoconf works? Meaning what are
the steps taken that generate a configure.sh script?

Don't be needlessly confused by the m4 "gibberish" which is often posted here. It is not necessary to understand such "gibberish" in order to properly use autoconf.

The 'aclocal' program is used to pull in any m4 macros defined in the autoconf/automake/libtool system install directory, as well as any project-specific macros from acinclude.m4, and put them in an aclocal.m4 file. The 'aclocal' program is smart and only pulls in the macros that configure.ac actually needs. When autoconf is executed, it uses m4 to create a shell script ('configure') based on expanding the macros from aclocal.m4 as they are encountered in configure.ac. Recently it has become popular to include macros in additional .m4 files so that the macros may be bundled in the package without cluttering up the project-specific acinclude.m4 file or to make it more clear who maintains them. These may be placed in the same directory as configure.ac, or in a subdirectory, as long as autoconf is told where to find them.

I understand that m4 is used. Is m4 the only tool that is run on the
configure.in file to generate the configure script? I'm trying to better
understand how macro's in an sh condition effect the outcome.

Long ago I wrote a magazine article on Autoconf. Remarkably most of it is still correct, which shows that the GNU autoconf approach is quite stable. See "http://www.byte.com/art/9711/sec4/art2.htm";.

Bob
======================================
Bob Friesenhahn
address@hidden, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]