リファレンス: 設定マクロ
config.m4
config.m4 は buildconf によって使用されます。 configure 時に実行する内容についてはすべてここで指示しておかなければなりません。 例えば、行うべきテストや必要な外部ファイル (ヘッダファイルなど) についての指示などがあてはまります。このために使用できるマクロが PHP で定義されています。その中でも最も有用なものを 表46-18 にまとめます。
表 46-18. config.m4 で使用する M4 マクロ
| マクロ | 説明 |
| AC_MSG_CHECKING(message) | configure 時に "checking <message>" というテキストを表示します。 |
| AC_MSG_RESULT(value) |
AC_MSG_CHECKING
の結果を指定します。
value
には、
yes
あるいは
no
のいずれかを指定しなければなりません。 |
| AC_MSG_ERROR(message) |
configure
時に エラーメッセージ
message
を表示し、 スクリプトを終了させます。 |
| AC_DEFINE(name,value,description) |
php_config.h
に
#define
を追加し、値を
value
に設定して
description
をコメントに加えます (モジュールで条件付きコンパイルを行う場合に有用です)。 |
| AC_ADD_INCLUDE(path) | コンパイラのインクルードパスを追加します。 ヘッダファイルを探すためのサーチパスを追加する場合などに使用します。 |
| AC_ADD_LIBRARY_WITH_PATH(libraryname,librarypath) | リンクする外部ライブラリを指定します。 |
| AC_ARG_WITH(modulename,description,unconditionaltest,conditionaltest) |
非常に強力なマクロであり、
configure --help
の出力内容に
description
という説明とともにモジュールを追加します。
configure
スクリプトにオプション
--with-<modulename>
が指定されているかどうかを PHP がチェックし、もし指定されていれば スクリプト
unconditionaltest
を実行します (例えば
--with-myext=yes
)。 このとき、オプションの値は変数
$withval
に格納されます。オプションが指定されなかった場合は、
conditionaltest
を実行します。 |
| PHP_EXTENSION(modulename, [shared]) | このマクロは、PHP があなたの拡張モジュールを設定するために 必ず コールしなければならないものです。 モジュール名に加えて 2 番目の引数を指定することができ、 ここでは共有モジュールとしてコンパイルを行うかどうかを指示します。 この内容は、ソースをコンパイルする際の COMPILE_DL_<modulename> の定義として使用されます。 |