[cmake] CMAKE가 오류를 발생시키는 원인

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_ERRORCMake 처리를 종료 하려는 경우에 필요합니다.

다음과 같은 것 :

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()


답변