This is make.info, produced by makeinfo version 6.8 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.77, last updated 26 February 2023, of 'The GNU Make Manual', for GNU 'make' version 4.4.1. 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, 2021, 2022, 2023 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: 1400 make.info-2: 302518 make.info-3: 627620  Tag Table: (Indirect) Node: Top1400 Node: Overview17185 Node: Preparing18198 Node: Reading19166 Node: Bugs20093 Node: Introduction22043 Node: Rule Introduction23636 Node: Simple Makefile25569 Node: How Make Works29305 Node: Variables Simplify31995 Node: make Deduces34201 Node: Combine By Prerequisite35934 Node: Cleanup36963 Node: Makefiles38381 Node: Makefile Contents39276 Node: Splitting Lines42449 Node: Makefile Names44938 Node: Include46545 Ref: Include-Footnote-150818 Node: MAKEFILES Variable50952 Node: Remaking Makefiles52493 Node: Overriding Makefiles57397 Node: Reading Makefiles59425 Node: Parsing Makefiles63209 Node: Secondary Expansion65067 Node: Rules72442 Node: Rule Example75029 Node: Rule Syntax75877 Node: Prerequisite Types78472 Node: Wildcards81511 Ref: Wildcards-Footnote-183544 Node: Wildcard Examples83634 Node: Wildcard Pitfall84984 Node: Wildcard Function86773 Node: Directory Search88828 Node: General Search89963 Node: Selective Search91670 Node: Search Algorithm94660 Node: Recipes/Search97178 Node: Implicit/Search98501 Node: Libraries/Search99443 Node: Phony Targets101414 Node: Force Targets107006 Node: Empty Targets108043 Node: Special Targets109345 Node: Multiple Targets118689 Node: Multiple Rules123031 Node: Static Pattern125249 Node: Static Usage125901 Node: Static versus Implicit129620 Node: Double-Colon131360 Node: Automatic Prerequisites133120 Node: Recipes137381 Node: Recipe Syntax138553 Node: Splitting Recipe Lines140668 Node: Variables in Recipes143821 Node: Echoing145147 Node: Execution146359 Ref: Execution-Footnote-1147772 Node: One Shell147917 Node: Choosing the Shell151235 Node: Parallel155379 Node: Parallel Disable158095 Node: Parallel Output161526 Node: Parallel Input165961 Node: Errors167080 Node: Interrupts170715 Node: Recursion173076 Node: MAKE Variable175173 Node: Variables/Recursion177416 Node: Options/Recursion183271 Node: -w Option189872 Node: Canned Recipes190867 Node: Empty Recipes193850 Node: Using Variables195290 Node: Reference198866 Node: Flavors200676 Node: Recursive Assignment201421 Node: Simple Assignment203295 Node: Immediate Assignment206880 Node: Conditional Assignment209363 Node: Advanced209999 Node: Substitution Refs210504 Node: Computed Names212106 Node: Values216473 Node: Setting217548 Node: Appending220814 Node: Override Directive224370 Node: Multi-Line225997 Node: Undefine Directive228860 Node: Environment229949 Node: Target-specific232148 Node: Pattern-specific235325 Node: Suppressing Inheritance237172 Node: Special Variables238625 Node: Conditionals247749 Node: Conditional Example248462 Node: Conditional Syntax251025 Node: Testing Flags256785 Node: Functions258188 Node: Syntax of Functions259797 Node: Text Functions262382 Node: File Name Functions271023 Node: Conditional Functions276249 Node: Let Function280091 Node: Foreach Function282714 Node: File Function285997 Node: Call Function288554 Node: Value Function291447 Node: Eval Function292884 Node: Origin Function295162 Node: Flavor Function298388 Node: Make Control Functions299432 Node: Shell Function302518 Node: Guile Function305506 Node: Running306256 Node: Makefile Arguments308309 Node: Goals309025 Node: Instead of Execution313773 Node: Avoiding Compilation317488 Node: Overriding319463 Node: Testing321775 Node: Temporary Files323659 Node: Options Summary324768 Node: Implicit Rules339048 Node: Using Implicit341185 Node: Catalogue of Rules344704 Node: Implicit Variables354094 Node: Chained Rules359167 Node: Pattern Rules363982 Node: Pattern Intro365516 Node: Pattern Examples368245 Node: Automatic Variables370052 Node: Pattern Match377459 Node: Match-Anything Rules380889 Node: Canceling Rules384810 Node: Last Resort385524 Node: Suffix Rules387353 Node: Implicit Rule Search391087 Node: Archives395039 Node: Archive Members395744 Node: Archive Update397354 Node: Archive Symbols399265 Node: Archive Pitfalls400488 Node: Archive Suffix Rules401671 Node: Extending make403219 Node: Guile Integration404364 Node: Guile Types405592 Node: Guile Interface408012 Node: Guile Example409298 Node: Loading Objects411489 Node: load Directive412979 Node: Remaking Loaded Objects415733 Node: Loaded Object API416367 Node: Loaded Object Example423252 Node: Integrating make425624 Node: Job Slots426375 Node: POSIX Jobserver429751 Node: Windows Jobserver433377 Node: Terminal Output434789 Node: Features437181 Node: Missing446350 Node: Makefile Conventions450078 Node: Makefile Basics451057 Node: Utilities in Makefiles454224 Node: Command Variables456717 Node: DESTDIR459957 Node: Directory Variables462124 Node: Standard Targets477483 Node: Install Command Categories491589 Node: Quick Reference496103 Node: Error Messages509320 Node: Complex Makefile518115 Node: GNU Free Documentation License526733 Node: Concept Index551891 Node: Name Index627620  End Tag Table  Local Variables: coding: utf-8 End: