This preview shows pages 1–3. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: The Waf Book (v1.5.19) Thomas Nagy Table of Contents 1. Introduction 1.1. A word on build systems 1.2. The Waf framework 1.3. Objectives of this book 2. Getting Started 2.1. Obtaining Waf 2.2. Running Waf 2.3. Installing Waf on a system 3. The scripting system 3.1. Setting up a project 3.2. Adding project commands 3.3. Cleaning up a project 3.4. Packaging the project sources 3.5. Splitting a project into several files 3.6. Building, cleaning, installing and uninstalling a project 3.7. Customizing the command-line options 4. The configuration system 4.1. Storing configuration sets 4.2. Consulting configuration sets during the build 4.3. Launching and catching configuration exceptions 4.4. Loading Waf tools 4.5. Handling configuration exceptions 5. The build phase 5.1. Declaring new targets 5.2. Finding folders and files through node objects 5.3. Installing files 5.4. Executing specific routines before or after the build 6. Build copies and variants 6.1. Using several build folders 6.2. Defining variants 6.3. Cloning task generators 7. Advanced command definitions 7.1. Providing a custom command context 7.2. Creating aliases / Injecting new commands 7.3. Executing commands as part of another command 7.4. Adding a new command from a waf tool 8. Rule-based task generators (Make-like) 8.1. Declaration and usage 8.2. Rule functions 8.3. Shell usage 8.4. Inputs and outputs 8.5. Sharing data 8.6. Execution order and dependencies 8.7. Dependencies on file contents 9. Name and extension-based file processing 9.1. Refactoring repeated rule-based task generators into implicit rules 9.2. Chaining more than one command 9.3. Scanner methods 9.4. Extension callbacks 9.5. Task class declaration 9.6. Source attribute processing 10. General purpose task generators 10.1. Task generator definition 10.2. Executing the method during the build 10.3. Task generator features 10.4. Task generator method execution order 10.5. Adding or removing a method for execution 10.6. Expressing abstract dependencies between task generators 11. The Task system 11.1. Task creation and execution 11.2. Task execution 11.3. Task execution in parallel 11.4. Task execution order 11.5. Executing tasks only when something changes 12. The scheduler for executing the tasks 12.1. The task execution model 12.2. Job control 12.3. Weak task order constraints 13. Build context and nodes 13.1. Node types 13.2. Build context creation and access 13.3. Using nodes 10/10/2010 The Waf Book (v1.5.19) freehackers.org/~tnagy/…/index.html 1/75 1.1. A word on build systems 1.2. The Waf framework 1.3. Objectives of this book 13.4. Searching for nodes 14. C and C++ projects 14.1. Common script for C/C++ applications 14.2. Include processing 14.3. Library interaction (uselib) 14.4. Configuration helpers 15. Advanced scenarios 15.1. Building the compiler first 15.2. Mixing extensions and c/c++ features 15.3. Inserting special include flags 15.4. Simple file transformations 15.5. A compiler producing source files with names unknown in advance15....
View Full Document
This note was uploaded on 11/29/2010 for the course DEC 123 taught by Professor Fr during the Spring '10 term at ENS Cachan.
- Spring '10