This is make.info, produced by makeinfo version 6.6 from make.texi. This file documents the GNU 'make' utility, which determines automatically which pieces of a large program need to be recompiled, and issues the commands to recompile them. This is Edition 0.75, last updated 19 January 2020, of 'The GNU Make Manual', for GNU 'make' version 4.3. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with the Front-Cover Texts being "A GNU Manual," and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled "GNU Free Documentation License." (a) The FSF's Back-Cover Text is: "You have the freedom to copy and modify this GNU manual. Buying copies from the FSF supports it in developing GNU and promoting software freedom." INFO-DIR-SECTION Software development START-INFO-DIR-ENTRY * Make: (make). Remake files automatically. END-INFO-DIR-ENTRY  Indirect: make.info-1: 1379 make.info-2: 301593  Tag Table: (Indirect) Node: Top1379 Node: Overview16646 Node: Preparing17659 Node: Reading18627 Node: Bugs19554 Node: Introduction21383 Node: Rule Introduction22976 Node: Simple Makefile24909 Node: How Make Works28645 Node: Variables Simplify31294 Node: make Deduces33500 Node: Combine By Prerequisite35233 Node: Cleanup36262 Node: Makefiles37680 Node: Makefile Contents38575 Node: Splitting Lines41748 Node: Makefile Names44231 Node: Include45838 Ref: Include-Footnote-149582 Node: MAKEFILES Variable49716 Node: Remaking Makefiles51257 Node: Overriding Makefiles55587 Node: Reading Makefiles57615 Node: Parsing Makefiles61057 Node: Secondary Expansion62915 Node: Rules70363 Node: Rule Example73036 Node: Rule Syntax73884 Node: Prerequisite Types76479 Node: Wildcards79346 Node: Wildcard Examples81065 Node: Wildcard Pitfall82415 Node: Wildcard Function84204 Node: Directory Search85988 Node: General Search87123 Node: Selective Search88830 Node: Search Algorithm91820 Node: Recipes/Search94338 Node: Implicit/Search95661 Node: Libraries/Search96603 Node: Phony Targets98574 Node: Force Targets103411 Node: Empty Targets104448 Node: Special Targets105750 Node: Multiple Targets113550 Node: Multiple Rules117783 Node: Static Pattern120001 Node: Static Usage120653 Node: Static versus Implicit124372 Node: Double-Colon126112 Node: Automatic Prerequisites127872 Node: Recipes132133 Node: Recipe Syntax133305 Node: Splitting Recipe Lines135420 Node: Variables in Recipes138573 Node: Echoing139899 Node: Execution141111 Ref: Execution-Footnote-1142524 Node: One Shell142669 Node: Choosing the Shell145987 Node: Parallel150131 Node: Parallel Output152800 Node: Parallel Input157227 Node: Errors158346 Node: Interrupts161981 Node: Recursion164342 Node: MAKE Variable166439 Node: Variables/Recursion168682 Node: Options/Recursion174127 Node: -w Option180133 Node: Canned Recipes181128 Node: Empty Recipes184111 Node: Using Variables185551 Node: Reference188979 Node: Flavors190789 Node: Advanced196768 Node: Substitution Refs197273 Node: Computed Names198875 Node: Values203423 Node: Setting204340 Node: Appending207379 Node: Override Directive211350 Node: Multi-Line212977 Node: Undefine Directive215840 Node: Environment216929 Node: Target-specific219181 Node: Pattern-specific222208 Node: Suppressing Inheritance224055 Node: Special Variables225508 Node: Conditionals233749 Node: Conditional Example234462 Node: Conditional Syntax237025 Node: Testing Flags242785 Node: Functions243886 Node: Syntax of Functions245446 Node: Text Functions247780 Node: File Name Functions256341 Node: Conditional Functions261567 Node: Foreach Function263943 Node: File Function267156 Node: Call Function269713 Node: Value Function272598 Node: Eval Function274035 Node: Origin Function276311 Node: Flavor Function279537 Node: Make Control Functions280581 Node: Shell Function282267 Node: Guile Function284026 Node: Running284776 Node: Makefile Arguments286757 Node: Goals287473 Node: Instead of Execution292212 Node: Avoiding Compilation295927 Node: Overriding297902 Node: Testing301593 Node: Options Summary303477 Node: Implicit Rules315181 Node: Using Implicit317318 Node: Catalogue of Rules320837 Node: Implicit Variables330181 Node: Chained Rules335254 Node: Pattern Rules339475 Node: Pattern Intro341009 Node: Pattern Examples343160 Node: Automatic Variables344967 Node: Pattern Match352342 Node: Match-Anything Rules355665 Node: Canceling Rules359586 Node: Last Resort360300 Node: Suffix Rules362129 Node: Implicit Rule Search365863 Node: Archives369414 Node: Archive Members370119 Node: Archive Update371729 Node: Archive Symbols373640 Node: Archive Pitfalls374873 Node: Archive Suffix Rules375595 Node: Extending make377143 Node: Guile Integration378288 Node: Guile Types379516 Node: Guile Interface381936 Node: Guile Example383222 Node: Loading Objects385413 Node: load Directive386903 Node: Remaking Loaded Objects389657 Node: Loaded Object API390291 Node: Loaded Object Example397053 Node: Integrating make399300 Node: Job Slots400051 Node: POSIX Jobserver403483 Node: Windows Jobserver405951 Node: Terminal Output407304 Node: Features409693 Node: Missing418862 Node: Makefile Conventions422590 Node: Makefile Basics423569 Node: Utilities in Makefiles426736 Node: Command Variables429235 Node: DESTDIR432475 Node: Directory Variables434642 Node: Standard Targets449999 Node: Install Command Categories464105 Node: Quick Reference468631 Node: Error Messages481345 Node: Complex Makefile490140 Node: GNU Free Documentation License498758 Node: Concept Index523916 Node: Name Index596081  End Tag Table