The generated objects in `libmm-glib` are include in
`libmm_glib_dep` one by one to avoid the link to the generated
library that is included as a whole in `libmm-glib`.
meson includes a way to include partial objects of a dependency by
using the `partial_dependency` method, so by taking advantage of it
almost all objects are included.
Conveniently warned by the compiler...
../libmm-glib/mm-3gpp-profile.c: In function ‘mm_3gpp_profile_cmp’:
../libmm-glib/mm-3gpp-profile.c:98:1: warning: control reaches end of non-void function [-Wreturn-type]
98 | }
| ^
../libmm-glib/mm-simple-status.c: In function ‘mm_simple_status_new_from_dictionary’:
../libmm-glib/mm-simple-status.c:426:21: warning: declaration of ‘properties’ shadows a global declaration [-Wshadow]
426 | MMSimpleStatus *properties;
| ^~~~~~~~~~
../libmm-glib/mm-simple-status.c:55:20: note: shadowed declaration is here
55 | static GParamSpec *properties[PROP_LAST];
| ^~~~~~~~~~
In file included from /usr/include/glib-2.0/glib.h:50,
from ../libmm-glib/mm-common-helpers.h:18,
from ../libmm-glib/mm-manager.c:27:
/usr/include/glib-2.0/glib/ghash.h:68:61: note: expected ‘gpointer’ {aka ‘void *’} but argument is of type ‘const char *’
68 | gpointer key,
| ~~~~~~~~~~~~~~~~^~~
../libmm-glib/mm-manager.c:81:43: warning: passing argument 2 of ‘g_hash_table_insert’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
81 | g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.Simple", GSIZE_TO_POINTER (MM_TYPE_MODEM_SIMPLE));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib.h:50,
from ../libmm-glib/mm-common-helpers.h:18,
from ../libmm-glib/mm-manager.c:27:
meson is a build system focused on speed an ease of use, which
helps speeding up the software development. This patch adds meson
support along autotools.
Fixes the regexp in check_append_or_replace() to accept
1. more multi-sentence NMEA messages (ALM, GSV, RTE, SFI)
2. multi-sentence NMEA messages from all talkers, not just GPS
(i.e. GPGSV, GLGSV, GAGSV etc.)
The template files in the `build-aux` directory used in enums sources
and headers generation use the `{$name}-template.[ch]` pattern.
However, the examples in the official guide[0] and usually GNOME and
Freedesktop packages use the `{$name}.[ch].template` pattern.
Due to this, the name of the template files and build commands have
been changed.
[0] https://developer.gnome.org/gobject/stable/glib-mkenums.html
The support of autoptr for GEnumClass and GFlagsClass was introduced in
glib 2.58. To keep compatibility with glib 2.56, declare the autoptr
cleanup functions.
Fixes#397
We allow clients to receive asynchronous updates of location
information, e.g. if "location signaling" is explicitly enabled (with
the setup() method).
But if so, we should also allow clients to easily process those
asynchronous updates in the libmm-glib library, instead of requiring
them to run explicit DBus queries to refresh the location information.
These new signaled location APIs allow clients to do so; they can
enable location signaling, and then just wait for the updates to
arrive.
Rework the build_locations() method so that it doesn't take ownership
of the input dictionary. This allows us reusing this method with
dictionaries for which ownership cannot be transferred.
If we return a reference to the internal array in
ensure_internal_supported_storages() and then we free the array
unconditionally in the caller, the next time we call it, the array
would be valid, but it would be fully empty.
This new property will provide detailed information about the failed
connection attempt, or about the network initiated disconnection. The
property will be cleared only if a new connection attempt is
triggered, and so it can be used to investigate why a given attempt
failed without needing to be the one who triggered the attempt (e.g.
so that failures in NetworkManager-triggered connection attempts can
be investigated looking at the DBus API).
The property is built as a (ss) tuple, but the libmm-glib interface
provides methods to read this property as a GError.
mm-common-helpers.c: In function 'mm_get_int_from_str':
mm-common-helpers.c:1349:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (eol == num)
^~
mm-common-helpers.c: In function 'mm_utils_hexstr2bin':
mm-common-helpers.c:1718:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (i = 0; i < len; i += 2) {
^
The g_dbus_proxy_get_default_timeout() is by default -1 unless
explicitly updated, so the check doesn't make any sense really. We
didn't see any warning produced because mmcli provides an explicit
timeout of 30s, so it was never the default -1.
mm-location-3gpp.c: In function ‘mm_location_3gpp_get_mobile_country_code’:
mm-location-3gpp.c:139:12: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
139 | mcc[4] = '\0';
| ~~~~~~~^~~~~~
mm-location-3gpp.c:132:11: note: at offset 4 to object ‘mcc’ with size 4 declared here
132 | gchar mcc[4];
| ^~~