Roland Ver. 4.5 Informacje Techniczne Strona 153

  • Pobierz
  • Dodaj do moich podręczników
  • Drukuj
  • Strona
    / 212
  • Spis treści
  • BOOKMARKI
  • Oceniono. / 5. Na podstawie oceny klientów
Przeglądanie stron 152
Chapter 13: Features of GNU make 143
13 Features of GNU make
Here is a summary of the features of GNU make, for comparison with and credit to other
versions of make. We consider the features of make in 4.2 BSD systems as a baseline. If
you are concerned with writing portable makefiles, you should not use the features of make
listed here, nor the ones in Chapter 14 [Missing], page 147.
Many features come from the version of make in System V.
The VPATH variable and its special meaning. See Section 4.4 [Searching Directories for
Prerequisites], page 25. This feature exists in System V make, but is undocumented.
It is documented in 4.3 BSD make (which says it mimics System V’s VPATH feature).
Included makefiles. See Section 3.3 [Including Other Makefiles], page 13. Allowing
multiple files to be included with a single directive is a GNU extension.
Variables are read from and communicated via the environment. See Section 6.10
[Variables from the Environment], page 70.
Options passed through the variable MAKEFLAGS to recursive invocations of make. See
Section 5.7.3 [Communicating Options to a Sub-make], page 54.
The automatic variable $% is set to the member name in an archive reference. See
Section 10.5.3 [Automatic Variables], page 120.
The automatic variables $@, $*, $<, $%, and $? have corresponding forms like $(@F)
and $(@D). We have generalized this to $^ as an obvious extension. See Section 10.5.3
[Automatic Variables], page 120.
Substitution variable references. See Section 6.1 [Basics of Variable References],
page 59.
The command line options -b and -m’, accepted and ignored. In System V make,
these options actually do something.
Execution of recursive commands to run make via the variable MAKE even if -n’, -q
or -t is specified. See Section 5.7 [Recursive Use of make], page 50.
Support for suffix .a in suffix rules. See Section 11.4 [Archive Suffix Rules], page 130.
This feature is obsolete in GNU make, because the general feature of rule chaining (see
Section 10.4 [Chains of Implicit Rules], page 117) allows one pattern rule for installing
members in an archive (see Section 11.2 [Archive Update], page 129) to be sufficient.
The arrangement of lines and backslash/newline combinations in recipes is retained
when the recipes are printed, so they appear as they do in the makefile, except for the
stripping of initial whitespace.
The following features were inspired by various other versions of make. In some cases it
is unclear exactly which versions inspired which others.
Pattern rules using %’. This has been implemented in several versions of make. We’re
not sure who invented it first, but it’s been spread around a bit. See Section 10.5
[Defining and Redefining Pattern Rules], page 118.
Rule chaining and implicit intermediate files. This was implemented by Stu Feldman
in his version of make for AT&T Eighth Edition Research Unix, and later by Andrew
Hume of AT&T Bell Labs in his mk program (where he terms it “transitive closure”).
We do not really know if we got this from either of them or thought it up ourselves at
the same time. See Section 10.4 [Chains of Implicit Rules], page 117.
Przeglądanie stron 152
1 2 ... 148 149 150 151 152 153 154 155 156 157 158 ... 211 212

Komentarze do niniejszej Instrukcji

Brak uwag