Autoconf, Automake, and Libtool: A Minimal GNU Autotools Project

| # 5. A Minimal GNU Autotools Project This chapter describes how to manage a minimal project using the GNU Autotools. A minimal project is defined to be the smallest possible project that can still illustrate a sufficient number of principles in using the tools. By studying a smaller project, it becomes easier to understand the more complex interactions between these tools when larger projects require advanced features. The example project used throughout this chapter is a fictitious command interpreter called `foonly`. `foonly` is written in C, but like many interpreters, uses a lexical analyzer and a parser expressed using the `lex` and `yacc` tools. The package will be developed to adhere to the GNU ``Makefile'` standard, which is the default behavior for Automake. There are many features of the GNU Autotools that this small project will not utilize. The most noteworthy one is libraries; this package does not produce any libraries of its own, so Libtool will not feature in this chapter. The more complex projects presented in 9. A Small GNU Autotools Project and 12. A Large GNU Autotools Project will illustrate how Libtool participates in the build system. The purpose of this chapter will be to provide a high-level overview of the user-written files and how they interact.

This document was generated by Gary V. Vaughan on February, 8 2006 using texi2html