特定の条件でCMAKEにエラーを生成させるにはどうすればよいですか。つまり、次のようなものが必要です。
if( SOME_COND )
error( "You can't do that" )
endif()
特定の条件でCMAKEにエラーを生成させるにはどうすればよいですか。つまり、次のようなものが必要です。
if( SOME_COND )
error( "You can't do that" )
endif()
回答:
message()この方法は、モードのためのオプションの引数を持っている可能STATUS、WARNING、AUTHOR_WARNING、SEND_ERROR、およびFATAL_ERROR。STATUSメッセージはstdoutに送られます。メッセージを含まない他のすべてのモードは、stderrに送られます。
SEND_ERRORエラーを出力したいが処理は継続したい場合。あなたが欲しいFATAL_ERRORあなたはCMakeの処理を終了する場合。
何かのようなもの:
if( SOME_COND )
message( SEND_ERROR "You can't do that" )
elseif( SOME_CRITICAL_COND )
message( FATAL_ERROR "You can not do this at all, CMake will exit." )
endif()
AUTHOR_WARNING = CMake Warning (dev), continue processingスクリプトのデバッグに使用することを示唆しています。単なるワイルドな推測です。
AUTHOR_WARNINGは、エンドユーザーではなく開発者にとって有用ではない警告を示します。いくつかのハック/タスクを修正するように通知するか、修正する必要があるがユーザーのCMakeの実行に影響しない警告を示すことができます。そのため、ユーザーはこれらの警告をで抑制できます--Wno-dev。
AUTHOR_WARNINGですか?