From 9fa51cdc3b94e4ed4818e6bd8d82008bc0c888a1 Mon Sep 17 00:00:00 2001 From: Paolo Andreetto Date: Wed, 23 Jan 2019 14:02:13 +0100 Subject: [PATCH] Target for doxygen --- CMake/uLibGenerateDoc.cmake | 84 +++++++++++++++++++++++++++++++++++++ CMakeLists.txt | 2 +- 2 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 CMake/uLibGenerateDoc.cmake diff --git a/CMake/uLibGenerateDoc.cmake b/CMake/uLibGenerateDoc.cmake new file mode 100644 index 0000000..7328d10 --- /dev/null +++ b/CMake/uLibGenerateDoc.cmake @@ -0,0 +1,84 @@ +file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg + "PROJECT_NAME=${CMAKE_PROJECT_NAME}-${PACKAGE_VERSION}\n" + "OUTPUT_DIRECTORY=${CMAKE_CURRENT_BINARY_DIR}\n" + "CREATE_SUBDIRS=NO\n" + "OUTPUT_LANGUAGE=English\n" + "BRIEF_MEMBER_DESC=YES\n" + "REPEAT_BRIEF=YES\n" + "ALWAYS_DETAILED_SEC=NO\n" + "INLINE_INHERITED_MEMB=NO\n" + "STRIP_FROM_INC_PATH=${CMAKE_CURRENT_SOURCE_DIR}/src\n" + "FULL_PATH_NAMES=YES\n" + "STRIP_FROM_PATH=${CMAKE_CURRENT_SOURCE_DIR}/src\n" + "SHORT_NAMES=NO\n" + "MULTILINE_CPP_IS_BRIEF=NO\n" + "INHERIT_DOCS=YES\n" + "DISTRIBUTE_GROUP_DOC=NO\n" + "OPTIMIZE_OUTPUT_FOR_C=YES\n" + "SUBGROUPING=YES\n" + "EXTRACT_ALL=YES\n" + "EXTRACT_PRIVATE=NO\n" + "EXTRACT_STATIC=NO\n" + "EXTRACT_LOCAL_CLASSES=YES\n" + "EXTRACT_LOCAL_METHODS=NO\n" + "HIDE_UNDOC_MEMBERS=NO\n" + "HIDE_UNDOC_CLASSES=NO\n" + "HIDE_FRIEND_COMPOUNDS=NO\n" + "HIDE_IN_BODY_DOCS=NO\n" + "INTERNAL_DOCS=NO\n" + "CASE_SENSE_NAMES=NO\n" + "HIDE_SCOPE_NAMES=NO\n" + "SHOW_INCLUDE_FILES=YES\n" + "INLINE_INFO=YES\n" + "SORT_MEMBER_DOCS=YES\n" + "SORT_BRIEF_DOCS=NO\n" + "SORT_BY_SCOPE_NAME=NO\n" + "GENERATE_TODOLIST=YES\n" + "GENERATE_TESTLIST=YES\n" + "GENERATE_BUGLIST=YES\n" + "GENERATE_DEPRECATEDLIST=YES\n" + "MAX_INITIALIZER_LINES=30\n" + "SHOW_USED_FILES=YES\n" + "QUIET=YES\n" + "WARNINGS=NO\n" + "WARN_IF_UNDOCUMENTED=YES\n" + "WARN_IF_DOC_ERROR=YES\n" + "WARN_FORMAT=\"$file:$line: $text\"\n" + "INPUT=${CMAKE_CURRENT_SOURCE_DIR}/src\n" + "FILE_PATTERNS=*.cpp *.c *.h *.hpp\n" + "RECURSIVE=YES\n" + "EXCLUDE_SYMLINKS=NO\n" + "FILTER_SOURCE_FILES=NO\n" + "SOURCE_BROWSER=NO\n" + "INLINE_SOURCES=NO\n" + "STRIP_CODE_COMMENTS=YES\n" + "REFERENCED_BY_RELATION=YES\n" + "REFERENCES_RELATION=YES\n" + "VERBATIM_HEADERS=YES\n" + "ALPHABETICAL_INDEX=YES\n" + "COLS_IN_ALPHA_INDEX=5\n" + "GENERATE_HTML=YES\n" + "HTML_OUTPUT=html\n" + "HTML_FILE_EXTENSION=.html\n" + "GENERATE_HTMLHELP=NO\n" + "BINARY_TOC=NO\n" + "TOC_EXPAND=NO\n" + "DISABLE_INDEX=NO\n" + "ENUM_VALUES_PER_LINE=4\n" + "GENERATE_TREEVIEW=YES\n" + "TREEVIEW_WIDTH=250\n" + "GENERATE_LATEX=NO\n" + "GENERATE_RTF=NO\n" + "GENERATE_MAN=NO\n" + "GENERATE_XML=NO\n" + "GENERATE_AUTOGEN_DEF=NO\n" + "GENERATE_PERLMOD=NO\n") + +add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/html/index.html + COMMAND doxygen ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg) + +add_custom_target(doxygen ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/html/index.html) + +install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html + DESTINATION usr/share/doc/${PACKAGE_NAME}) + diff --git a/CMakeLists.txt b/CMakeLists.txt index 598951d..5b40ba4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -38,7 +38,7 @@ include(uLibDebugMacro) include(uLibTargetMacros) include(uLibGenerateRMake) include(uLibGenerateRPMS) - +include(uLibGenerateDoc) ## GLOBALS ------------------------------------------------------------------ ##