Channels ▼

Mike Riley

Dr. Dobb's Bloggers

Autotools Book Review

August 16, 2010

Prior to reading this book by author John Calcote, I was in the Autotools hater camp. I never took the time to learn the toolset's intricacies and in John's words, found myself "fighting the system". Has the book made me an Autotools believer? Read on to find out.The book begins with an introduction to the GNU Autotools packages and the systems it runs on best (POSIX systems like Linux/Unix, Mac OSX with caveats, and for the techno-masocist, Windows with Cygwin - maybe) and the native languages supported (C, C++, Objective C, Fortran, Fortran 77 and Erlang, with partial support for other languages like Java), followed by a chapter on open source software project structure and organization via the GNU Coding Standards (GCS) and the Filesystem Hierarchy Standard(FHS). The next series of chapters dive into the actual utilization of Autotools, from creating project configuration scripts, Autoconf templates and Automake files. Chapters 6 and 7 cover Libtool for abstracting shared library generation functionality, as well as library versioning and runtime dynamic module management. The next two chapters use Novell's open source FLAIM project (of which the author is the project administrator) to demonstrate how to move a manually managed system to an "autoconfiscated" one. Chapter 10 discusses the M4 macro processor as it applies to Autoconf so as to learn how to write your own Autoconf macros. Finally, the book concludes with a chapter on various tips and tricks such as cross-compiling and determining which dependencies should accompany your project's source packages.

The book has plenty of variable reference tables, command line input/output examples and switches, Bourne shell scripts, Macro printouts, best practice recommendations and honest recognition of the passion that developers have about their tools. This refreshing approach shows how the author is in tune with the real world practices and curmudgeons who are resistant to change. Source code listings can be downloaded from the book's website as well as updates and sample chapter PDF's.

So will I start using Autotools more frequently as a result of reading the book? Probably not, but at least now I understand the advantages of what Autotools bring to the developer toolbox. And who knows, perhaps when the next big C-based *nix project hits, Autotools will be on the list of open source build management tools to consider employing.

Title: Autotools Author: John Calcote Publisher: No Starch Press ISBN: 978-1-59327-206-7 Pages: 360 Price: $44.95 print + Ebook, $22.95 Ebook

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.