BuildTargetInSubProject.cmake 624 B

123456789101112131415
  1. function(BuildTargetInSubProject P T E)
  2. try_compile(RESULTVAR
  3. ${CMAKE_CURRENT_BINARY_DIR}/subproject
  4. ${CMAKE_CURRENT_SOURCE_DIR}/subproject
  5. ${P} ${T} OUTPUT_VARIABLE O)
  6. if(E AND RESULTVAR)
  7. message(STATUS "${P} target ${T} succeeded as expected")
  8. elseif(E AND NOT RESULTVAR)
  9. message(FATAL_ERROR "${P} target ${T} failed but should have succeeded. Output:${O}")
  10. elseif(NOT E AND NOT RESULTVAR)
  11. message(STATUS "${P} target ${T} failed as expected")
  12. elseif(NOT E AND RESULTVAR)
  13. message(FATAL_ERROR "${P} target ${T} succeeded but should have failed. Output:${O}")
  14. endif()
  15. endfunction()