2011-12-16 11 views
1

ソースをダウンロードしてコンパイルする自動ビルドシステムを使用しています。コンパイルの動作を制御するための唯一のインターフェースは、ENV VARと `./configure 'に与えられた引数を設定することです。AC_CHECK_HEADERSから生成された `configure 'によって選択されたシステムファイルを無視する方法

私がコンパイルしている特定のソースの 'configure'スクリプトは、見つかった場合コンパイルプロセスに悪影響を及ぼすシステムヘッダファイルをチェックするという問題があります。 (上記のシステムヘッダファイルが見つかった場合、ローカルシステムにすでにインストールされていると思われるライブラリをコンパイルするのは避けられます)

これは自動化されたプロセスなので、前述のように `configure 'に渡される環境変数と引数だけを指定することができます。 configureスクリプトはAC_CHECK_HEADERSマクロを使用して、システムファイルのチェックを行うコードを生成します。 configureの引数から特定のシステムファイルのチェックを避けるための方法はありますか?

問題のあるヘッダーファイルは、パス/ usr/include/pcap /にあります。

おかげ

答えて

1

さてあなたは試みることができるいくつかあります:

  • AC_CHECK_HEADERSからfoo.hというを削除し、常にがfoo.h、チェックするためのライブラリ
  • 使用AC_CHECK_HEADERを構築/usr/include/pcap/foo.hの場合、AC_DEFINE(HAVE_FOO_H)の場合/usr/include/pcap/foo.hがあります。
  • AC_ARG_ENABLEまたはAC_ARG_WITHを使用して、ホストごとに違反テストを無効にすることができます。引数はconfigureです。その質問に対する答えは「はい」です。

これらはすべて、configure.acを変更してconfigureを再生できると仮定しています。あなたがそれを行うことができない場合は、configureを(もちろん自動化された形で)変更しなければならないかもしれません。

+0

ありがとう、私はそれを行うことができたと思う、ちょうど少数の小切手 – squater

関連する問題