]> git.ipfire.org Git - thirdparty/systemd.git/blob - tools/meson-check-api-docs.sh
make-directive-index: allow variablelist to specify an element to index
[thirdparty/systemd.git] / tools / meson-check-api-docs.sh
1 #!/bin/sh
2 set -eu
3
4 sd_good=0
5 sd_total=0
6 udev_good=0
7 udev_total=0
8
9 deprecated="
10 -e sd_bus_try_close
11 -e sd_bus_process_priority
12 -e sd_bus_message_get_priority
13 -e sd_bus_message_set_priority
14 -e sd_seat_can_multi_session
15 "
16
17 for symbol in `nm -g --defined-only "$@" | grep " T " | cut -d" " -f3 | grep -wv $deprecated | sort -u` ; do
18 if test -f ${MESON_BUILD_ROOT}/man/$symbol.3 ; then
19 echo "✓ Symbol $symbol() is documented."
20 good=1
21 else
22 printf " \x1b[1;31mSymbol $symbol() lacks documentation.\x1b[0m\n"
23 good=0
24 fi
25
26 case $symbol in
27 sd_*)
28 ((sd_good+=good))
29 ((sd_total+=1))
30 ;;
31 udev_*)
32 ((udev_good+=good))
33 ((udev_total+=1))
34 ;;
35 *)
36 echo 'unknown symbol prefix'
37 exit 1
38 esac
39 done
40
41 echo "libsystemd: $sd_good/$sd_total libudev: $udev_good/$udev_total"