This class allows to preserve cached position across ModemManager restarts.
Cached location can be used to improve time to first fix after device
start by injecting coarse position into location engine. Since there
wasn't any fix yet, position in ModemManager is unknown. To fix this
cached location is saved on disk (/var/lib/ModemManager/location.ini)
when location session is stopped or ModemManager is stopped and loaded
on the next start from the file.
install_emptydir is introduced in meson 0.60.
Distributions has to create directory to store cached location in
packaging, because ModemManager runs under systemd isolation with
limited rights and it can't create this directory by itself.
Signed-off-by: Andrey Skvortsov <andrej.skvortzov@gmail.com>
Latest libqmi adds QMI_NAS_RADIO_INTERFACE_NO_CHANGE which will
cause failures when building with -Wall if NO_CHANGE isn't handled
in switch() statements. So we add that. But then of course you can't
build with older libqmi because it doesn't have NO_CHANGE.
So just bump the requirement.
Signed-off-by: Dan Williams <dan@ioncontrol.co>
Use our own ITS rules found under data/its. This resolves a
configuration breakage on some systems:
msgfmt: cannot locate ITS rules for data/org.freedesktop.ModemManager1.policy.in
According to the msgfmt manual, we need to specify a path to the parent
directory containing its folder. Hence, we add a path to data as the
data_dirs option.
Fibocom's MBIM support needs this:
mm-port-mbim-fibocom.c: In function ‘iface_port_at_check_support’:
mm-port-mbim-fibocom.c:64:66: error: ‘MBIM_SERVICE_FIBOCOM’ undeclared (first use in this function); did you mean ‘MBIM_SERVICE_GOOGLE’?
64 | if (!mm_port_mbim_supports_command (MM_PORT_MBIM (self), MBIM_SERVICE_FIBOCOM, MBIM_CID_FIBOCOM_AT_COMMAND)) {
| ^~~~~~~~~~~~~~~~~~~~
| MBIM_SERVICE_GOOGLE
mm-port-mbim-fibocom.c:64:66: note: each undeclared identifier is reported only once for each function it appears in
mm-port-mbim-fibocom.c:64:88: error: ‘MBIM_CID_FIBOCOM_AT_COMMAND’ undeclared (first use in this function)
64 | if (!mm_port_mbim_supports_command (MM_PORT_MBIM (self), MBIM_SERVICE_FIBOCOM, MBIM_CID_FIBOCOM_AT_COMMAND)) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
Fixes: c66a6b89ec ('fibocom: create custom MBIM port object with potential AT support')
There are cases where the user wants to configure some actions
to be run on a modem before ModemManager takes over full control.
The new "modem setup" dispatcher scripts allow running operations
in the modem after the port probing has happened and we know which
ports are usable in the device.
The scripts may e.g. change device configuration, enable modem
logging infrastructure, or any other process that would otherwise
conflict with MM's own modem management operations.
Resolves the following warning:
NOTICE: Future-deprecated features used:
* 0.64.0: {'copy arg in configure_file'}
copy arg was deprecated in meson version 0.64. Hence, use
fs.copyfile() that is also introduced in 0.64, in versions
since 0.64 and use the old approach for older versions.
So that it is reloaded fresh once re-enabled, otherwise we may be
using stale state values that are not in sync with the state reported
in the interface skeletons.
Now that we've dealt with everything that has been deprecated since
glib-2.44 until glib-2.56 (which we check), we can enable warnings that
guard against using the deprecated constructs.