mirror of
https://gitlab.freedesktop.org/libinput/libinput.git
synced 2026-02-04 21:00:25 +01:00
Switch to using files() for the doxygen input sources
Using files() over a list of hand-constructed paths is the recommended way. But unfortunately doxygen needs its input files as a string list, so we still have to build that list anyway. Still, this way we don't need to hardcode every file with the source root, we just assemble it as we go. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
parent
e972cc9664
commit
d2cd727c9b
1 changed files with 83 additions and 75 deletions
158
meson.build
158
meson.build
|
|
@ -340,91 +340,99 @@ if get_option('documentation')
|
|||
error('Graphviz dot needs to be at least version 2.26 (have @0@)'.format(dot_version))
|
||||
endif
|
||||
|
||||
src_doxygen = [
|
||||
src_doxygen = files(
|
||||
# source files
|
||||
meson.source_root() + '/src/libinput.h',
|
||||
'src/libinput.h',
|
||||
# written docs
|
||||
meson.source_root() + '/doc/absolute-axes.dox',
|
||||
meson.source_root() + '/doc/absolute-coordinate-ranges.dox',
|
||||
meson.source_root() + '/doc/architecture.dox',
|
||||
meson.source_root() + '/doc/building.dox',
|
||||
meson.source_root() + '/doc/button_debouncing.dox',
|
||||
meson.source_root() + '/doc/clickpad-softbuttons.dox',
|
||||
meson.source_root() + '/doc/contributing.dox',
|
||||
meson.source_root() + '/doc/device-configuration-via-udev.dox',
|
||||
meson.source_root() + '/doc/device-quirks.dox',
|
||||
meson.source_root() + '/doc/faqs.dox',
|
||||
meson.source_root() + '/doc/gestures.dox',
|
||||
meson.source_root() + '/doc/middle-button-emulation.dox',
|
||||
meson.source_root() + '/doc/normalization-of-relative-motion.dox',
|
||||
meson.source_root() + '/doc/palm-detection.dox',
|
||||
meson.source_root() + '/doc/page-hierarchy.dox',
|
||||
meson.source_root() + '/doc/pointer-acceleration.dox',
|
||||
meson.source_root() + '/doc/reporting-bugs.dox',
|
||||
meson.source_root() + '/doc/scrolling.dox',
|
||||
meson.source_root() + '/doc/seats.dox',
|
||||
meson.source_root() + '/doc/switches.dox',
|
||||
meson.source_root() + '/doc/t440-support.dox',
|
||||
meson.source_root() + '/doc/tablet-support.dox',
|
||||
meson.source_root() + '/doc/tapping.dox',
|
||||
meson.source_root() + '/doc/test-suite.dox',
|
||||
meson.source_root() + '/doc/timestamps.dox',
|
||||
meson.source_root() + '/doc/tools.dox',
|
||||
meson.source_root() + '/doc/touchpad-jumping-cursors.dox',
|
||||
meson.source_root() + '/doc/touchpad-pressure.dox',
|
||||
meson.source_root() + '/doc/touchpad-jitter.dox',
|
||||
meson.source_root() + '/doc/touchpads.dox',
|
||||
meson.source_root() + '/doc/trackpoints.dox',
|
||||
meson.source_root() + '/doc/what-is-libinput.dox',
|
||||
'doc/absolute-axes.dox',
|
||||
'doc/absolute-coordinate-ranges.dox',
|
||||
'doc/architecture.dox',
|
||||
'doc/building.dox',
|
||||
'doc/button_debouncing.dox',
|
||||
'doc/clickpad-softbuttons.dox',
|
||||
'doc/contributing.dox',
|
||||
'doc/device-configuration-via-udev.dox',
|
||||
'doc/device-quirks.dox',
|
||||
'doc/faqs.dox',
|
||||
'doc/gestures.dox',
|
||||
'doc/middle-button-emulation.dox',
|
||||
'doc/normalization-of-relative-motion.dox',
|
||||
'doc/palm-detection.dox',
|
||||
'doc/page-hierarchy.dox',
|
||||
'doc/pointer-acceleration.dox',
|
||||
'doc/reporting-bugs.dox',
|
||||
'doc/scrolling.dox',
|
||||
'doc/seats.dox',
|
||||
'doc/switches.dox',
|
||||
'doc/t440-support.dox',
|
||||
'doc/tablet-support.dox',
|
||||
'doc/tapping.dox',
|
||||
'doc/test-suite.dox',
|
||||
'doc/timestamps.dox',
|
||||
'doc/tools.dox',
|
||||
'doc/touchpad-jumping-cursors.dox',
|
||||
'doc/touchpad-pressure.dox',
|
||||
'doc/touchpad-jitter.dox',
|
||||
'doc/touchpads.dox',
|
||||
'doc/trackpoints.dox',
|
||||
'doc/what-is-libinput.dox',
|
||||
# dot drawings
|
||||
meson.source_root() + '/doc/dot/seats-sketch.gv',
|
||||
meson.source_root() + '/doc/dot/seats-sketch-libinput.gv',
|
||||
meson.source_root() + '/doc/dot/libinput-stack-wayland.gv',
|
||||
meson.source_root() + '/doc/dot/libinput-stack-xorg.gv',
|
||||
meson.source_root() + '/doc/dot/libinput-stack-gnome.gv',
|
||||
meson.source_root() + '/doc/dot/evemu.gv',
|
||||
'doc/dot/seats-sketch.gv',
|
||||
'doc/dot/seats-sketch-libinput.gv',
|
||||
'doc/dot/libinput-stack-wayland.gv',
|
||||
'doc/dot/libinput-stack-xorg.gv',
|
||||
'doc/dot/libinput-stack-gnome.gv',
|
||||
'doc/dot/evemu.gv',
|
||||
# svgs
|
||||
meson.source_root() + '/doc/svg/button-debouncing-wave-diagram.svg',
|
||||
meson.source_root() + '/doc/svg/button-scrolling.svg',
|
||||
meson.source_root() + '/doc/svg/clickfinger.svg',
|
||||
meson.source_root() + '/doc/svg/clickfinger-distance.svg',
|
||||
meson.source_root() + '/doc/svg/edge-scrolling.svg',
|
||||
meson.source_root() + '/doc/svg/gesture-2fg-ambiguity.svg',
|
||||
meson.source_root() + '/doc/svg/palm-detection.svg',
|
||||
meson.source_root() + '/doc/svg/pinch-gestures.svg',
|
||||
meson.source_root() + '/doc/svg/pinch-gestures-softbuttons.svg',
|
||||
meson.source_root() + '/doc/svg/ptraccel-linear.svg',
|
||||
meson.source_root() + '/doc/svg/ptraccel-low-dpi.svg',
|
||||
meson.source_root() + '/doc/svg/ptraccel-touchpad.svg',
|
||||
meson.source_root() + '/doc/svg/ptraccel-trackpoint.svg',
|
||||
meson.source_root() + '/doc/svg/software-buttons.svg',
|
||||
meson.source_root() + '/doc/svg/swipe-gestures.svg',
|
||||
meson.source_root() + '/doc/svg/tablet-axes.svg',
|
||||
meson.source_root() + '/doc/svg/tablet-cintiq24hd-modes.svg',
|
||||
meson.source_root() + '/doc/svg/tablet-interfaces.svg',
|
||||
meson.source_root() + '/doc/svg/tablet-intuos-modes.svg',
|
||||
meson.source_root() + '/doc/svg/tablet-left-handed.svg',
|
||||
meson.source_root() + '/doc/svg/tablet-out-of-bounds.svg',
|
||||
meson.source_root() + '/doc/svg/tablet.svg',
|
||||
meson.source_root() + '/doc/svg/tap-n-drag.svg',
|
||||
meson.source_root() + '/doc/svg/thumb-detection.svg',
|
||||
meson.source_root() + '/doc/svg/top-software-buttons.svg',
|
||||
meson.source_root() + '/doc/svg/touchscreen-gestures.svg',
|
||||
meson.source_root() + '/doc/svg/twofinger-scrolling.svg',
|
||||
'doc/svg/button-debouncing-wave-diagram.svg',
|
||||
'doc/svg/button-scrolling.svg',
|
||||
'doc/svg/clickfinger.svg',
|
||||
'doc/svg/clickfinger-distance.svg',
|
||||
'doc/svg/edge-scrolling.svg',
|
||||
'doc/svg/gesture-2fg-ambiguity.svg',
|
||||
'doc/svg/palm-detection.svg',
|
||||
'doc/svg/pinch-gestures.svg',
|
||||
'doc/svg/pinch-gestures-softbuttons.svg',
|
||||
'doc/svg/ptraccel-linear.svg',
|
||||
'doc/svg/ptraccel-low-dpi.svg',
|
||||
'doc/svg/ptraccel-touchpad.svg',
|
||||
'doc/svg/ptraccel-trackpoint.svg',
|
||||
'doc/svg/software-buttons.svg',
|
||||
'doc/svg/swipe-gestures.svg',
|
||||
'doc/svg/tablet-axes.svg',
|
||||
'doc/svg/tablet-cintiq24hd-modes.svg',
|
||||
'doc/svg/tablet-interfaces.svg',
|
||||
'doc/svg/tablet-intuos-modes.svg',
|
||||
'doc/svg/tablet-left-handed.svg',
|
||||
'doc/svg/tablet-out-of-bounds.svg',
|
||||
'doc/svg/tablet.svg',
|
||||
'doc/svg/tap-n-drag.svg',
|
||||
'doc/svg/thumb-detection.svg',
|
||||
'doc/svg/top-software-buttons.svg',
|
||||
'doc/svg/touchscreen-gestures.svg',
|
||||
'doc/svg/twofinger-scrolling.svg',
|
||||
# style files
|
||||
meson.source_root() + '/doc/style/header.html',
|
||||
meson.source_root() + '/doc/style/footer.html',
|
||||
meson.source_root() + '/doc/style/customdoxygen.css',
|
||||
meson.source_root() + '/doc/style/bootstrap.css',
|
||||
meson.source_root() + '/doc/style/libinputdoxygen.css',
|
||||
meson.source_root() + '/README.md'
|
||||
]
|
||||
'doc/style/header.html',
|
||||
'doc/style/footer.html',
|
||||
'doc/style/customdoxygen.css',
|
||||
'doc/style/bootstrap.css',
|
||||
'doc/style/libinputdoxygen.css',
|
||||
'README.md'
|
||||
)
|
||||
|
||||
# doxygen expects a space-separated list of input files in its
|
||||
# doxyfile so we build a new list containing all full paths
|
||||
# and merge it with ' '.join() later
|
||||
doxy_input_files = []
|
||||
foreach f : src_doxygen
|
||||
doxy_input_files += [join_paths(meson.source_root(), '@0@'.format(f))]
|
||||
endforeach
|
||||
|
||||
doc_config = configuration_data()
|
||||
doc_config.set('PACKAGE_NAME', meson.project_name())
|
||||
doc_config.set('PACKAGE_VERSION', meson.project_version())
|
||||
doc_config.set('top_srcdir', meson.source_root())
|
||||
doc_config.set('INPUT', ' '.join(src_doxygen))
|
||||
doc_config.set('INPUT', ' '.join(doxy_input_files))
|
||||
|
||||
doxyfile = configure_file(input : 'doc/libinput.doxygen.in',
|
||||
output : 'libinput.doxygen',
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue