Next: , Previous: LIBOBJS, Up: Programs


7.7 プログラムビルド時に使用される変数

Automakeがコンパイルに使用するMakefile変数を知ることが役に立ち つこともあります.例えば,特別な状況では,自分でコンパイルをする必要が あるかもしれません.

Autoconfから継承される変数もあります.これらはCCCFLAGSCPPFLAGSDEFSLDFLAGS,そしてLIBSです. Automake自身が定義する追加の変数もあります.

AM_CPPFLAGS
この変数の内容は,Cプリプロセッサを呼び出すコンパイルで毎回渡されます. それはプリプロセッサへの引数リストです.例えば,‘-I’と‘-D’オ プションは,ここにリストアップすべきです.

Automakeは,すでに‘-I’オプションを自動的に提供しています.特に, ‘-I$(srcdir)’,‘-I.’,そして(AC_CONFIG_HEADERSAM_CONFIG_HEADERを使用している場合は)config.hがあるディ レクトリを示す‘-I’を生成します.‘nostdinc’オプションを使用す ることで,デフォルトの‘-I’オプションを利用不可能にすることが可能 です.

実行形式ごと(またはライブラリごと)に_CPPFLAGS変数が定義されてい る場合,それを優先するので,AM_CPPFLAGSは無視されます.

INCLUDES
これは,‘AM_CPPFLAGS’と同じ仕事をします(または,ターゲットごとに ‘_CPPFLAGS’が使用されている場合と同じです).それは同じ機能に対す る古い名前です.この変数の使用には反対します.我々は,代わりに ‘AM_CPPFLAGS’とターゲットごとの‘_CPPFLAGS’の使用を勧めます.
AM_CFLAGS
これは,Makefile.amの著者が,追加のCコンパイラフラグを渡すため に使用することが可能な変数です.その完全な説明はどこかにあるでしょう. 状況によっては,実行形式ごと(またはライブラリごと)の_CFLAGSが優 先され,これは使用されません.
COMPILE
これはCソースファイルをコンパイルするために実際に使用されるコマンドで す.完全なコマンドラインを構成するために,ファイル名が追加されます.
AM_LDFLAGS
これは,Makefile.amの著者が,追加のリンカフラグを渡すために使用 することが可能な変数です.状況によっては,実行形式ごと(またはライブラ リごと)の_LDFLAGSが優先され,これは使用されません.
LINK
これはCプログラムをリンクするために実際に使用されるコマンドです.それ にはすでに,‘-o $@’と通常参照される変数(例えば,CFLAGS)が 含まれています.それは,リンクされるオブジェクトファイルとライブラリの 名前を“引数”として受けとります.