CMakeGraphVizOptions.cmake 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. # Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. # file Copyright.txt or https://cmake.org/licensing for details.
  3. #.rst:
  4. # CMakeGraphVizOptions
  5. # --------------------
  6. #
  7. # The builtin graphviz support of CMake.
  8. #
  9. # Variables specific to the graphviz support
  10. # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  11. #
  12. # CMake
  13. # can generate graphviz files, showing the dependencies between the
  14. # targets in a project and also external libraries which are linked
  15. # against. When CMake is run with the --graphviz=foo option, it will
  16. # produce
  17. #
  18. # * a foo.dot file showing all dependencies in the project
  19. # * a foo.dot.<target> file for each target, file showing on which other targets the respective target depends
  20. # * a foo.dot.<target>.dependers file, showing which other targets depend on the respective target
  21. #
  22. # This can result in huge graphs. Using the file
  23. # CMakeGraphVizOptions.cmake the look and content of the generated
  24. # graphs can be influenced. This file is searched first in
  25. # ${CMAKE_BINARY_DIR} and then in ${CMAKE_SOURCE_DIR}. If found, it is
  26. # read and the variables set in it are used to adjust options for the
  27. # generated graphviz files.
  28. #
  29. # .. variable:: GRAPHVIZ_GRAPH_TYPE
  30. #
  31. # The graph type
  32. #
  33. # * Mandatory : NO
  34. # * Default : "digraph"
  35. #
  36. # .. variable:: GRAPHVIZ_GRAPH_NAME
  37. #
  38. # The graph name.
  39. #
  40. # * Mandatory : NO
  41. # * Default : "GG"
  42. #
  43. # .. variable:: GRAPHVIZ_GRAPH_HEADER
  44. #
  45. # The header written at the top of the graphviz file.
  46. #
  47. # * Mandatory : NO
  48. # * Default : "node [n fontsize = "12"];"
  49. #
  50. # .. variable:: GRAPHVIZ_NODE_PREFIX
  51. #
  52. # The prefix for each node in the graphviz file.
  53. #
  54. # * Mandatory : NO
  55. # * Default : "node"
  56. #
  57. # .. variable:: GRAPHVIZ_EXECUTABLES
  58. #
  59. # Set this to FALSE to exclude executables from the generated graphs.
  60. #
  61. # * Mandatory : NO
  62. # * Default : TRUE
  63. #
  64. # .. variable:: GRAPHVIZ_STATIC_LIBS
  65. #
  66. # Set this to FALSE to exclude static libraries from the generated graphs.
  67. #
  68. # * Mandatory : NO
  69. # * Default : TRUE
  70. #
  71. # .. variable:: GRAPHVIZ_SHARED_LIBS
  72. #
  73. # Set this to FALSE to exclude shared libraries from the generated graphs.
  74. #
  75. # * Mandatory : NO
  76. # * Default : TRUE
  77. #
  78. # .. variable:: GRAPHVIZ_MODULE_LIBS
  79. #
  80. # Set this to FALSE to exclude module libraries from the generated graphs.
  81. #
  82. # * Mandatory : NO
  83. # * Default : TRUE
  84. #
  85. # .. variable:: GRAPHVIZ_EXTERNAL_LIBS
  86. #
  87. # Set this to FALSE to exclude external libraries from the generated graphs.
  88. #
  89. # * Mandatory : NO
  90. # * Default : TRUE
  91. #
  92. # .. variable:: GRAPHVIZ_IGNORE_TARGETS
  93. #
  94. # A list of regular expressions for ignoring targets.
  95. #
  96. # * Mandatory : NO
  97. # * Default : empty
  98. #
  99. # .. variable:: GRAPHVIZ_GENERATE_PER_TARGET
  100. #
  101. # Set this to FALSE to exclude per target graphs ``foo.dot.<target>``.
  102. #
  103. # * Mandatory : NO
  104. # * Default : TRUE
  105. #
  106. # .. variable:: GRAPHVIZ_GENERATE_DEPENDERS
  107. #
  108. # Set this to FALSE to exclude depender graphs ``foo.dot.<target>.dependers``.
  109. #
  110. # * Mandatory : NO
  111. # * Default : TRUE