|
|
This is make.info, produced by makeinfo version 6.5 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.74, last updated 21 May 2016, of 'The GNU Make
|
|
|
Manual', for GNU 'make' version 4.2.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 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: 1353
|
|
|
make.info-2: 307140
|
|
|
|
|
|
Tag Table:
|
|
|
(Indirect)
|
|
|
Node: Top1353
|
|
|
Node: Overview16535
|
|
|
Node: Preparing17548
|
|
|
Node: Reading18516
|
|
|
Node: Bugs19443
|
|
|
Node: Introduction21272
|
|
|
Node: Rule Introduction22865
|
|
|
Node: Simple Makefile24798
|
|
|
Node: How Make Works28534
|
|
|
Node: Variables Simplify31183
|
|
|
Node: make Deduces33389
|
|
|
Node: Combine By Prerequisite35122
|
|
|
Node: Cleanup36151
|
|
|
Node: Makefiles37569
|
|
|
Node: Makefile Contents38405
|
|
|
Node: Splitting Lines41578
|
|
|
Node: Makefile Names43338
|
|
|
Node: Include44945
|
|
|
Ref: Include-Footnote-148689
|
|
|
Node: MAKEFILES Variable48823
|
|
|
Node: Remaking Makefiles50364
|
|
|
Node: Overriding Makefiles54589
|
|
|
Node: Reading Makefiles56617
|
|
|
Node: Secondary Expansion60079
|
|
|
Node: Rules67540
|
|
|
Node: Rule Example70213
|
|
|
Node: Rule Syntax71066
|
|
|
Node: Prerequisite Types73661
|
|
|
Node: Wildcards76528
|
|
|
Node: Wildcard Examples78247
|
|
|
Node: Wildcard Pitfall79597
|
|
|
Node: Wildcard Function81386
|
|
|
Node: Directory Search83170
|
|
|
Node: General Search84305
|
|
|
Node: Selective Search86012
|
|
|
Node: Search Algorithm89002
|
|
|
Node: Recipes/Search91520
|
|
|
Node: Implicit/Search92843
|
|
|
Node: Libraries/Search93785
|
|
|
Node: Phony Targets95756
|
|
|
Node: Force Targets100593
|
|
|
Node: Empty Targets101630
|
|
|
Node: Special Targets102932
|
|
|
Node: Multiple Targets110805
|
|
|
Node: Multiple Rules112665
|
|
|
Node: Static Pattern114883
|
|
|
Node: Static Usage115535
|
|
|
Node: Static versus Implicit119254
|
|
|
Node: Double-Colon120994
|
|
|
Node: Automatic Prerequisites122754
|
|
|
Node: Recipes127015
|
|
|
Node: Recipe Syntax128187
|
|
|
Node: Splitting Recipe Lines130302
|
|
|
Node: Variables in Recipes133455
|
|
|
Node: Echoing134781
|
|
|
Node: Execution136056
|
|
|
Ref: Execution-Footnote-1137469
|
|
|
Node: One Shell137614
|
|
|
Node: Choosing the Shell140929
|
|
|
Node: Parallel145073
|
|
|
Node: Parallel Output147742
|
|
|
Node: Parallel Input152169
|
|
|
Node: Errors153288
|
|
|
Node: Interrupts156952
|
|
|
Node: Recursion158535
|
|
|
Node: MAKE Variable160632
|
|
|
Node: Variables/Recursion162875
|
|
|
Node: Options/Recursion168320
|
|
|
Node: -w Option174326
|
|
|
Node: Canned Recipes175321
|
|
|
Node: Empty Recipes178304
|
|
|
Node: Using Variables179744
|
|
|
Node: Reference183172
|
|
|
Node: Flavors184730
|
|
|
Node: Advanced190709
|
|
|
Node: Substitution Refs191214
|
|
|
Node: Computed Names192767
|
|
|
Node: Values197315
|
|
|
Node: Setting198232
|
|
|
Node: Appending201271
|
|
|
Node: Override Directive205215
|
|
|
Node: Multi-Line206842
|
|
|
Node: Undefine Directive209666
|
|
|
Node: Environment210755
|
|
|
Node: Target-specific213007
|
|
|
Node: Pattern-specific216034
|
|
|
Node: Suppressing Inheritance217881
|
|
|
Node: Special Variables219334
|
|
|
Node: Conditionals225743
|
|
|
Node: Conditional Example226456
|
|
|
Node: Conditional Syntax229019
|
|
|
Node: Testing Flags234779
|
|
|
Node: Functions235880
|
|
|
Node: Syntax of Functions237440
|
|
|
Node: Text Functions239774
|
|
|
Node: File Name Functions248339
|
|
|
Node: Conditional Functions253565
|
|
|
Node: Foreach Function255940
|
|
|
Node: File Function259153
|
|
|
Node: Call Function261710
|
|
|
Node: Value Function264595
|
|
|
Node: Eval Function266032
|
|
|
Node: Origin Function268308
|
|
|
Node: Flavor Function271534
|
|
|
Node: Make Control Functions272578
|
|
|
Node: Shell Function274264
|
|
|
Node: Guile Function276023
|
|
|
Node: Running276773
|
|
|
Node: Makefile Arguments278754
|
|
|
Node: Goals279470
|
|
|
Node: Instead of Execution284209
|
|
|
Node: Avoiding Compilation287924
|
|
|
Node: Overriding289899
|
|
|
Node: Testing292211
|
|
|
Node: Options Summary294095
|
|
|
Node: Implicit Rules307140
|
|
|
Node: Using Implicit309277
|
|
|
Node: Catalogue of Rules312796
|
|
|
Node: Implicit Variables322140
|
|
|
Node: Chained Rules327213
|
|
|
Node: Pattern Rules331223
|
|
|
Node: Pattern Intro332757
|
|
|
Node: Pattern Examples335339
|
|
|
Node: Automatic Variables337146
|
|
|
Node: Pattern Match344498
|
|
|
Node: Match-Anything Rules347821
|
|
|
Node: Canceling Rules351700
|
|
|
Node: Last Resort352414
|
|
|
Node: Suffix Rules354243
|
|
|
Node: Implicit Rule Search357968
|
|
|
Node: Archives361467
|
|
|
Node: Archive Members362172
|
|
|
Node: Archive Update363782
|
|
|
Node: Archive Symbols365693
|
|
|
Node: Archive Pitfalls366926
|
|
|
Node: Archive Suffix Rules367648
|
|
|
Node: Extending make369196
|
|
|
Node: Guile Integration370341
|
|
|
Node: Guile Types371569
|
|
|
Node: Guile Interface373989
|
|
|
Node: Guile Example375275
|
|
|
Node: Loading Objects377466
|
|
|
Node: load Directive378956
|
|
|
Node: Remaking Loaded Objects381710
|
|
|
Node: Loaded Object API382344
|
|
|
Node: Loaded Object Example389106
|
|
|
Node: Integrating make391353
|
|
|
Node: Job Slots392104
|
|
|
Node: POSIX Jobserver395536
|
|
|
Node: Windows Jobserver397930
|
|
|
Node: Terminal Output399283
|
|
|
Node: Features401672
|
|
|
Node: Missing410841
|
|
|
Node: Makefile Conventions414566
|
|
|
Node: Makefile Basics415545
|
|
|
Node: Utilities in Makefiles418712
|
|
|
Node: Command Variables421211
|
|
|
Node: DESTDIR424451
|
|
|
Node: Directory Variables426618
|
|
|
Node: Standard Targets441975
|
|
|
Node: Install Command Categories456081
|
|
|
Node: Quick Reference460607
|
|
|
Node: Error Messages473321
|
|
|
Node: Complex Makefile481217
|
|
|
Node: GNU Free Documentation License489880
|
|
|
Node: Concept Index515024
|
|
|
Node: Name Index586532
|
|
|
|
|
|
End Tag Table
|