kwsysPlatformCxxTests.cmake 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. MACRO(KWSYS_PLATFORM_CXX_TEST var description invert)
  2. IF("${var}_COMPILED" MATCHES "^${var}_COMPILED$")
  3. MESSAGE(STATUS "${description}")
  4. TRY_COMPILE(${var}_COMPILED
  5. ${CMAKE_CURRENT_BINARY_DIR}
  6. ${CMAKE_CURRENT_SOURCE_DIR}/kwsysPlatformCxxTests.cxx
  7. COMPILE_DEFINITIONS -DTEST_${var} ${KWSYS_PLATFORM_CXX_TEST_DEFINES}
  8. OUTPUT_VARIABLE OUTPUT)
  9. IF(${var}_COMPILED)
  10. WRITE_FILE(${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeOutput.log
  11. "${description} compiled with the following output:\n${OUTPUT}\n\n" APPEND)
  12. ELSE(${var}_COMPILED)
  13. WRITE_FILE(${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeError.log
  14. "${description} failed to compile with the following output:\n${OUTPUT}\n\n" APPEND)
  15. ENDIF(${var}_COMPILED)
  16. IF(${invert} MATCHES INVERT)
  17. IF(${var}_COMPILED)
  18. MESSAGE(STATUS "${description} - no")
  19. ELSE(${var}_COMPILED)
  20. MESSAGE(STATUS "${description} - yes")
  21. ENDIF(${var}_COMPILED)
  22. ELSE(${invert} MATCHES INVERT)
  23. IF(${var}_COMPILED)
  24. MESSAGE(STATUS "${description} - yes")
  25. ELSE(${var}_COMPILED)
  26. MESSAGE(STATUS "${description} - no")
  27. ENDIF(${var}_COMPILED)
  28. ENDIF(${invert} MATCHES INVERT)
  29. ENDIF("${var}_COMPILED" MATCHES "^${var}_COMPILED$")
  30. IF(${invert} MATCHES INVERT)
  31. IF(${var}_COMPILED)
  32. SET(${var} 0)
  33. ELSE(${var}_COMPILED)
  34. SET(${var} 1)
  35. ENDIF(${var}_COMPILED)
  36. ELSE(${invert} MATCHES INVERT)
  37. IF(${var}_COMPILED)
  38. SET(${var} 1)
  39. ELSE(${var}_COMPILED)
  40. SET(${var} 0)
  41. ENDIF(${var}_COMPILED)
  42. ENDIF(${invert} MATCHES INVERT)
  43. ENDMACRO(KWSYS_PLATFORM_CXX_TEST)