0

AC_CACHE_CHECK マクロを使用して autoconf で設定する configure 中にいくつかのチェックを実行します。一部のチェックは重要なので、合格しない場合は configure を失敗させたいと考えています。どうすればこれを達成できますか?

ありがとう、ステフェン

4

1 に答える 1

1

よく分からない。結果がキャッシュされていない場合に中止しますか? または、結果がキャッシュされていない場合、値の割り当てを試みますが、失敗した場合は中止しますか? 後者の場合は、次のようにします。

# Replace 3rd argument with commands to assign the cache variable
# See autoconf documentation for how to name the cache variable
AC_CACHE_CHECK([myvariable], [sss_cv_type_myvar], [sss_cv_type_myvar=yes])
myvariable=$sss_cv_type_myvar
AS_IF([test x"$myvariable" != xyes],[AC_MSG_ERROR(
    [myvariable not yes])])

変数がキャッシュされていないという理由だけで中止したい場合はexit、 の 3 番目の引数に an を入れることができますAC_CACHE_CHECK。そのオプションのコマンドは、キャッシュ変数を割り当てるために使用され、副作用は想定されていません。構成スクリプトを終了することは間違いなく副作用ですが、それはあなたが望む動作かもしれません。

于 2012-06-04T14:30:26.433 に答える