summaryrefslogtreecommitdiff
path: root/src/ipa/raspberrypi/data/meson.build
blob: b163a052f57c0706dc497c66b32f04695f342273 (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
# SPDX-License-Identifier: CC0-1.0

conf_files = files([
    'imx219.json',
    'imx219_noir.json',
    'imx290.json',
    'imx296.json',
    'imx296_mono.json',
    'imx378.json',
    'imx477.json',
    'imx477_noir.json',
    'imx477_scientific.json',
    'imx519.json',
    'imx708.json',
    'imx708_noir.json',
    'imx708_wide.json',
    'imx708_wide_noir.json',
    'ov5647.json',
    'ov5647_noir.json',
    'ov9281_mono.json',
    'se327m12.json',
    'uncalibrated.json',
])

install_data(conf_files,
             install_dir : ipa_data_dir / 'raspberrypi')
d='n7' href='#n7'>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 84 85 86 87 88 89 90
# SPDX-License-Identifier: CC0-1.0

doc_install_dir = 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.project_source_root())
    cdata.set('TOP_BUILDDIR', meson.project_build_root())

    doxyfile = configure_file(input : 'Doxyfile.in',
                              output : 'Doxyfile',
                              configuration : cdata)

    doxygen_input = [
        doxyfile,
        libcamera_base_headers,
        libcamera_base_sources,
        libcamera_internal_headers,
        libcamera_ipa_headers,
        libcamera_ipa_interfaces,
        libcamera_public_headers,
        libcamera_sources,
        libipa_headers,
        libipa_sources,
    ]

    if is_variable('ipu3_ipa_sources')
        doxygen_input += [ipu3_ipa_sources]
    endif

    custom_target('doxygen',
                  input : doxygen_input,
                  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 = [
        'coding-style.rst',
        'conf.py',
        'contributing.rst',
        'docs.rst',
        'environment_variables.rst',
        'guides/application-developer.rst',
        'guides/introduction.rst',
        'guides/ipa.rst',
        'guides/pipeline-handler.rst',
        'guides/tracing.rst',
        'index.rst',
        'lens_driver_requirements.rst',
        'sensor_driver_requirements.rst',
       '../README.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