make is one of UNIX's greatest contributions to software development, and this book is the clearest description of make ever written. Even the smallest software project typically involves a number of files that depend upon each other in various ways. If you modify one or more source files, you must relink the program after recompiling some, but not necessarily all, of the sources.
make greatly simplifies this process. By recording the relationships between sets of files, make can automatically perform all the necessary updating.
For large projects with teams of programmers and multiple releases, make becomes even more critical. But in order to avoid spending a major portion of your maintenance budget on maintaining the Makefiles, you need a system for handling directories, dependencies, and macro definitions. This book describes all the basic features of make and provides guidelines on meeting the needs of large, modern projects.
Some of the issues addressed in the second edition include:
Projects covering several directories.
Maintaining consistency when building variants of a program.
Automatic generation of header file dependencies.
Forced rebuilds of existing files.
A description of free products that contain major enhancements tomake.
Listings of the features that vary between different versions of make and simple ways to test them.
More detail and examples on common errors, use of the shell in make, formal rules of syntax in make, and support for various utilities.
Andy Oram is an editor at O'Reilly & Associates, specializing in books on Linux and programming. Most recently, he edited Peer-to-Peer: Harnessing the Power of Disruptive Technologies.
Stephen L. Talbott went from Presidential Scholar to farmer, and from editing an interdisciplinary, scholarly journal about the catastrophist theories of Immanual Velikovsky, to fourteen years working in the computer industry. Mr. Talbott recently moved with his family from the Boston technology belt to rural New York, where his efforts to reach an accommodation with his computer continue.
Our look is the result of reader comments, our own experimentation, and feedback from distribution channels. Distinctive covers complement our distinctive approach to technical topics, breathing personality and life into potentially dry subjects. The animal featured on the cover of Managing Projects with make is a potto, a member of the loris family. A small primate native to the tropical forests of West Africa, the potto is 17 inches long and covered with dense, wooly, reddish-brown fur. Its opposable thumbs give it an excellent grasp, leaving it well adapted to its life in the trees. The potto spends its days sleeping in crevices or holes in trees, emerging at night to hunt for food--insects, snails, bats and fruit. Unlike many primates, the potto generally lives alone. UNIX and its attendant programs can be unruly beasts. Nutshell Handbooks(R) help you tame them.
...
Edie Freedman designed this cover and the entire UNIX bestiary that appears on other Nutshell Handbooks. The beasts themselves are adapted from 19th-century engravings from the Dover Pictorial Archive.
The text of this book is set in Times Roman; headings are Helvetica; examples are Courier. Text was prepared using SoftQuad's sqtroff text formatter. Figures are produced with a Macintosh. Printing is done on an Apple LaserWriter.
Comments about O'Reilly Media Managing Projects with make:
Sad to say, I agree with many of the other reviews here. This book us outdated (no gnu make), never examined large project issues in the first place (where is the "Recursive Make Considered Harmful" reference?).
There is a general lack of good books anywhere about make, or any other build tool. O'Reilly should be able to fill this gap.
~Matt
1/11/2002
5.0
Managing Projects with make, 2nd Edition Review
By Harry Pehkonen
from Undisclosed
Comments about O'Reilly Media Managing Projects with make:
Excellent book -- One weekend of skimming saved weeks of man-page reading, trial and error, and web research.
12/6/2000
2.0
Managing Projects with make, 2nd Edition Review
By Mark Manning
from Undisclosed
Comments about O'Reilly Media Managing Projects with make:
This book, like all books, has it's ups and downs.
The good part is that it covers most of what makes up Make. As far as I know, there are no other books on Make. Thus, it is better than nothing.
The bad part is that there are no layouts for each and every command available to the user when writing Makefiles. For instance, I knew there had to be an IF statement in Make. However, the book does not have an entry in the index for IF statements. However, on page 95 there is an example of an IF statement. But it is wrong and it is presented incorrectly to show what kind of error you will get if you present an incorrectly formatted IF statement. Luckily, in the following paragraph the author(s) talk about why the preceding IF statement is wrong. This was the only information I could find on how to use the IF statement in the book.
Basically, this book is similar to how version #1 of the Lex & YACC book was. There is a lot of "Look! You can do this!" but no "Let's start from scratch, explain each and every command, and then go into usage of these commands." Look at the current version of the Lex & YACC book and the Perl book. Both do a very good job of explaining everything to someone. Don't assume we know ANYTHING about Make. Because that is when you begin leaving things out. Things which might be important to us - but not you.