From cb1172ee3d929dddb3313fd4611160fa8cd5b3e6 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Tue, 26 Jun 2018 12:02:33 +0200 Subject: [PATCH] docs: include missing documentation in libnm and D-Bus docs Check that we don't repeat the omission in future. --- Makefile.am | 6 ++++++ docs/api/Makefile.am | 1 - docs/api/network-manager-docs.xml | 22 ++++++++++++++++++- docs/libnm/libnm-docs.xml | 36 ++++++++++++++++++++++++++----- docs/meson.build | 6 ++++++ tools/check-docs.sh | 22 +++++++++++++++++++ 6 files changed, 86 insertions(+), 7 deletions(-) create mode 100755 tools/check-docs.sh diff --git a/Makefile.am b/Makefile.am index 4974a33182..53235df7e1 100644 --- a/Makefile.am +++ b/Makefile.am @@ -390,6 +390,11 @@ EXTRA_DIST += \ $(dbusinterfaces_DATA) \ introspection/meson.build +check-docs: + $(srcdir)/tools/check-docs.sh "$(srcdir)" + +check_local += check-docs + ############################################################################### libnm_core_lib_h_pub_real = \ @@ -4840,6 +4845,7 @@ EXTRA_DIST += \ shared/nm-version-macros.h.in \ shared/meson.build \ \ + tools/check-docs.sh \ tools/check-exports.sh \ tools/create-exports-NetworkManager.sh \ tools/debug-helper.py \ diff --git a/docs/api/Makefile.am b/docs/api/Makefile.am index 39a23b6a95..03b9ce065a 100644 --- a/docs/api/Makefile.am +++ b/docs/api/Makefile.am @@ -62,7 +62,6 @@ content_files = \ dbus-org.freedesktop.NetworkManager.Device.Vlan.xml \ dbus-org.freedesktop.NetworkManager.Device.Adsl.xml \ dbus-org.freedesktop.NetworkManager.AgentManager.xml \ - dbus-org.freedesktop.NetworkManager.Device.WiMax.xml \ dbus-org.freedesktop.NetworkManager.Device.IPTunnel.xml \ dbus-org.freedesktop.NetworkManager.Device.Tun.xml \ dbus-org.freedesktop.NetworkManager.Device.Bridge.xml \ diff --git a/docs/api/network-manager-docs.xml b/docs/api/network-manager-docs.xml index 0521700c72..790cfb572a 100644 --- a/docs/api/network-manager-docs.xml +++ b/docs/api/network-manager-docs.xml @@ -189,17 +189,22 @@ + + + + + - + @@ -240,10 +245,25 @@ + + The <literal>/org/freedesktop/NetworkManager/Checkpoint/*</literal> objects + + + + Types + + + diff --git a/docs/libnm/libnm-docs.xml b/docs/libnm/libnm-docs.xml index 73098518fe..e76f7bb0f3 100644 --- a/docs/libnm/libnm-docs.xml +++ b/docs/libnm/libnm-docs.xml @@ -191,12 +191,13 @@ print ("NetworkManager version " + client.get_version())]]> + - + @@ -210,19 +211,27 @@ print ("NetworkManager version " + client.get_version())]]> - + + + + + + - + + + - + + @@ -230,6 +239,7 @@ print ("NetworkManager version " + client.get_version())]]>Device and Runtime Configuration API Reference + @@ -243,12 +253,17 @@ print ("NetworkManager version " + client.get_version())]]> + + + + + @@ -257,6 +272,7 @@ print ("NetworkManager version " + client.get_version())]]> + @@ -267,10 +283,20 @@ print ("NetworkManager version " + client.get_version())]]> VPN Plugin API Reference - + + + + + + Object Hierarchy diff --git a/docs/meson.build b/docs/meson.build index 78ace8b297..1fb21fb47d 100644 --- a/docs/meson.build +++ b/docs/meson.build @@ -10,3 +10,9 @@ if enable_libnm_glib subdir('libnm-util') subdir('libnm-glib') endif + +test( + 'check-docs', + find_program(join_paths(meson.source_root(), 'tools', 'check-docs.sh')), + args: [meson.source_root()] +) diff --git a/tools/check-docs.sh b/tools/check-docs.sh new file mode 100755 index 0000000000..9dcdb1ef3b --- /dev/null +++ b/tools/check-docs.sh @@ -0,0 +1,22 @@ +#!/bin/sh + +SOURCEDIR=$1 +[ -n "$SOURCEDIR" ] && SOURCEDIR="$SOURCEDIR/" + +# Check that the D-Bus API docs contain all known interfaces +if (sed -n 's/.*&2; then + echo "*** Error: D-Bus interfaces not included in docs/api/network-manager-docs.xml ***" >&2 + exit 1 +fi + +# Check that files that define types that are in public libnm API are included in libnm documentation. +# Don't complain about readability or I'll rewrite this in Perl. +if (sed -n 's/.*&2; then + echo "*** Error: libnm classes not included in docs/libnm/libnm-docs.xml ***" >&2 + exit 1 +fi + +exit 0