この付録はディレクティヴ、テキストを巧妙に扱う関数、GNU make
で認識される特別な変数について要約するものです。
特別なビルトイン・ターゲット名の項と暗黙ルールのカタログの項、それからオプション要約の項にも他の要約があるのでそちらも見て下さい。
GNU make
で識別されるディレクティヴの要約を次に示します。
define 変数
endef
ifdef 変数
ifndef 変数
ifeq (a,b)
ifeq "a" "b"
ifeq 'a' 'b'
ifneq (a,b)
ifneq "a" "b"
ifneq 'a' 'b'
else
endif
include ファイル
override 変数 = 値
override 変数 := 値
override 変数 += 値
override define 変数
endef
override
ディレクティヴの項を見て下さい。
export
make
to export all variables to child processes by default.make
に変数を伝えるの項を見て下さい。
export 変数
export 変数 = 値
export 変数 := 値
export 変数 += 値
unexport 変数
make
に特定の変数を子プロセスに渡すか渡さないかを指示します。make
に変数を伝えるの項を見て下さい。
vpath 型 パス
vpath 型
vpath
vpath
ディレクティヴで指定された全部のサーチパスを削除します。
次にテキストを巧妙に扱う関数(テキスト変形関数を参照)の要約を示します。
$(subst from,to,text)
$(patsubst 型,replacement,text)
$(strip 文字列)
$(findstring find,text)
$(filter 型...,text)
$(filter-out 型...,text)
$(sort list)
$(dir 名前...)
$(notdir 名前...)
$(suffix 名前...)
$(basename 名前...)
$(addsuffix suffix,名前...)
$(addprefix prefix,名前...)
$(join list1,list2)
$(word n,text)
$(words text)
$(firstword 名前...)
$(wildcard 型...)
wildcard
という関数の項を見て下さい。
$(shell command)
shell
関数の項を見て下さい。
$(origin 変数)
make
の変数がどう定義されているのかを示す文字列を返します。origin
関数の項を見て下さい。
$(foreach var,words,text)
foreach
関数の項を見て下さい。
次に自動変数の要約を示します。 自動変数の項に完全な情報があります。
$@
$%
$<
$?
make
を利用するの項を参照)。
$^
$+
make
を利用するの項を参照)。 $^
の値では重複する依存関係は省略し、一方$+
では残し、さらに順番も保存されます。
$*
$(@D)
$(@F)
$@
の、ディレクトリ部分と、ディレクトリ中のファイル部分。
$(*D)
$(*F)
$*
の、ディレクトリ部分と、ディレクトリ中のファイル部分。
$(%D)
$(%F)
$%
の、ディレクトリ部分と、ディレクトリ中のファイル部分。
$(<D)
$(<F)
$<
の、ディレクトリ部分と、ディレクトリ中のファイル部分。
$(^D)
$(^F)
$^
の、ディレクトリ部分と、ディレクトリ中のファイル部分。
$(+D)
$(+F)
$+
の、ディレクトリ部分と、ディレクトリ中のファイル部分。
$(?D)
$(?F)
$?
の、ディレクトリ部分と、ディレクトリ中のファイル部分。
次の変数はGNU make
で特別に利用されているものです。
MAKEFILES
make
の呼び出しのたびに読み込まれるMakefile。MAKEFILES
という変数の項を見て下さい。
VPATH
VPATH
: 全依存関係をPATHから探すの項を見て下さい。
SHELL
SHELL
をmakefileでセットし、コマンド実行に使うシェルを変更する事も可能です。コマンドの実行の項を見て下さい。
MAKESHELL
make
で使うコマンドインタプリタの名前。この値はSHELL
の値より優先されます。
コマンドの実行の項を見て下さい。
MAKE
make
の名前。
この変数をコマンドで使うと特別な意味になります。
MAKE変数はどう作用するかの項を見て下さい。
MAKELEVEL
make
の)再帰の深度。make
に変数を伝えるの項を見て下さい。
MAKEFLAGS
make
に与えられたフラグ。環境やmakefileでこの変数をセットしてフラグをセットする事も可能です。make
にオプションを伝えるの項を見て下さい。
MAKECMDGOALS
make
にコマンド行で与えられたターゲット。この変数を自前でセットしてもmake
の動作に全く影響しません。CURDIR
-C
オプションが処理されます)。この変数を自前でセットしてもmake
の動作に全く影響しません。make
の再帰利用の項を見て下さい。
SUFFIXES
make
が最初のmakefileを読む前のデフォルトのサフィックスのリスト。