Preface. The Value of make. Lessons from make. Variants. Scope of This Book. Getting Automated Tests. FTP. FTPMAIL. BITFTP UUCP. Conventions Used in This Handbook. Acknowledgments. We'd Like to Hear From You. Chapter 1: How to Write a Simple Makefile The Description File Dependency Checking Minimizing Rebuilds Invoking make Basic Rules of Syntax. Chapter 2: Macros Syntax Rules Internally Defined Macros Macro Definitions on the Command Line Shell Variables Priority of Macro Assignments Relying on Environment Variables for Defaults Macro String Substitution Internal Macros for Prerequisites and Targets. Chapter 3: Suffix Rules What is a Suffix Rule? Command Options Internal Macros Commands Supported by Default Suffix Rules Fortran and Pascal SCCS and RCS Libraries (Archives) Using Parentheses for Library Modules A Library Example Maintaining Libraries The Double Colon lex and yacc The Null Suffix How to Display Defaults Generating the Display What the Display Means .SUFFIXES and Precedence Writing Your Own Suffix Rules A Sample Collection of Suffix Rules Nullifying Rules Conflicts With Default Suffixes. Chapter 4: Commands Filename Pattern Matching Effects of Newlines on Commands Errors and Exit Status Which Shell? Pathnames and Security. Chapter 5: Project Management Dummy Targets Recursive make on Directories General Tips on Recursive make Other Techniques for Multiple Directories Directories in Internal Macros Viewpath (VPATH Macro) Compiler Options and directives Forcing Remakes Maintaining Multiple Variants Through Explicit Targets Maintaining Multiple Variants in Different Directories Maintaining Variants Through Suffix Rules Header Files Global Definitions (include Statement) Distributed Files and NFS Issues. Chapter 6: Command-line Usage and Special Targets Description Filenames Status Information and Debugging Errors and File Deletion The MAKEFLAGS Macro Miscellaneous Features Affecting Defaults. Chapter 7: Troubleshooting Debugging a Build (-d option) Syntax Errors Don't Know How to Make Target Up to Date Command Not Found, or Cannot Load Syntax Errors in Multi-line Commands Inconsistent Lines, or Too Many Lines Unrecognized Macros Default Rules Ignored Appendix A: Quick Reference Command Line Description File Lines Macros Internal Macros Macro Modifiers Macro String Substitution Macros with Special Handling Special Target Names Appendix B: Popular Extensions mk and nmake GNU make imake makedepend shape Parallel and Distributed Implementations Appendix C: Features That Differ Between Variants of make Background List of Differences Tests You Can Run Macro String Substitution File and Directory Macros Parenthesis Syntax for Libraries Single-suffix Rules and .sh Rules Default Shell MAKE and MAKEFLAGS Macros include Statement VPATH. Index.
With a background in journalism and farming, Steve Talbott has worked for the past 12 years in technical documentation. Prior to joining O'Reilly & Associates he managed the Technical Publications Group at Concurrent Computer Corporation, and before that was responsible for the development of computer-based documentation tools at Concurrent. In his editorial position at O'Reilly, Steve develops new titles across the company's product line. He has focused on 3D graphics and software standards. Avocationally, Steve pursues an interest in the broader social and cultural implications of computers. Over an eight-year career in computer documentation Andrew Oram has evolved from a proponent of the congenial user-oriented approach to a fanatic on the subject of explaining models and internal operations so as to empower computer users. He was not prepared by his education (which included music and social work) for the philosophical and pedagogical demands of this role, but seems to have fallen into it. His technical writing career encompasses Honeywell Information Systems (now Bull), CSPI (still itself, incredibly), MASSCOMP (now Concurrent Computer Corporation), and currently O'Reilly & Associates, where he is an author. He also once worked as a college instructor teaching PDP-11 assembly language. Topics of his manuals include network administration and programming, array processors, languages, debuggers, and real-time programming---in fact, writing about shell commands in Managing Projects with make has proved to be a relaxing break. His recent research focuses on making user documentation verifiable through the same quality-assurance process used on other components of a computer system. Whenever he gets a free moment away from his three-year-old, seven-year-old, and other commitments, he works with Quality Assurance teams on this project and publicizes it through articles and conferences.
![]() |
Ask a Question About this Product More... |
![]() |