naobe @ ウィキ
Makefile
最終更新:
naobe
-
view
Unix/Linuxにもどる
書式
ターゲット: コンポーネント1 コンポーネント2 ・・・
アクション
コンポーネントが、ターゲットより新しければ、アクションを実行する。
コンポーネントが新しいとき、コンポーネントをターゲットとするルールを探し、そのルールを実行する。最後に大元のアクションを実行する。
コンポーネントが新しいとき、コンポーネントをターゲットとするルールを探し、そのルールを実行する。最後に大元のアクションを実行する。
サフィックスルール
拡張子どうしのルール。デフォルトで設定されている。
【例】
【例】
.c.o:
cc -c -g $<
*.oがターゲット。*.cがコンポーネント。
.o :
cc -o $@ $< -lapr-1 -laprutil-1
*がターゲット。*.oがコンポーネント。
デフォルトルールの表示
make -p -f/dev/null
デフォルトルールを無効にするには
.c : ;
マクロ
書式
マクロ名 = 値
参照する場合は、${マクロ名}, $(マクロ名)
内部マクロ
| 項目 | 説明 |
| $@ | ターゲット |
| $< | 最初のコンポーネント |
| $? | スペースで区切られたターゲットより新しい全てのコンポーネント。サフィックスルールで使用不可。 |
| $* | スペースで区切られたターゲットより新しい全てのコンポーネント。サフィックスルールで使用可能。 |
| $^ | スペースで区切られた全てのコンポーネント |
その他
| 項目 | 説明 |
|---|---|
| @ | コマンドエコーを抑制する |
| .PHONY | 偽りのターゲット。all, cleanなど実際にそのファイルが存在してもルールを実行するために定義するターゲット |
