diff options
author | Emanoil Kotsev <deloptes@gmail.com> | 2025-06-25 20:25:49 +0000 |
---|---|---|
committer | Emanoil Kotsev <deloptes@gmail.com> | 2025-07-03 23:24:35 +0000 |
commit | 021dbc78753ad0b4905dd6de53250a10a836ad99 (patch) | |
tree | cd2ed00509797e133f989808031712581ebe4b89 | |
parent | 5b4685c0df85649d6d14f46ef3e3286cdb308fa5 (diff) | |
download | tdemultimedia-feat/apidocs.tar.gz tdemultimedia-feat/apidocs.zip |
Generating apidocs with the new macro tde_add_project_apidocs()feat/apidocs
Signed-off-by: Emanoil Kotsev <deloptes@gmail.com>
-rw-r--r-- | CMakeLists.txt | 40 | ||||
-rw-r--r-- | kmix/kmix.Doxyfile.cmake | 6 | ||||
-rw-r--r-- | krec/krec.Doxyfile.cmake | 6 | ||||
-rw-r--r-- | mpeglib/mpeglib.Doxyfile.cmake | 25 | ||||
-rw-r--r-- | tdemultimedia.doxygen.template | 257 |
5 files changed, 302 insertions, 32 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 6e27d43a..0f0f5f77 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -87,6 +87,7 @@ option( BUILD_NOATUN "Build noatun player" ${BUILD_ALL} ) option( BUILD_TDEFILE_PLUGINS "Build tdefile plugins" ${BUILD_ALL} ) option( BUILD_TDEIOSLAVE "Build tdeio slave plugins" ${BUILD_ALL} ) option( BUILD_TDEMID "Build tdemid" ${BUILD_ALL} ) +option( BUILD_APIDOX "Build documentation for developers" ${BUILD_ALL} ) ##### configure checks ########################## @@ -164,36 +165,11 @@ tde_conditional_add_subdirectory( BUILD_TDEMID tdemid ) configure_file( config.h.cmake config.h @ONLY ) +##### build apidox ######################## -##### add apidox targets ############ - -add_custom_target( apidox - COMMAND ${CMAKE_COMMAND} -E env - "TQTDOCDIR=/usr/share/tqt3/doc/html" - "DOXDATA=${HTML_INSTALL_DIR}/en/common" - ${CMAKE_SOURCE_DIR}/admin/doxygen.sh - --no-modulename - ${CMAKE_SOURCE_DIR} - COMMAND - find ${CMAKE_BINARY_DIR}/apidocs -name '*.html' | - xargs -r sed -i 's|${CMAKE_BINARY_DIR}/apidocs|${HTML_INSTALL_DIR}/en/${PROJECT_NAME}-apidocs|g' - COMMAND - find ${CMAKE_BINARY_DIR}/apidocs -name '*.tag' | - xargs -r sed -i 's|${CMAKE_SOURCE_DIR}/|${PROJECT_NAME}/|g' - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} -) - -add_custom_target( install-apidox - COMMAND ${CMAKE_COMMAND} -E echo Apidox installed in ${HTML_INSTALL_DIR}/en/${PROJECT_NAME}-apidocs -) - -install( CODE " - if( EXISTS ${CMAKE_BINARY_DIR}/apidocs ) - file( - INSTALL ${CMAKE_BINARY_DIR}/apidocs/ - DESTINATION ${HTML_INSTALL_DIR}/en/${PROJECT_NAME}-apidocs - PATTERN doxygen_sqlite3.db EXCLUDE - PATTERN installdox-slow EXCLUDE - ) - endif()" -) +if( BUILD_APIDOX ) + make_directory(${CMAKE_BINARY_DIR}/${PROJECT_NAME}-apidocs/kmix) + make_directory(${CMAKE_BINARY_DIR}/${PROJECT_NAME}-apidocs/krec) + make_directory(${CMAKE_BINARY_DIR}/${PROJECT_NAME}-apidocs/mpeglib) + tde_add_project_apidocs() +endif() diff --git a/kmix/kmix.Doxyfile.cmake b/kmix/kmix.Doxyfile.cmake new file mode 100644 index 00000000..846a7fa6 --- /dev/null +++ b/kmix/kmix.Doxyfile.cmake @@ -0,0 +1,6 @@ +@INCLUDE = ${PROJECT_SOURCE_DIR}/tdemultimedia.doxygen.template +#overwrite +PROJECT_NAME = tdemultimedia-kmix +PROJECT_NUMBER = 1.0 +OUTPUT_DIRECTORY = ${APIDOX_OUTPUT_DIR}/kmix +INPUT = ${PROJECT_SOURCE_DIR}/kmix diff --git a/krec/krec.Doxyfile.cmake b/krec/krec.Doxyfile.cmake new file mode 100644 index 00000000..04da33a3 --- /dev/null +++ b/krec/krec.Doxyfile.cmake @@ -0,0 +1,6 @@ +@INCLUDE = ${PROJECT_SOURCE_DIR}/tdemultimedia.doxygen.template +#overwrite +PROJECT_NAME = tdemultimedia-krec +PROJECT_NUMBER = 1.0 +OUTPUT_DIRECTORY = ${APIDOX_OUTPUT_DIR}/krec +INPUT = ${PROJECT_SOURCE_DIR}/krec diff --git a/mpeglib/mpeglib.Doxyfile.cmake b/mpeglib/mpeglib.Doxyfile.cmake new file mode 100644 index 00000000..b9dac30a --- /dev/null +++ b/mpeglib/mpeglib.Doxyfile.cmake @@ -0,0 +1,25 @@ +@INCLUDE = ${PROJECT_SOURCE_DIR}/tdemultimedia.doxygen.template +#overwrite +PROJECT_NAME = tdemultimedia-mpeglib +PROJECT_NUMBER = ${MPEGLIB_VERSION} +OUTPUT_DIRECTORY = ${APIDOX_OUTPUT_DIR}/mpeglib +INPUT = ${PROJECT_SOURCE_DIR}/mpeglib/lib/util \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/util/mmx \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/util/audio \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/util/render \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/util/render/sdl \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/util/render/dither2YUV \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/util/render/dither \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/util/render/x11 \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/util/abstract \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/util/file \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/frame \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/input \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/mpegplay \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/decoder \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/output \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/tplay \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/mpgplayer \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/yuv \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/splay \ + ${PROJECT_SOURCE_DIR}/mpeglib/lib/oggvorbis diff --git a/tdemultimedia.doxygen.template b/tdemultimedia.doxygen.template new file mode 100644 index 00000000..f5b8f8cd --- /dev/null +++ b/tdemultimedia.doxygen.template @@ -0,0 +1,257 @@ +DOXYFILE_ENCODING = UTF-8 +PROJECT_NAME = ${APIDOX_PROJECT_NAME} +PROJECT_NUMBER = 1.0 +OUTPUT_DIRECTORY = ${APIDOX_OUTPUT_DIRECTORY} +CREATE_SUBDIRS = NO +OUTPUT_LANGUAGE = English +BRIEF_MEMBER_DESC = NO +REPEAT_BRIEF = YES +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the +ALWAYS_DETAILED_SEC = NO +INLINE_INHERITED_MEMB = NO +FULL_PATH_NAMES = NO +STRIP_FROM_PATH = /Applications/ +STRIP_FROM_INC_PATH = +SHORT_NAMES = NO +JAVADOC_AUTOBRIEF = NO +QT_AUTOBRIEF = NO +MULTILINE_CPP_IS_BRIEF = NO +INHERIT_DOCS = YES +SEPARATE_MEMBER_PAGES = NO +TAB_SIZE = 2 +ALIASES = +OPTIMIZE_OUTPUT_FOR_C = NO +OPTIMIZE_OUTPUT_JAVA = NO +OPTIMIZE_FOR_FORTRAN = NO +OPTIMIZE_OUTPUT_VHDL = NO +EXTENSION_MAPPING = +BUILTIN_STL_SUPPORT = NO +CPP_CLI_SUPPORT = NO +SIP_SUPPORT = NO +IDL_PROPERTY_SUPPORT = YES +DISTRIBUTE_GROUP_DOC = NO +SUBGROUPING = YES +TYPEDEF_HIDES_STRUCT = NO +SYMBOL_CACHE_SIZE = 0 +EXTRACT_ALL = YES +EXTRACT_PRIVATE = YES +EXTRACT_STATIC = YES +EXTRACT_LOCAL_CLASSES = YES +EXTRACT_LOCAL_METHODS = NO +EXTRACT_ANON_NSPACES = NO +HIDE_UNDOC_MEMBERS = NO +HIDE_UNDOC_CLASSES = NO +HIDE_FRIEND_COMPOUNDS = NO +HIDE_IN_BODY_DOCS = NO +INTERNAL_DOCS = NO +CASE_SENSE_NAMES = NO +HIDE_SCOPE_NAMES = NO +SHOW_INCLUDE_FILES = YES +INLINE_INFO = YES +SORT_MEMBER_DOCS = YES +SORT_BRIEF_DOCS = NO +SORT_MEMBERS_CTORS_1ST = NO +SORT_GROUP_NAMES = NO +SORT_BY_SCOPE_NAME = NO +GENERATE_TODOLIST = YES +GENERATE_TESTLIST = YES +GENERATE_BUGLIST = YES +GENERATE_DEPRECATEDLIST= YES +ENABLED_SECTIONS = +MAX_INITIALIZER_LINES = 30 +SHOW_USED_FILES = YES +SHOW_DIRECTORIES = NO +SHOW_FILES = YES +SHOW_NAMESPACES = YES +FILE_VERSION_FILTER = +LAYOUT_FILE = +QUIET = NO +WARNINGS = YES +WARN_IF_UNDOCUMENTED = YES +WARN_IF_DOC_ERROR = YES +WARN_NO_PARAMDOC = NO +WARN_FORMAT = "$file:$line: $text" +WARN_LOGFILE = +INPUT = ${APIDOX_SOURCE_DIRECTORY} +INPUT_ENCODING = UTF-8 +FILE_PATTERNS = *.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.d \ + *.java \ + *.ii \ + *.ixx \ + *.ipp \ + *.i++ \ + *.inl \ + *.h \ + *.hh \ + *.hxx \ + *.hpp \ + *.h++ \ + *.idl \ + *.odl \ + *.cs \ + *.php \ + *.php3 \ + *.inc \ + *.m \ + *.mm \ + *.dox \ + *.py \ + *.C \ + *.CC \ + *.C++ \ + *.II \ + *.I++ \ + *.H \ + *.HH \ + *.H++ \ + *.CS \ + *.PHP \ + *.PHP3 \ + *.M \ + *.MM \ + *.PY +RECURSIVE = NO +EXCLUDE = +EXCLUDE_SYMLINKS = NO +EXCLUDE_PATTERNS = +EXCLUDE_SYMBOLS = +EXAMPLE_PATH = +EXAMPLE_PATTERNS = * +EXAMPLE_RECURSIVE = NO +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = +FILTER_SOURCE_FILES = NO +SOURCE_BROWSER = YES +INLINE_SOURCES = YES +STRIP_CODE_COMMENTS = YES +REFERENCED_BY_RELATION = NO +REFERENCES_RELATION = YES +REFERENCES_LINK_SOURCE = YES +USE_HTAGS = NO +VERBATIM_HEADERS = YES +ALPHABETICAL_INDEX = YES +COLS_IN_ALPHA_INDEX = 5 +IGNORE_PREFIX = +GENERATE_HTML = YES +HTML_OUTPUT = html +HTML_FILE_EXTENSION = .html +HTML_HEADER = +HTML_FOOTER = +HTML_STYLESHEET = +HTML_ALIGN_MEMBERS = YES +HTML_DYNAMIC_SECTIONS = YES +GENERATE_DOCSET = NO +DOCSET_FEEDNAME = "Doxygen generated docs" +DOCSET_BUNDLE_ID = org.doxygen.Project +GENERATE_HTMLHELP = NO +CHM_FILE = +HHC_LOCATION = +GENERATE_CHI = NO +CHM_INDEX_ENCODING = +BINARY_TOC = NO +TOC_EXPAND = NO +GENERATE_QHP = NO +QCH_FILE = +QHP_NAMESPACE = +QHP_VIRTUAL_FOLDER = doc +QHP_CUST_FILTER_NAME = +QHP_CUST_FILTER_ATTRS = +QHP_SECT_FILTER_ATTRS = +QHG_LOCATION = +DISABLE_INDEX = NO +ENUM_VALUES_PER_LINE = 4 +GENERATE_TREEVIEW = YES +USE_INLINE_TREES = NO +TREEVIEW_WIDTH = 250 +FORMULA_FONTSIZE = 12 +SEARCHENGINE = YES +GENERATE_LATEX = NO +LATEX_OUTPUT = latex +LATEX_CMD_NAME = latex +MAKEINDEX_CMD_NAME = makeindex +COMPACT_LATEX = NO +PAPER_TYPE = a4wide +EXTRA_PACKAGES = +LATEX_HEADER = +PDF_HYPERLINKS = NO +USE_PDFLATEX = NO +LATEX_BATCHMODE = NO +LATEX_HIDE_INDICES = NO +LATEX_SOURCE_CODE = NO +GENERATE_RTF = NO +RTF_OUTPUT = rtf +COMPACT_RTF = NO +RTF_HYPERLINKS = NO +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = +GENERATE_MAN = NO +MAN_OUTPUT = man +MAN_EXTENSION = .3 +MAN_LINKS = NO +GENERATE_XML = NO +XML_OUTPUT = xml +XML_SCHEMA = +XML_DTD = +XML_PROGRAMLISTING = YES +GENERATE_AUTOGEN_DEF = NO +GENERATE_PERLMOD = NO +PERLMOD_LATEX = NO +PERLMOD_PRETTY = YES +PERLMOD_MAKEVAR_PREFIX = +ENABLE_PREPROCESSING = YES +MACRO_EXPANSION = NO +EXPAND_ONLY_PREDEF = NO +SEARCH_INCLUDES = YES +INCLUDE_PATH = +INCLUDE_FILE_PATTERNS = +PREDEFINED = BUILDING_DOCS +EXPAND_AS_DEFINED = +SKIP_FUNCTION_MACROS = YES +TAGFILES = +GENERATE_TAGFILE = +ALLEXTERNALS = NO +EXTERNAL_GROUPS = YES +PERL_PATH = /usr/bin/perl +CLASS_DIAGRAMS = YES +MSCGEN_PATH = +HIDE_UNDOC_RELATIONS = YES +HAVE_DOT = YES +DOT_FONTNAME = FreeSans +DOT_FONTSIZE = 10 +DOT_FONTPATH = +CLASS_GRAPH = YES +COLLABORATION_GRAPH = YES +GROUP_GRAPHS = YES +UML_LOOK = YES +TEMPLATE_RELATIONS = YES +INCLUDE_GRAPH = YES +INCLUDED_BY_GRAPH = YES +CALL_GRAPH = YES +CALLER_GRAPH = YES +GRAPHICAL_HIERARCHY = YES +DIRECTORY_GRAPH = YES +DOT_IMAGE_FORMAT = png +DOT_PATH = +DOTFILE_DIRS = +DOT_GRAPH_MAX_NODES = 50 +MAX_DOT_GRAPH_DEPTH = 1000 +DOT_TRANSPARENT = NO +DOT_MULTI_TARGETS = NO +GENERATE_LEGEND = YES +DOT_CLEANUP = YES |