mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-10-06 16:21:50 +00:00
parent
cacd3be1a9
commit
168e8b9b6f
|
@ -462,7 +462,7 @@ EXTRA_DIST += \
|
|||
introspection/meson.build
|
||||
|
||||
check-docs:
|
||||
$(srcdir)/tools/check-docs.sh "$(srcdir)"
|
||||
$(srcdir)/tools/check-docs.sh "$(srcdir)" "$(builddir)"
|
||||
|
||||
check_local += check-docs
|
||||
|
||||
|
|
|
@ -257,15 +257,6 @@
|
|||
<title>Types</title>
|
||||
<xi:include href="../../libnm-core/nm-dbus-types.xml"/>
|
||||
</chapter>
|
||||
|
||||
<!--
|
||||
These are obsolete and intentionally omitted from the manual since they can't
|
||||
appear on the D-Bus API of the present version of NetworkManager.
|
||||
Keep them here so that "make check" won't think that they were skipped accidentally .
|
||||
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.WiMax.xml"/>
|
||||
<xi:include href="dbus-org.freedesktop.NetworkManager.WiMax.Nsp.xml"/>
|
||||
-->
|
||||
|
||||
</part>
|
||||
|
||||
<part id="secret-agents">
|
||||
|
|
|
@ -294,13 +294,6 @@ print ("NetworkManager version " + client.get_version())]]></programlisting></in
|
|||
<xi:include href="xml/nm-vpn-plugin-old.xml"/>
|
||||
</chapter>
|
||||
|
||||
<!--
|
||||
These don't contain any useful documentation. Keep them here,
|
||||
so that tools/check-docs.sh knows that we did omit them intentionally.
|
||||
<xi:include href="xml/nm-core-enum-types.xml"/>
|
||||
<xi:include href="xml/nm-enum-types.xml"/>
|
||||
-->
|
||||
|
||||
<chapter id="object-tree">
|
||||
<title>Object Hierarchy</title>
|
||||
<xi:include href="xml/tree_index.sgml"/>
|
||||
|
|
|
@ -14,5 +14,5 @@ endif
|
|||
test(
|
||||
'check-docs',
|
||||
find_program(join_paths(meson.source_root(), 'tools', 'check-docs.sh')),
|
||||
args: [meson.source_root()]
|
||||
args: [meson.source_root(), meson.build_root()]
|
||||
)
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
set -e
|
||||
|
||||
export LANG=C
|
||||
|
||||
die() {
|
||||
printf '%s\n' "$@" >&2
|
||||
exit 1
|
||||
|
@ -16,24 +18,47 @@ word_regex() {
|
|||
|
||||
same_lines() {
|
||||
diff <(printf "%s\n" "$1" | sed '/^$/d' | sort) \
|
||||
<(printf "%s\n%s\n" "$2" "$3" | sed '/^$/d' | sort) >&2
|
||||
<(printf "%s\n" "$2" | sed '/^$/d' | sort) >&2
|
||||
}
|
||||
|
||||
libnm_headers() {
|
||||
(
|
||||
ls -1 "$1"libnm/*.h "$1"libnm-core/*.h
|
||||
if [ -n "$2" ]; then
|
||||
ls -1 "$2"/libnm/*.h "$2"/libnm-core/*.h
|
||||
fi
|
||||
) | sort | uniq
|
||||
}
|
||||
|
||||
|
||||
SOURCEDIR="$1"
|
||||
BUILDDIR="$2"
|
||||
if test "$SOURCEDIR" == "$BUILDDIR"; then
|
||||
BUILDDIR=
|
||||
fi
|
||||
[ -n "$SOURCEDIR" ] && SOURCEDIR="$SOURCEDIR/"
|
||||
|
||||
|
||||
# Check that the D-Bus API docs contain all known interfaces
|
||||
F1="$(sed -n 's,^ <xi:include href="dbus-\([^"]*\.xml\)"/>$,\1,p' "$SOURCEDIR"docs/api/network-manager-docs.xml)"
|
||||
F1_EXTRA="
|
||||
org.freedesktop.NetworkManager.Device.WiMax.xml
|
||||
org.freedesktop.NetworkManager.WiMax.Nsp.xml
|
||||
"
|
||||
F2="$(cd "$SOURCEDIR"introspection; ls -1 *.xml)"
|
||||
if ! same_lines "$F1" "$F2" ; then
|
||||
if ! same_lines "$F1"$'\n'"$F1_EXTRA" "$F2" ; then
|
||||
die "*** Error: D-Bus interfaces not included in docs/api/network-manager-docs.xml ***"
|
||||
fi
|
||||
|
||||
|
||||
# Check that files that define types that are in public libnm API are included in libnm documentation.
|
||||
F1="$(sed -n 's/.*<xi:include href="xml\/\([^"]*\)\.xml".*/\1/p' "$SOURCEDIR"docs/libnm/libnm-docs.xml)"
|
||||
F1_EXTRA="
|
||||
nm-core-enum-types
|
||||
nm-enum-types
|
||||
"
|
||||
F2="$(grep -l "$(sed -n 's/^[\t ]*\(.*_get_type\);/\1/p' "$SOURCEDIR"libnm/libnm.ver | word_regex)" \
|
||||
"$SOURCEDIR"libnm/*.h \
|
||||
"$SOURCEDIR"libnm-core/*.h \
|
||||
$(libnm_headers "$SOURCEDIR" "$BUILDDIR") \
|
||||
| sed 's,.*/\([^/]\+\)\.h$,\1,')"
|
||||
F2_EXTRA="
|
||||
annotation-glossary
|
||||
|
@ -43,6 +68,6 @@ nm-errors
|
|||
nm-utils
|
||||
nm-version
|
||||
"
|
||||
if ! same_lines "$F1" "$F2" "$F2_EXTRA"; then
|
||||
if ! same_lines "$F1"$'\n'"$F1_EXTRA" "$F2"$'\n'"$F2_EXTRA"; then
|
||||
die "*** Error: libnm classes not included in docs/libnm/libnm-docs.xml ***"
|
||||
fi
|
||||
|
|
Loading…
Reference in a new issue