Intel C コンパイラを使用していくつかのコードを作成し始めたところです -- icc
. 私たちのconfigureスクリプトは、フラグを追加するのが好きで、-ffast-math
GCC固有のように見えるいくつかのフラグを追加するのが好きです。で呼び出すicc
と-ffast-math
、沈黙させたい次の警告が生成されます。
icc: command line warning #10006: ignoring unknown option '-ffast-math'
私が見る限り、沈黙させるには2つの方法があります(しかし、他の解決策を見てみたいです)。まず、その警告をエラーに変えて-ffast-math
、有効なオプションではないことを configure に伝えることができます。configureがそれをコマンドラインに追加しようとすると、それができないことがわかり、結局追加するのは悪い考えだと判断することを願っています... 2番目のオプション(私はそうは思わないまったく同じくらいきれいです)は、icc
そのような警告を黙らせるように言うことです...
コメントに応答して、これが の関連部分ですconfigure.ac
。
# add -ffast-math etc if possible
AX_CHECK_COMPILER_FLAGS([-ffast-math],
[CFLAGS="$CFLAGS -ffast-math"
])
AX_CHECK_COMPILER_FLAGS([-mtune=native -march=native],
[CFLAGS="$CFLAGS -mtune=native -march=native"
])
その m4 マクロはここから取得されたようです
それをより賢く修正することは「聖杯」になると思います-しかし、渡されicc
た場合でも成功した終了ステータスを返すので、できることはあまりないと思いますあります(私が間違っていることを自由に証明してください)。そうは言っても、構成スクリプトにインテルのチェックをハードコーディングしたくありません... . それはあまりにも厄介なようです。-ffast-math
-mtune=native