<commit_before># This CMake file will add doc target for convenient documentation generation.
#
# Additional features are supported:
#   * dot = for automatically generated UML diagrams (class, include, caller, call, collaboration)
#   * PlantUML = for easy generation of custom diagrams

# Helper functions
macro(path_linux_to_win MsysPath ResultingPath)
  string(REGEX REPLACE "^/([a-zA-Z])/" "\\1:/" ${ResultingPath} "${MsysPath}")
endmacro()
macro(path_win_to_linux MsysPath ResultingPath)
  string(REGEX REPLACE "^([a-zA-Z]):/" "/\\1/" ${ResultingPath} "${MsysPath}")
endmacro()

# enable if doxygen found
find_package(Doxygen 1.8.0)
message(STATUS "Can build doc?                            ${DOXYGEN_FOUND}")
if(DOXYGEN_FOUND)
    # Search for plantUML for creating UML diagrams from doxygen
    find_program(PLANT_UML_PATH plantuml.jar PATH_SUFFIXES PlantUML plantuml Plantuml
        PATHS /usr/share /usr/local/share/ /usr/local/bin c/Program\ Files* )
    if(NOT PLANT_UML_PATH)
        message(WARNING "Looking for PlantUML - not found, some UML diagrams will not be generated via doxygen.")
    else()
        message(STATUS "  + PlantUML - for custom UML             YES ")
    endif()

    #Search for DOT for autogenerated UML diagrams from doxygen
    find_program(DOT_PATH dot PATH_SUFFIXES graphviz2.38/bin graphviz/bin)
    if(NOT DOT_PATH)
        message(WARNING "Looking for DOT (Graphviz) - not found, some UML diagrams will not be generated via doxygen.")
    else()
        message(STATUS "  + Graphviz/Dot - for generated graphs   YES ")
    endif()
<commit_msg>Allows the detection of plantuml on all systems and package manager<commit_after># This CMake file will add doc target for convenient documentation generation.
#
# Additional features are supported:
#   * dot = for automatically generated UML diagrams (class, include, caller, call, collaboration)
#   * PlantUML = for easy generation of custom diagrams

# Helper functions
macro(path_linux_to_win MsysPath ResultingPath)
  string(REGEX REPLACE "^/([a-zA-Z])/" "\\1:/" ${ResultingPath} "${MsysPath}")
endmacro()
macro(path_win_to_linux MsysPath ResultingPath)
  string(REGEX REPLACE "^([a-zA-Z]):/" "/\\1/" ${ResultingPath} "${MsysPath}")
endmacro()

# enable if doxygen found
find_package(Doxygen 1.8.0)
message(STATUS "Can build doc?                            ${DOXYGEN_FOUND}")
if(DOXYGEN_FOUND)
    # Search for plantUML for creating UML diagrams from doxygen
    find_program(PLANT_UML_PATH NAMES plantuml.jar plantuml PATH_SUFFIXES PlantUML plantuml Plantuml
        PATHS /usr/share /usr/local/share/ /usr/local/bin /opt/local/bin  c/Program\ Files* )
    if(NOT PLANT_UML_PATH)
        message(WARNING "Looking for PlantUML - not found, some UML diagrams will not be generated via doxygen.")
    else()
        message(STATUS "  + PlantUML - for custom UML             YES ")
    endif()

    #Search for DOT for autogenerated UML diagrams from doxygen
    find_program(DOT_PATH dot PATH_SUFFIXES graphviz2.38/bin graphviz/bin)
    if(NOT DOT_PATH)
        message(WARNING "Looking for DOT (Graphviz) - not found, some UML diagrams will not be generated via doxygen.")
    else()
        message(STATUS "  + Graphviz/Dot - for generated graphs   YES ")
    endif()

{'fraction_non_alphanumeric': 0.099601593625498, 'fraction_numerical': 0.004903463070793748, 'mean_word_length': 3.558659217877095, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7416695', 'n_tokens_mistral': 1073, 'n_tokens_neox': 1013, 'n_words': 321}