# SPDX-License-Identifier: CC0-1.0 doc_install_dir = join_paths(get_option('datadir'), 'doc', 'libcamera-@0@'.format(libcamera_version)) # # Doxygen # doxygen = find_program('doxygen', required : get_option('documentation')) dot = find_program('dot', required : get_option('documentation')) if doxygen.found() and dot.found() cdata = configuration_data() cdata.set('VERSION', 'v@0@'.format(libcamera_git_version)) cdata.set('TOP_SRCDIR', meson.source_root()) cdata.set('TOP_BUILDDIR', meson.build_root()) doxyfile = configure_file(input : 'Doxyfile.in', output : 'Doxyfile', configuration : cdata) custom_target('doxygen', input : [ doxyfile, libcamera_internal_headers, libcamera_ipa_headers, libcamera_public_headers, libcamera_sources, libipa_headers, libipa_sources, ], output : 'api-html', command : [doxygen, doxyfile], install : true, install_dir : doc_install_dir) endif # # Sphinx # sphinx = find_program('sphinx-build-3', required : false) if not sphinx.found() sphinx = find_program('sphinx-build', required : get_option('documentation')) endif if sphinx.found() docs_sources = [ '../README.rst', 'coding-style.rst', 'conf.py', 'contributing.rst', 'docs.rst', 'environment_variables.rst', 'index.rst', 'guides/introduction.rst', 'guides/application-developer.rst', 'guides/pipeline-handler.rst', 'guides/tracing.rst', ] release = 'release=v' + libcamera_git_version custom_target('documentation', command : [sphinx, '-D', release, '-q', '-W', '-b', 'html', meson.current_source_dir(), '@OUTPUT@'], input : docs_sources, output : 'html', build_by_default : true, install : true, install_dir : doc_install_dir) custom_target('documentation-linkcheck', command: [sphinx, '-W', '-b', 'linkcheck', meson.current_source_dir(), '@OUTPUT@'], build_always_stale: true, input: docs_sources, output: 'linkcheck') endif class='path'>path: root/Documentation/Doxyfile.in
blob: 88dfcddaebf6e1ae6d8e84d72bdc8260c6dc005d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# SPDX-License-Identifier: CC-BY-SA-4.0
# Doxyfile 1.9.5

PROJECT_NAME           = "libcamera"
PROJECT_NUMBER         = "@VERSION@"
PROJECT_BRIEF          = "Supporting cameras in Linux since 2019"

OUTPUT_DIRECTORY       = Documentation

STRIP_FROM_PATH        = "@TOP_SRCDIR@"

ALIASES                = "context=\xrefitem context \"Thread Safety\" \"Thread Safety\"" \
                         "threadbound=\ref thread-bound \"thread-bound\"" \
                         "threadsafe=\ref thread-safe \"thread-safe\""

EXTENSION_MAPPING      = h=C++

TOC_INCLUDE_HEADINGS   = 0

CASE_SENSE_NAMES       = YES

QUIET                  = YES

INPUT                  = "@TOP_SRCDIR@/include/libcamera" \
                         "@TOP_SRCDIR@/src/ipa/ipu3" \
                         "@TOP_SRCDIR@/src/ipa/libipa" \
                         "@TOP_SRCDIR@/src/libcamera" \
                         "@TOP_BUILDDIR@/include/libcamera" \
                         "@TOP_BUILDDIR@/src/libcamera"

FILE_PATTERNS          = *.c \
                         *.cpp \
                         *.h

RECURSIVE              = YES

EXCLUDE                = @TOP_SRCDIR@/include/libcamera/base/span.h \
                         @TOP_SRCDIR@/include/libcamera/internal/device_enumerator_sysfs.h \
                         @TOP_SRCDIR@/include/libcamera/internal/device_enumerator_udev.h \
                         @TOP_SRCDIR@/include/libcamera/internal/ipc_pipe_unixsocket.h \
                         @TOP_SRCDIR@/src/libcamera/device_enumerator_sysfs.cpp \
                         @TOP_SRCDIR@/src/libcamera/device_enumerator_udev.cpp \
                         @TOP_SRCDIR@/src/libcamera/ipc_pipe_unixsocket.cpp \
                         @TOP_SRCDIR@/src/libcamera/pipeline/ \
                         @TOP_SRCDIR@/src/libcamera/tracepoints.cpp \
                         @TOP_BUILDDIR@/include/libcamera/internal/tracepoints.h \
                         @TOP_BUILDDIR@/src/libcamera/proxy/

EXCLUDE_PATTERNS       = @TOP_BUILDDIR@/include/libcamera/ipa/*_serializer.h \
                         @TOP_BUILDDIR@/include/libcamera/ipa/*_proxy.h \
                         @TOP_BUILDDIR@/include/libcamera/ipa/ipu3_*.h \
                         @TOP_BUILDDIR@/include/libcamera/ipa/raspberrypi_*.h \
                         @TOP_BUILDDIR@/include/libcamera/ipa/rkisp1_*.h \
                         @TOP_BUILDDIR@/include/libcamera/ipa/vimc_*.h

EXCLUDE_SYMBOLS        = libcamera::BoundMethodArgs \
                         libcamera::BoundMethodBase \
                         libcamera::BoundMethodFunctor \
                         libcamera::BoundMethodMember \
                         libcamera::BoundMethodPack \
                         libcamera::BoundMethodPackBase \
                         libcamera::BoundMethodStatic \
                         libcamera::CameraManager::Private \
                         libcamera::SignalBase \
                         libcamera::ipa::AlgorithmFactoryBase \
                         *::details \
                         std::*

HTML_OUTPUT            = api-html

GENERATE_LATEX         = NO

MACRO_EXPANSION        = YES
EXPAND_ONLY_PREDEF     = YES

INCLUDE_PATH           = "@TOP_SRCDIR@/include/libcamera"
INCLUDE_FILE_PATTERNS  = *.h

PREDEFINED             = __DOXYGEN__ \
                         __cplusplus \
                         __attribute__(x)=

HAVE_DOT               = YES