Managing projects with Make
Managing projects with Make
（A nutshell handbook）
O'Reilly & Associates, c1991, 1993
2nd ed. / rev. and expanded by Andrew Oram
大学図書館所蔵 件 / 全9件
"C programming utility"--Cover
Minor corrections (February 1993)
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 to make. 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.
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.
「Nielsen BookData」 より