SystemInformation.cmake 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. PROJECT(DumpInformation)
  2. # first get the standard information for th platform
  3. INCLUDE_DIRECTORIES("This does not exists")
  4. GET_DIRECTORY_PROPERTY(incl INCLUDE_DIRECTORIES)
  5. SET_DIRECTORY_PROPERTIES(PROPERTIES INCLUDE_DIRECTORIES "${DumpInformation_BINARY_DIR};${DumpInformation_SOURCE_DIR}")
  6. CONFIGURE_FILE("${CMAKE_ROOT}/Modules/SystemInformation.in" "${RESULT_FILE}")
  7. FILE(APPEND "${RESULT_FILE}"
  8. "\n=================================================================\n")
  9. FILE(APPEND "${RESULT_FILE}"
  10. "=== VARIABLES\n")
  11. FILE(APPEND "${RESULT_FILE}"
  12. "=================================================================\n")
  13. GET_CMAKE_PROPERTY(res VARIABLES)
  14. FOREACH(var ${res})
  15. FILE(APPEND "${RESULT_FILE}" "${var} \"${${var}}\"\n")
  16. ENDFOREACH(var ${res})
  17. FILE(APPEND "${RESULT_FILE}"
  18. "\n=================================================================\n")
  19. FILE(APPEND "${RESULT_FILE}"
  20. "=== COMMANDS\n")
  21. FILE(APPEND "${RESULT_FILE}"
  22. "=================================================================\n")
  23. GET_CMAKE_PROPERTY(res COMMANDS)
  24. FOREACH(var ${res})
  25. FILE(APPEND "${RESULT_FILE}" "${var}\n")
  26. ENDFOREACH(var ${res})
  27. FILE(APPEND "${RESULT_FILE}"
  28. "\n=================================================================\n")
  29. FILE(APPEND "${RESULT_FILE}"
  30. "=== MACROS\n")
  31. FILE(APPEND "${RESULT_FILE}"
  32. "=================================================================\n")
  33. FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/AllMacros.txt "")
  34. GET_CMAKE_PROPERTY(res MACROS)
  35. FOREACH(var ${res})
  36. FILE(APPEND "${RESULT_FILE}" "${var}\n")
  37. ENDFOREACH(var ${res})
  38. FILE(APPEND "${RESULT_FILE}"
  39. "\n=================================================================\n")
  40. FILE(APPEND "${RESULT_FILE}"
  41. "=== OTHER\n")
  42. FILE(APPEND "${RESULT_FILE}"
  43. "=================================================================\n")
  44. GET_DIRECTORY_PROPERTY(res INCLUDE_DIRECTORIES)
  45. FOREACH(var ${res})
  46. FILE(APPEND "${RESULT_FILE}" "INCLUDE_DIRECTORY: ${var}\n")
  47. ENDFOREACH(var)
  48. GET_DIRECTORY_PROPERTY(res LINK_DIRECTORIES)
  49. FOREACH(var ${res})
  50. FILE(APPEND "${RESULT_FILE}" "LINK_DIRECTORIES: ${var}\n")
  51. ENDFOREACH(var)
  52. GET_DIRECTORY_PROPERTY(res INCLUDE_REGULAR_EXPRESSION)
  53. FILE(APPEND "${RESULT_FILE}" "INCLUDE_REGULAR_EXPRESSION: ${res}\n")
  54. # include other files if they are present, such as when run from within the
  55. # binary tree
  56. MACRO(DUMP_FILE THE_FILE)
  57. IF (EXISTS "${THE_FILE}")
  58. FILE(APPEND "${RESULT_FILE}"
  59. "\n=================================================================\n")
  60. FILE(APPEND "${RESULT_FILE}"
  61. "=== ${THE_FILE}\n")
  62. FILE(APPEND "${RESULT_FILE}"
  63. "=================================================================\n")
  64. FILE(READ "${THE_FILE}" FILE_CONTENTS LIMIT 50000)
  65. FILE(APPEND "${RESULT_FILE}" "${FILE_CONTENTS}")
  66. ENDIF (EXISTS "${THE_FILE}")
  67. ENDMACRO(DUMP_FILE)
  68. DUMP_FILE("../CMakeCache.txt")
  69. DUMP_FILE("../CMakeFiles/CMakeOutput.log")
  70. DUMP_FILE("../CMakeFiles/CMakeError.log")
  71. DUMP_FILE("../CMakeFiles/CMakeSystem.cmake")
  72. FOREACH (EXTRA_FILE ${EXTRA_DUMP_FILES})
  73. DUMP_FILE("${EXTRA_FILE}")
  74. ENDFOREACH (EXTRA_FILE)