私はautomakeを初めて使用しますが、ドキュメントを調べて、好きなようにすべてを構築しています。ただし、現在CFLAGS ="-Wall-Werror"をオンにしています。これはgccには最適ですが、誰かがgcc以外のコンパイラを使用して私のコードをビルドしようとしていると思います。GCCが使用されているかどうかを検出し、GCCにそれらのフラグのみを設定する正しい方法は何ですか?
編集
解決策は次のようになります。
- http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.htmlをダウンロードし、プロジェクトの./m4/ディレクトリにマクロを配置します。
configure.acに次の行を追加します。
AX_CHECK_COMPILE_FLAG([-Wall], [CFLAGS="$CFLAGS -Wall"], [], []) AX_CHECK_COMPILE_FLAG([-Werror], [CFLAGS="$CFLAGS -Werror"], [], [])
編集2
このマクロは、複数のコンパイラに対して同じことを行うため、-Wallよりも便利な場合があります。http ://www.gnu.org/software/autoconf-archive/ax_cflags_warn_all.html