next up previous
: 依存関係行で使用する暗黙のマクロ : マクロ : マクロ定義と参照

コマンド行で使用する暗黙のマクロ

  1. $@マクロ $@は、現在のターゲット名に設定される。

    calc : main.o sub1.o sub2.o cc main.o sub1.o sub2.o -o $@

    $@には、ターゲット名のcalcが設定される。

  2. $?マクロ

    $?マクロは、ターゲットより新しい依存関係の名前の文字列に設定される。

  3. $マクロ $マクロは、その動作を起こす原因となった関連ファイルの名前に設定される。

    sub1.o : cc -o $

    $には、sub1.cのソースファイル名が設定される。

  4. $*マクロ

    $*マクロは、現在のターゲットと依存するファイル名とに共通する接頭部の文字列に設定される。

  5. その他

    以上のマクロの他に、$(@D)、$(@F)、$(*D)、$(*F)、$(D)、$(F)がある。 これらは、上記のマクロに"D"か"F"がついた形になっている。文字"D"は対応する名前のディレクトリ部分だけを参照することになり、もじ"F"はファイル名の部分だけを参照することになる。これらの拡張マクロは次のように使用することができる。

    subprog : /user/project/subprog cd $(D); $(MAKE) $(F)

    ここで、$(D)には/usr/projectのディレクトリ名が設定され、$(F)にはsubprogが設定される。



Masahiro Shimada 平成12年10月13日