]> git.ipfire.org Git - thirdparty/systemd.git/blob - tools/check-api-docs.sh
update TODO
[thirdparty/systemd.git] / tools / 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 -e sd_journal_open_container
16 "
17
18 for symbol in `nm -g --defined-only "$@" | grep " T " | cut -d" " -f3 | grep -wv $deprecated | sort -u` ; do
19 if test -f ${MESON_BUILD_ROOT}/man/$symbol.3 ; then
20 echo "✓ Symbol $symbol() is documented."
21 good=1
22 else
23 printf " \x1b[1;31mSymbol $symbol() lacks documentation.\x1b[0m\n"
24 good=0
25 fi
26
27 case $symbol in
28 sd_*)
29 ((sd_good+=good))
30 ((sd_total+=1))
31 ;;
32 udev_*)
33 ((udev_good+=good))
34 ((udev_total+=1))
35 ;;
36 *)
37 echo 'unknown symbol prefix'
38 exit 1
39 esac
40 done
41
42 echo "libsystemd: $sd_good/$sd_total libudev: $udev_good/$udev_total"