tests: only remove sources that have not already been removed

With modern GLib, misusing GSource provokes a critical warning, which
is made fatal by our test framework.

It is possible (indeed likely) that some or all of the
cancel_exit_timeout() calls just before re-adding the timeout are
redundant, but I didn't want to waste time on assessing that - easier
to just do it every time.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=83530
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
_dbus_gtype_from_signature_iter: fail gracefully with unknown message types

_dbus_gtype_from_signature_iter now returns G_TYPE_INVALID on unknown message
types such as DBUS_TYPE_UNIX_FD or DBUS_TYPE_MAYBE.

Symptoms:
> arguments to dbus_signature_iter_recurse() were incorrect, assertion
> "dbus_type_is_container (dbus_signature_iter_get_current_type (iter))" failed
> in file ../../dbus/dbus-signature.c line 213.
> This is normally a bug in some application using the D-Bus library.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=80557
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
demarshal_static_variant: fail gracefully with unknown message types

Refuse to demarshal variants containing unknown types such as DBUS_TYPE_UNIX_FD
or DBUS_TYPE_MAYBE.  Otherwise we will not be able to free them automatically
with g_value_unset.

Symptoms:
> GLib-GObject-CRITICAL **: g_value_unset: assertion 'G_IS_VALUE (value)' failed

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=80557
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
configure.ac: modernize AC_OUTPUT

Part of a patch from Rafał Mużyło.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=58698
Use AC_LANG_PROGRAM in AC_COMPILE_IFELSE

Part of a patch from Rafał Mużyło.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=58698
Replace deprecated AM_PROG_LIBTOOL with LT_INIT
Use AC_LANG_PROGRAM to check for socklen_t

Part of a patch from Rafał Mużyło.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=58698
Use gtk-doc in no-tmpl mode, moving documentation into the source code

Part of a patch from Rafał Mużyło.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=58698
Document the entire library as deprecated
docs: fix a typo in dbus_g_type_struct_get()'s doc

Signed-off-by: Jiří Klimeš <jklimes@redhat.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=45686
docs: fix a typo in dbus_g_type_get_struct() description

Signed-off-by: Jiří Klimeš <jklimes@redhat.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=45686