diff -Nru libmbim-1.22.0/AUTHORS libmbim-1.24.8/AUTHORS --- libmbim-1.22.0/AUTHORS 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/AUTHORS 2020-07-10 16:12:29.000000000 +0800 @@ -7,7 +7,9 @@ Greg Suarez Bjørn Mork Roshan Pius + Eric Caruso Emil Ljungdahl + Lubomir Rintel Prathmesh Prabhu Shawn J. Goff Arnaud Desmier diff -Nru libmbim-1.22.0/ChangeLog libmbim-1.24.8/ChangeLog --- libmbim-1.22.0/ChangeLog 2020-01-15 23:10:47.000000000 +0800 +++ libmbim-1.24.8/ChangeLog 2021-06-02 22:06:33.000000000 +0800 @@ -1,3 +1,1054 @@ +commit a183b73c49729addad059e90b5dcdad7aa5ba54d +Author: Aleksander Morgado +Date: Wed Jun 2 13:05:53 2021 +0200 + + release: bump version to 1.24.8 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 0969ccbd449cf060ac9860cfbeed4caa251ecb31 +Author: Aleksander Morgado +Date: Wed May 26 15:09:29 2021 +0200 + + NEWS: update for 1.24.8 + + NEWS | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +commit 02f4e2289e3a6ab0983d880d52f1ffb4bdf727cd +Author: Aleksander Morgado +Date: Wed Apr 21 11:33:53 2021 +0200 + + build: disable gtkdocize in autoreconf + + We have a custom modified gtk-doc.make file in our sources, which + disables the gtkdoc-rebase on local install step, so we don't want + autoreconf to copy a different one when we're bootstrapping. + + (cherry picked from commit 6394a122407f31d2321a16833d9dd123767ff8d5) + + autogen.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit e772a8103acd3ead338903307a036b63f2f63a51 +Author: Aleksander Morgado +Date: Tue May 18 11:09:54 2021 +0200 + + core: drop "volatile" for g_once_init_enter locations + + This fixes a few (fatal in gcc 11) warnings. + + See https://gitlab.gnome.org/GNOME/glib/-/issues/600 + + (cherry picked from commit 764d91155570d653e178ae8f12ff4de00d71e06c) + + build-aux/templates/mbim-enum-types-template.c | 8 ++++---- + build-aux/templates/mbim-error-types-template.c | 8 ++++---- + src/libmbim-glib/mbim-message.c | 8 ++++---- + 3 files changed, 12 insertions(+), 12 deletions(-) + +commit 0e39fe0d85fec302d620365a04d98c974d7659ce +Author: Aleksander Morgado +Date: Sat May 15 15:29:32 2021 +0200 + + libmbim-glib,message: fix overflows when checking required size + + The message parsers will make sure the amount of data read from the + message is within the boundaries of the message itself. But, while + doing so, the parser will "compute" the required size based on message + field offsets and also based on offsets and sizes reported within the + message itself. + + If these fields are malformed and report very long offsets or + sizes (e.g. 0xFFFFFFFF), adding those values into a target uint32 + value will definitely overflow. + + Fix this by making the required size computations using a target + uint64 value instead, so that adding up several uint32 values (even if + some of them are e.g. 0xFFFFFFFF) won't overflow the operation. + + Fixes + https://gitlab.freedesktop.org/mobile-broadband/libmbim/-/issues/16 + + (cherry picked from commit 9016e0d72d5c7da68eccdc8413e82240a27bfeef) + + src/libmbim-glib/mbim-message.c | 160 + ++++++++++++++++++++-------------------- + 1 file changed, 80 insertions(+), 80 deletions(-) + +commit fd5aa84c5d92d94b9cc07350afc5e72a1f541347 +Author: Aleksander Morgado +Date: Sat May 15 15:28:51 2021 +0200 + + libmbim-glib,message: trivial fix in guint64 value parsing + + All relative offsets are 32bit values + + (cherry picked from commit 7a86e782e0778c458990d8f506db94bb65e4b44b) + + src/libmbim-glib/mbim-message-private.h | 2 +- + src/libmbim-glib/mbim-message.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +commit 30bd7e3b28f25e65385b98c0114e5cc64e2de2b8 +Author: Aleksander Morgado +Date: Sat May 15 15:23:09 2021 +0200 + + libmbim-glib,test: add test to trigger overflow in the message parser + + The test includes a "Basic Connect" "Visible Providers" response + message that has both a string offset and size malformed (reported as + 0x80000020 and 0x8000000A instead of 0x00000020 and 0x0000000A). + + See + https://gitlab.freedesktop.org/mobile-broadband/libmbim/-/issues/16 + + (cherry picked from commit f574596f2c092b4f779fc3ec03fa0e852b12a104) + + src/libmbim-glib/test/test-message-parser.c | 74 + +++++++++++++++++++++++++++++ + 1 file changed, 74 insertions(+) + +commit 019be52e10730860ea6fd3a20f3d41566756b169 +Author: Aleksander Morgado +Date: Fri Apr 30 21:53:26 2021 +0200 + + ci: build should be supported back to bionic + + Also, include ninja and meson in the image template, to have it ready + by the time we add the meson support. + + (cherry picked from commit 13883cd5c4d28dbed3c49008430c7dbbae8d5ef0) + + .gitlab-ci.yml | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +commit 4589863478860cc25d77a8fad617a36793d5852b +Author: Aleksander Morgado +Date: Wed Apr 28 18:47:30 2021 +0200 + + ci: switch to gitlab templates + + (cherry picked from commit 435649cbebd72aed8b128deabc8bd1405261ecfa) + + .gitlab-ci.yml | 81 + +++++++++++++++++++++++++++++++++++++++++++++++++++++----- + 1 file changed, 75 insertions(+), 6 deletions(-) + +commit 6453ef739bf6653e50fe4b8affdacfd341b3d683 +Author: Aleksander Morgado +Date: Fri Jan 22 10:20:01 2021 +0100 + + build: post-release version bump 1.24.7 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 5bf12d88b5345f4b0bca7c1f55be36cd3cb2c6de +Author: Aleksander Morgado +Date: Fri Jan 22 10:11:48 2021 +0100 + + release: bump version to 1.24.6 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit b097a7caff4c1ed497b9ca0165a37fb798f6ab37 +Author: Aleksander Morgado +Date: Fri Jan 22 10:11:17 2021 +0100 + + NEWS: update for 1.24.6 + + NEWS | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +commit dce5c182ecd026f724c2764eb80d89f7ff97b7d1 +Author: Aleksander Morgado +Date: Thu Nov 26 00:20:05 2020 +0100 + + build: fix distcheck with new gtk-doc + + The .actions file is generated by newer gtk-doc releases, we just + treat it as e.g. the .signals or .types files. + + This is also already fixed in upstream gtk-doc: + https://gitlab.gnome.org/GNOME/gtk-doc/-/merge_requests/61 + + (cherry picked from commit 83736783fcbca51aed49e6acf942ee560546a9b6) + + .gitignore | 1 + + docs/reference/libmbim-glib/Makefile.am | 1 + + 2 files changed, 2 insertions(+) + +commit 73ca67b350ba4a61f0822213ae290c66684b3a67 +Author: Aleksander Morgado +Date: Fri Nov 13 11:53:36 2020 +0100 + + libmbim-glib,device: don't warn if descriptors file cannot be read + + This is possibly just because we're not using cdc_mbim, it shouldn't + be a reason to warn anything. + + (cherry picked from commit f007997cc15494aac4791bc13b24bb118e6cdc91) + + src/libmbim-glib/mbim-device.c | 14 ++++++++++---- + 1 file changed, 10 insertions(+), 4 deletions(-) + +commit aae78a6fa458b5924a77674fbdb21dc98f704032 +Author: Aleksander Morgado +Date: Fri Nov 13 11:51:19 2020 +0100 + + libmbim-glib,device: realpath() returns NULL if path doesn't exist + + Running realpath() on a path that doesn't exist returns NULL, so don't + even attempt to run g_file_test() on it. The g_file_test() may even be + redundant, but well. + + (cherry picked from commit aff2313b4153a05f6466ebd337f53354398b25f2) + + src/libmbim-glib/mbim-device.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit cf7305621d21a4803d86e106ab6c882e3e3cef15 +Author: Aleksander Morgado +Date: Fri Nov 13 10:11:13 2020 +0100 + + libmbim-glib,device: avoid using an already unref-ed source + + We were creating the source, attaching it to the main context, and + removing our reference right away. That meant that the ownership of + the source was fully given to the main context, and so we shouldn't + have attempted to remove it from the main context later on, as it + could have already been fired and removed behind our back. + + Solve this, by making sure we keep a valid source reference of our + own, and in this way we can safely destroy the source (it's fine to + destroy an already destroyed source, as long as the reference is + valid) and then fully unref it. + + ModemManager[55085]: transaction 0x6 aborted, but message is + not abortable + ModemManager[55085]: [/dev/mhi_MBIM] MBIM error: Cannot write + message: Broken pipe + + (ModemManager:55085): GLib-CRITICAL **: 10:04:58.605: + g_source_destroy: assertion 'g_atomic_int_get (&source->ref_count) + > 0' failed + + Thread 1 "ModemManager" received signal SIGTRAP, Trace/breakpoint + trap. + 0x00007ffff775ef23 in g_logv () from /usr/lib/libglib-2.0.so.0 + (gdb) bt + #0 0x00007ffff775ef23 in g_logv () at /usr/lib/libglib-2.0.so.0 + #1 0x00007ffff775f1a0 in g_log () at /usr/lib/libglib-2.0.so.0 + #2 0x00007ffff7a8f564 in transaction_context_free + (ctx=0x5555558254a0) at mbim-device.c:162 + #3 0x00007ffff79240ba in () at /usr/lib/libgio-2.0.so.0 + #4 0x00007ffff78537b1 in g_object_unref () at + /usr/lib/libgobject-2.0.so.0 + #5 0x00007ffff77512b3 in () at /usr/lib/libglib-2.0.so.0 + #6 0x00007ffff775384a in () at /usr/lib/libglib-2.0.so.0 + #7 0x00007ffff7756b90 in g_main_context_dispatch () at + /usr/lib/libglib-2.0.so.0 + #8 0x00007ffff77a81f9 in () at /usr/lib/libglib-2.0.so.0 + #9 0x00007ffff7756163 in g_main_loop_run () at + /usr/lib/libglib-2.0.so.0 + #10 0x00005555555a0b15 in main (argc=2, argv=0x7fffffffeac8) + at main.c:206 + + (cherry picked from commit ef133a7a59874cfed3e9afff896ad05505f58769) + + src/libmbim-glib/mbim-device.c | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +commit 16252c1492701a3fe7fb3b8309d471e452942cb5 +Author: Aleksander Morgado +Date: Thu Oct 1 12:34:46 2020 +0200 + + build: post-release version bump to 1.24.5 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 060584b1d79bd11c9059676c24cd1d882d5508b1 +Author: Aleksander Morgado +Date: Thu Oct 1 12:07:10 2020 +0200 + + release: bump version to 1.24.4 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 098f44149543919b96a59733c704dd6c36d2843d +Author: Aleksander Morgado +Date: Thu Oct 1 12:06:48 2020 +0200 + + NEWS: update for 1.24.4 + + NEWS | 18 +++++++++++++++++- + 1 file changed, 17 insertions(+), 1 deletion(-) + +commit 2f870ec400c4c12513d809eccde1da34e80f7d9f +Author: Aleksander Morgado +Date: Thu Oct 1 12:01:28 2020 +0200 + + libmbim-glib,device: get_transaction_id() already in 1.24.4 + + docs/reference/libmbim-glib/libmbim-glib-docs.xml | 6 +++--- + src/libmbim-glib/mbim-device.h | 2 +- + 2 files changed, 4 insertions(+), 4 deletions(-) + +commit 34a2a36759aeac830e87964ea9d171b8d64c9a6c +Author: Aleksander Morgado +Date: Thu Oct 1 12:11:58 2020 +0200 + + docs: add missing references to mbim_device_get_transaction_id() + + (cherry picked from commit 34ce4755f8e926f7c9fa20b777e8cd7aa1720dae) + + docs/reference/libmbim-glib/libmbim-glib-common.sections | 1 + + docs/reference/libmbim-glib/libmbim-glib-docs.xml | 4 ++++ + 2 files changed, 5 insertions(+) + +commit a1ef28c59cb48b3bf36d17c3f2328d55d5e7f546 +Author: Bjørn Mork +Date: Mon Sep 21 13:08:38 2020 +0200 + + libmbim-glib,proxy: use same transaction id for all fragments + + All fragments must have the same transaction id. + + Signed-off-by: Bjørn Mork + (cherry picked from commit e266810e03712ac79b0bf4682c92a4834e216b9b) + + src/libmbim-glib/mbim-device.c | 10 ++++++++++ + src/libmbim-glib/mbim-device.h | 13 +++++++++++++ + src/libmbim-glib/mbim-proxy.c | 8 ++++++-- + 3 files changed, 29 insertions(+), 2 deletions(-) + +commit fc0c04f0c0423e21d2f48fd579d96b251f64c882 +Author: Aleksander Morgado +Date: Sun Aug 9 09:42:40 2020 +0200 + + libmbim-glib,proxy: don't acquire device context during untrack + + Because if the context was never created, we would be creating it at + this point, and it wouldn't make sense to do so; e.g.: + + [Debug] [/dev/cdc-wdm1] unexpected port hangup! + [Debug] [/dev/cdc-wdm1] channel destroyed + [Debug] Initial device subscribe list... + [Debug] [service 0] a289cc33-bcbb-8b4f-b6b0-133ec2aae6df + (basic-connect) + [Debug] [service 0] 11 CIDs enabled + [Debug] [service 0] [cid 0] 2 (subscriber-ready-status) + [Debug] [service 0] [cid 1] 3 (radio-state) + + (cherry picked from commit 927706715bd91cc5cd681f29a6c643dc7d16047c) + + src/libmbim-glib/mbim-proxy.c | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) + +commit f345dbfff5a046e1bd0771bee631506c598f92a3 +Author: Aleksander Morgado +Date: Sun Aug 9 10:16:54 2020 +0200 + + mbimcli: add missing EOL in error print when closing device + + [09 ago 2020, 10:15:51] [Debug] [/dev/cdc-wdm1] Received message + (translated)... + >>>>>> Header: + >>>>>> length = 16 + >>>>>> type = function-error (0x80000004) + >>>>>> transaction = 11 + >>>>>> Contents: + >>>>>> error = 'NotOpened' (0x00000005) + + error: couldn't close device: MBIM protocol error: NotOpened[09 + ago 2020, 10:15:51] [Debug] [/dev/cdc-wdm1] channel destroyed + + (cherry picked from commit 21f797058c07139e128e0b10850e921a2e982ad0) + + src/mbimcli/mbimcli.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit e35c747d937c033fa2cc3d5d1f1a83d062d5a4db +Author: Aleksander Morgado +Date: Sun Aug 9 08:48:52 2020 +0200 + + libmbim-glib,proxy: avoid double GError free + + (cherry picked from commit 095cd71491adeab32bdc00cc247487327114e1d0) + + src/libmbim-glib/mbim-proxy.c | 1 - + 1 file changed, 1 deletion(-) + +commit 04439045b6ec86b3978b966eb8468455b3dee2ac +Author: Aleksander Morgado +Date: Fri Jul 10 10:37:54 2020 +0200 + + build: post-release version bump to 1.24.3 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 603dc8027afe319c858763d7885dd8b7395c9f42 +Author: Aleksander Morgado +Date: Fri Jul 10 10:32:45 2020 +0200 + + release: bump version to 1.24.2 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit fdb0887f386b55e6a7222039a1404150578a0c0b +Author: Aleksander Morgado +Date: Fri Jul 10 10:32:31 2020 +0200 + + NEWS: update for 1.24.2 + + NEWS | 9 +++++++++ + 1 file changed, 9 insertions(+) + +commit 4712154279402356a8d51c90f42742e3b642f6d2 +Author: Aleksander Morgado +Date: Fri Jul 10 10:17:01 2020 +0200 + + libmbim-glib,proxy: fix reporting of merged subscribe list + + We were doing the subscribe list merge correctly, but not reporting it + as done because the 'updated' pointer is set to NULL before returning + it. + + This was breaking QMI over MBIM indications, as the registration + message to request them was never sent to the device. + + (cherry picked from commit ecd188ff0126866199fd453e962ba54ba1dce290) + + src/libmbim-glib/mbim-proxy.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit e9087a9c567250a8c88e3e5d5c8a33adaf32e357 +Author: Aleksander Morgado +Date: Sun Jun 28 09:08:54 2020 +0200 + + libmbim-glib,proxy: fix segfault when printing updated subscriber list + + We were printing the 'updated' variable after its contents had already + been stolen. + + [28 Jun 2020, 03:06:27] [Debug] Merged service subscribe list + built for device '/dev/cdc-wdm0' + Thread 1 "mbim-proxy" received signal SIGSEGV, Segmentation fault. + _mbim_proxy_helper_service_subscribe_list_debug + (list=list@entry=0x0, list_size=6) at mbim-proxy-helpers.c:104 + 104 const MbimEventEntry *entry = list[i]; + (gdb) p list + $1 = (const MbimEventEntry * const *) 0x0 + (gdb) p list_size + $2 = 6 + + The segfault was only triggered when the mbim-proxy was run with + --verbose. + + (cherry picked from commit 0590b7e911df6e014fa6a7ec48a291f33a53d580) + + src/libmbim-glib/mbim-proxy.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +commit 03bbe9042a9fae00a489564cbe979733df11b4b1 +Author: Aleksander Morgado +Date: Tue Jun 23 10:44:36 2020 +0200 + + libmbim-glib,device: ignore messages with wrong MBIM message type + + The Cinterion mPLS62-w may end up sending messages which are clearly + not well formatted MBIM messages, and upon receiving one of them, the + mbim-proxy would get completely stuck (e.g. attempting to read a + message of >800MB because of the reported length in the first + malformed messae). + + Try to avoid this, by doing an initial filter by message type, which + at least solves the seen problem. Not a fully robust fix yet, though. + + E.g. new logs: + + [23 jun 2020, 10:43:49] [Debug] [/dev/cdc-wdm1] Sent message + (translated)... + <<<<<< Header: + <<<<<< length = 48 + <<<<<< type = command (0x00000003) + <<<<<< transaction = 20 + <<<<<< Fragment header: + <<<<<< total = 1 + <<<<<< current = 0 + <<<<<< Contents: + <<<<<< service = 'atds' (5967bdcc-7fd2-49a2-9f5c-b2e70e527db3) + <<<<<< cid = 'location' (0x00000002) + <<<<<< type = 'query' (0x00000000) + + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 293 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 200 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 168 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 311 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 311 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 311 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 335 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 277 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 312 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 314 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 312 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 280 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 312 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 312 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 326 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 260 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 244 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 326 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 326 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 326 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 306 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 334 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 324 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 356 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 356 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 191 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 201 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 356 bytes in MBIM stream as message type validation fails + [23 jun 2020, 10:43:49] -Warning ** [/dev/cdc-wdm1] discarding + 356 bytes in MBIM stream as message type validation fails + + (cherry picked from commit cbb3e3944452a940ba583020882d13f2e49acd27) + + src/libmbim-glib/mbim-device.c | 29 ++++++++++++++++++++++++++++- + 1 file changed, 28 insertions(+), 1 deletion(-) + +commit 3c5b085e7f0f7c2ac3dd6f145e64cde354883ccb +Author: Aleksander Morgado +Date: Thu Jun 18 10:53:24 2020 +0200 + + build: post-release version bump to 1.24.1 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 1a186e61a34e0b267cc91e9a72dd266429ab6408 +Author: Aleksander Morgado +Date: Thu Jun 18 10:40:31 2020 +0200 + + release: bump version to 1.24.0 + + configure.ac | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +commit 53dd98b856711845af761d2bab2779e85aa45520 +Author: Aleksander Morgado +Date: Sat May 30 13:11:49 2020 +0200 + + AUTHORS: update with latest commit stats + + AUTHORS | 2 ++ + 1 file changed, 2 insertions(+) + +commit 30dd906a658bbd182c252f046c76697218d1da8b +Author: Aleksander Morgado +Date: Sat May 30 08:59:15 2020 +0200 + + example: always perform a clean exit, even on error + + examples/simple-tester-python/simple-tester-python | 2 -- + 1 file changed, 2 deletions(-) + +commit ede2849ce88e951ab1b07a6d80406e571b6d21aa +Author: Aleksander Morgado +Date: Sat May 30 08:56:04 2020 +0200 + + example: GObject import not explicitly required + + examples/simple-tester-python/simple-tester-python | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 2f8c625da4b8b9faad0b9120aa1613ae53b47661 +Author: Aleksander Morgado +Date: Fri May 29 18:30:21 2020 +0200 + + example: separate with 2 whitelines the program methods + + examples/simple-tester-python/simple-tester-python | 6 ++++++ + 1 file changed, 6 insertions(+) + +commit 3564fde972c3e39aeccd589ed4919aa058dd23ca +Author: Aleksander Morgado +Date: Fri May 29 18:16:34 2020 +0200 + + example: don't attempt to continue logic after quitting main loop + + examples/simple-tester-python/simple-tester-python | 3 +++ + 1 file changed, 3 insertions(+) + +commit 47e2ed70db68f655710a558e03bc0d77e3be96d4 +Author: Aleksander Morgado +Date: Wed May 27 14:02:03 2020 +0200 + + build: bump version to 1.23.900 (1.24-rc1) + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit f9bb4d26175512cc2b3084189fc9826a78fbd43d +Author: Aleksander Morgado +Date: Wed May 27 14:01:20 2020 +0200 + + NEWS: update for 1.24 + + NEWS | 18 ++++++++++++++++++ + 1 file changed, 18 insertions(+) + +commit 3757cf5a1946613d3b11fa6af6f262097967759a +Author: Aleksander Morgado +Date: Wed May 27 13:49:04 2020 +0200 + + libmbim-glib: skip unneeded methods from introspection + + Don't add in introspection the methods reading GObject properties. + + src/libmbim-glib/mbim-device.h | 4 ++-- + src/libmbim-glib/mbim-proxy.h | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +commit 368450ecec0cce1abca098995428733d6db38b88 +Author: Aleksander Morgado +Date: Wed May 27 13:45:15 2020 +0200 + + mbim-codegen: setup introspection annotations in message creators + + build-aux/mbim-codegen/Message.py | 34 +++++++++++++++++----------------- + 1 file changed, 17 insertions(+), 17 deletions(-) + +commit aedc73750a10f3bb18a72e0a9bb63863a6390c34 +Author: Aleksander Morgado +Date: Wed May 27 10:50:41 2020 +0200 + + examples: new simple python tester for introspection support + + Makefile.am | 2 +- + configure.ac | 2 + + examples/Makefile.am | 1 + + examples/simple-tester-python/Makefile.am | 2 + + examples/simple-tester-python/README | 29 ++++++ + examples/simple-tester-python/simple-tester-python | 102 + +++++++++++++++++++++ + 6 files changed, 137 insertions(+), 1 deletion(-) + +commit 8612624c1d674f9f23cd4b442060dce1d4d34873 +Author: Aleksander Morgado +Date: Wed May 27 11:56:05 2020 +0200 + + mbim-codegen: set array detail annotations + + build-aux/mbim-codegen/Message.py | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +commit b1d92278f9689547894d0aa28228b53636f3c47c +Author: Aleksander Morgado +Date: Wed May 27 11:00:17 2020 +0200 + + mbim-codegen: set transfer annotations in parsers + + build-aux/mbim-codegen/Message.py | 32 ++++++++++++++++---------------- + 1 file changed, 16 insertions(+), 16 deletions(-) + +commit 539e570b161c7127c3a267493cf760cd41ec586c +Author: Aleksander Morgado +Date: Wed May 27 10:51:06 2020 +0200 + + mbim-codegen: explicitly flag as optional outputs all fields in + parsers + + build-aux/mbim-codegen/Message.py | 34 +++++++++++++++++----------------- + 1 file changed, 17 insertions(+), 17 deletions(-) + +commit 891ff842fdb84a2f8628a19af89794a9c4287623 +Author: Aleksander Morgado +Date: Mon May 18 13:32:50 2020 +0200 + + mbim-codegen: avoid needing python packaging.version.parse + + build-aux/mbim-codegen/Struct.py | 4 +--- + build-aux/mbim-codegen/utils.py | 21 +++++++++++++++++++++ + 2 files changed, 22 insertions(+), 3 deletions(-) + +commit fc550c38e88f6228a492546f1d75edb98846a194 +Author: Aleksander Morgado +Date: Mon May 18 06:42:26 2020 +0200 + + docs,libmbim-glib: include API indices + + docs/reference/libmbim-glib/libmbim-glib-docs.xml | 50 + +++++++++++++++++++++-- + 1 file changed, 47 insertions(+), 3 deletions(-) + +commit 03f4969bc7d79e1d6aa78af2fa69d6ff1de815ca +Author: Aleksander Morgado +Date: Mon May 18 13:07:59 2020 +0200 + + build-aux: include Since tag in methods built from enums + + build-aux/templates/mbim-enum-types-template.c | 17 ---- + build-aux/templates/mbim-enum-types-template.h | 21 +++++ + src/libmbim-glib/mbim-cid.h | 28 +++---- + src/libmbim-glib/mbim-device.h | 2 +- + src/libmbim-glib/mbim-enums.h | 112 + ++++++++++++------------- + src/libmbim-glib/mbim-errors.h | 6 +- + src/libmbim-glib/mbim-message.h | 4 +- + src/libmbim-glib/mbim-uuid.h | 4 +- + 8 files changed, 99 insertions(+), 95 deletions(-) + +commit 0237c972093c716eeab82a94272cd0ae8a00426f +Author: Aleksander Morgado +Date: Mon May 18 12:54:20 2020 +0200 + + build-aux: import custom mkenums tool + + Equivalent to the glib-mkenums released in 2.66, we just include it in + the repo to be able to use it earlier than requiring 2.66 in the whole + project. + + build-aux/Makefile.am | 4 +- + build-aux/mbim-mkenums | 788 + +++++++++++++++++++++++++++++++++ + configure.ac | 3 - + src/libmbim-glib/generated/Makefile.am | 10 +- + 4 files changed, 796 insertions(+), 9 deletions(-) + +commit 4c2a7b4f8285dfbf7ff3c45c142c454f5f5530b9 +Author: Aleksander Morgado +Date: Mon May 18 09:10:36 2020 +0200 + + libmbim-glib: add Since tags to all API types and methods + + src/libmbim-glib/mbim-cid.h | 40 +++++++- + src/libmbim-glib/mbim-compat.h | 12 ++- + src/libmbim-glib/mbim-device.c | 21 ++++ + src/libmbim-glib/mbim-device.h | 92 +++++++++++++++++- + src/libmbim-glib/mbim-enums.h | 194 + +++++++++++++++++++++++++++++-------- + src/libmbim-glib/mbim-errors.h | 10 +- + src/libmbim-glib/mbim-message.h | 92 ++++++++++++++++++ + src/libmbim-glib/mbim-proxy.c | 11 ++- + src/libmbim-glib/mbim-proxy.h | 40 +++++++- + src/libmbim-glib/mbim-utils.h | 4 + + src/libmbim-glib/mbim-uuid.h | 72 ++++++++++++-- + src/libmbim-glib/mbim-version.h.in | 8 ++ + 12 files changed, 536 insertions(+), 60 deletions(-) + +commit 8abe015a9ab756b2248df892a6b601d17e1a6611 +Author: Aleksander Morgado +Date: Mon May 18 07:05:16 2020 +0200 + + mbim-codegen: add Since tags to all public structs and methods + + build-aux/mbim-codegen/Message.py | 236 + +++++++++++++++++++++----------------- + build-aux/mbim-codegen/Struct.py | 46 +++++--- + 2 files changed, 159 insertions(+), 123 deletions(-) + +commit e20be27adea9fbc0ebcca4fe74e4d872fea75bad +Author: Aleksander Morgado +Date: Mon May 18 06:15:27 2020 +0200 + + data: add 'since' version tags to all messages + + E.g.: + "since" : "1.0" + + Or per-message-type version tags with 'since-ex', e.g.: + "since-ex" : { "query" : "1.0", + "response" : "1.0", + "notification" : "1.8" }, + + data/mbim-service-atds.json | 6 + + data/mbim-service-auth.json | 9 +- + data/mbim-service-basic-connect.json | 163 ++++++---- + data/mbim-service-dss.json | 1 + + data/mbim-service-intel-firmware-update.json | 9 +- + data/mbim-service-ms-basic-connect-extensions.json | 6 + + data/mbim-service-ms-firmware-id.json | 1 + + data/mbim-service-ms-host-shutdown.json | 1 + + data/mbim-service-phonebook.json | 73 ++--- + data/mbim-service-proxy-control.json | 1 + + data/mbim-service-qmi.json | 35 ++- + data/mbim-service-sms.json | 347 + +++++++++++---------- + data/mbim-service-stk.json | 4 +- + data/mbim-service-ussd.json | 69 ++-- + 14 files changed, 402 insertions(+), 323 deletions(-) + +commit 21f8b992e8d17c9fa944641c0e4e1c02a756c5a9 +Author: Aleksander Morgado +Date: Thu May 14 19:24:41 2020 +0200 + + libmbim-glib,proxy: fix proxy reference count + + Fixes bf9a52868047c11463692a57fdda6af9f0b59588 + + src/libmbim-glib/mbim-proxy.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 91d107fd4f052da5728656a45261aedde77de95e +Author: Aleksander Morgado +Date: Wed May 13 07:00:46 2020 +0200 + + build: update list of ignored files + + .gitignore | 47 ++++++++++++++++++----------------------------- + 1 file changed, 18 insertions(+), 29 deletions(-) + +commit c26e9494166ba45a36db65dc89362e2fed861136 +Author: Aleksander Morgado +Date: Wed May 13 06:02:10 2020 +0200 + + libmbim-glib,introspection: add introspection support + + .gitlab-ci.yml | 4 +- + configure.ac | 26 +++++++----- + m4/introspection.m4 | 97 + ++++++++++++++++++++++++++++++++++++++++++++ + src/libmbim-glib/Makefile.am | 40 ++++++++++++++++++ + 4 files changed, 154 insertions(+), 13 deletions(-) + +commit 0bf83040b3addca4dce3fea17f15292f33fbb403 +Author: Aleksander Morgado +Date: Wed May 13 06:55:54 2020 +0200 + + libmbim-glib: move method docs to headers + + src/libmbim-glib/mbim-cid.c | 45 ---- + src/libmbim-glib/mbim-cid.h | 61 ++++- + src/libmbim-glib/mbim-compat.c | 33 --- + src/libmbim-glib/mbim-compat.h | 33 +++ + src/libmbim-glib/mbim-device.c | 187 -------------- + src/libmbim-glib/mbim-device.h | 294 ++++++++++++++++++---- + src/libmbim-glib/mbim-message.c | 373 ---------------------------- + src/libmbim-glib/mbim-message.h | 524 + +++++++++++++++++++++++++++++++++++----- + src/libmbim-glib/mbim-proxy.c | 16 -- + src/libmbim-glib/mbim-proxy.h | 54 ++++- + src/libmbim-glib/mbim-utils.c | 13 - + src/libmbim-glib/mbim-utils.h | 17 +- + src/libmbim-glib/mbim-uuid.c | 109 --------- + src/libmbim-glib/mbim-uuid.h | 134 +++++++++- + 14 files changed, 984 insertions(+), 909 deletions(-) + +commit f3f906bd4bcceac34a9e69accd819bb88fb68edf +Author: Aleksander Morgado +Date: Mon May 11 17:13:29 2020 +0200 + + ci: also test distcheck by default + + .gitlab-ci.yml | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +commit bf9a52868047c11463692a57fdda6af9f0b59588 +Author: Aleksander Morgado +Date: Mon May 11 16:58:37 2020 +0200 + + libmbim-glib,proxy: port to use g_auto() helpers + + src/libmbim-glib/mbim-proxy.c | 164 + +++++++++++++++++------------------------- + 1 file changed, 64 insertions(+), 100 deletions(-) + +commit 9e31bd6f3b4f2063b0b0d2ea78b1846e65e0ca3a +Author: Aleksander Morgado +Date: Mon May 11 16:39:47 2020 +0200 + + libmbim-glib,message: port to use g_auto() helpers + + src/libmbim-glib/mbim-message.c | 65 + +++++++++++++++++------------------------ + 1 file changed, 27 insertions(+), 38 deletions(-) + +commit a4c7b1a17f7267a1146d33e39b41f70f7e110062 +Author: Aleksander Morgado +Date: Mon May 11 16:31:04 2020 +0200 + + libmbim-glib,device: port to use g_auto() helpers + + src/libmbim-glib/mbim-device.c | 302 + ++++++++++++++++------------------------- + 1 file changed, 117 insertions(+), 185 deletions(-) + +commit 1e4654e2b326cfc98d20b3171bc54d2654bb9b23 +Author: Aleksander Morgado +Date: Mon May 11 16:02:03 2020 +0200 + + libmbim-glib,device: proxy_control_configuration_set_new() never fails + + src/libmbim-glib/mbim-device.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +commit 073df58b71ac4edacddd18e4e822eae4cab0e59a +Author: Aleksander Morgado +Date: Mon May 11 14:54:17 2020 +0200 + + mbim-codegen: port to use g_auto() helpers + + build-aux/mbim-codegen/Message.py | 57 + ++++++++++++++------------------------- + build-aux/mbim-codegen/Struct.py | 8 +++--- + 2 files changed, 23 insertions(+), 42 deletions(-) + +commit f8856c71607a0d2612cb5e9b050efd01f8c6e9d4 +Author: Aleksander Morgado +Date: Mon May 11 14:46:20 2020 +0200 + + mbim-proxy: port to use g_auto() helpers + + src/mbim-proxy/mbim-proxy.c | 8 +++----- + 1 file changed, 3 insertions(+), 5 deletions(-) + +commit 00dcb26cd6993104cb2d255487df7e9d754d0e94 +Author: Aleksander Morgado +Date: Mon May 11 14:38:31 2020 +0200 + + mbimcli: port to use g_auto() helpers + + src/mbimcli/mbimcli-atds.c | 50 +- + src/mbimcli/mbimcli-basic-connect.c | 735 + +++++++--------------- + src/mbimcli/mbimcli-dss.c | 61 +- + src/mbimcli/mbimcli-helpers.c | 130 ++-- + src/mbimcli/mbimcli-intel-firmware-update.c | 15 +- + src/mbimcli/mbimcli-ms-basic-connect-extensions.c | 79 +-- + src/mbimcli/mbimcli-ms-firmware-id.c | 25 +- + src/mbimcli/mbimcli-ms-host-shutdown.c | 13 +- + src/mbimcli/mbimcli-phonebook.c | 89 +-- + src/mbimcli/mbimcli.c | 16 +- + 10 files changed, 400 insertions(+), 813 deletions(-) + +commit 7ae92677360a57e796d10c982a0d4d125ae86731 +Author: Aleksander Morgado +Date: Mon May 11 16:33:02 2020 +0200 + + build: bump version to 1.23.1 to flag existence of new API (autoptr + support) + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 50d43376a6ac9c6fc9a1e3d595675937ae90cc86 +Author: Aleksander Morgado +Date: Sat Mar 21 15:19:58 2020 +0100 + + mbimcli: remove empty whiteline in --version + + This also fixes the Copyright section in the troffit generated HTML + output. + + src/mbimcli/mbimcli.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +commit adaeaa6ad14854655b092bdaf7e7b02f7d616ccd +Author: Aleksander Morgado +Date: Sat Mar 21 15:09:00 2020 +0100 + + mbimcli: add ':' to the section titles + + So that --help-all print all sections in the same way as the Help and + Application option groups. + + src/mbimcli/mbimcli-atds.c | 2 +- + src/mbimcli/mbimcli-basic-connect.c | 2 +- + src/mbimcli/mbimcli-dss.c | 2 +- + src/mbimcli/mbimcli-intel-firmware-update.c | 2 +- + src/mbimcli/mbimcli-ms-basic-connect-extensions.c | 2 +- + src/mbimcli/mbimcli-ms-firmware-id.c | 2 +- + src/mbimcli/mbimcli-ms-host-shutdown.c | 2 +- + src/mbimcli/mbimcli-phonebook.c | 2 +- + 8 files changed, 8 insertions(+), 8 deletions(-) + +commit 4f67acb16e0dbafad78387090b8c086c2428f663 +Author: Eric Caruso +Date: Tue Feb 4 11:04:14 2020 -0800 + + mbim-proxy: flag print_version_and_exit() as noreturn + + src/mbim-proxy/mbim-proxy.c | 1 + + 1 file changed, 1 insertion(+) + +commit cc307468d078a28ea99660b33d740f563484d910 +Author: Aleksander Morgado +Date: Wed Jan 15 18:35:45 2020 +0100 + + libmbim-glib,test: port message parser tests to use autoptr + + src/libmbim-glib/test/test-message-parser.c | 224 + +++++++++++----------------- + 1 file changed, 90 insertions(+), 134 deletions(-) + +commit 7100b28963a34581ff44a7b43626ef81cd7c87e8 +Author: Aleksander Morgado +Date: Wed Jan 15 18:09:32 2020 +0100 + + libmbim-glib,mbim-codegen: define autoptr cleanup functions for + all types + + build-aux/mbim-codegen/Message.py | 8 ++++---- + build-aux/mbim-codegen/Struct.py | 21 ++++++++++++++++----- + src/libmbim-glib/mbim-device.h | 1 + + src/libmbim-glib/mbim-message.h | 2 ++ + src/libmbim-glib/mbim-proxy.h | 1 + + 5 files changed, 24 insertions(+), 9 deletions(-) + +commit 8819bb94affc97455f1716c71b10ca5a4a574879 +Author: Aleksander Morgado +Date: Wed Jan 15 17:37:22 2020 +0100 + + build: bump minimum glib required version to 2.48 + + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit f6506bccdfc43c3c89eaf928cf4576963fdacf32 +Author: Aleksander Morgado +Date: Wed Jan 15 17:33:21 2020 +0100 + + build: post-release version bump to 1.23.0 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + commit 697465da7e976d15b13061368d37f76d8e0c33c4 Author: Aleksander Morgado Date: Wed Jan 15 16:09:39 2020 +0100 diff -Nru libmbim-1.22.0/Makefile.am libmbim-1.24.8/Makefile.am --- libmbim-1.22.0/Makefile.am 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/Makefile.am 2020-07-10 16:12:29.000000000 +0800 @@ -1,5 +1,5 @@ -SUBDIRS = . build-aux data src utils docs +SUBDIRS = . build-aux data src examples utils docs ACLOCAL_AMFLAGS = -I m4 diff -Nru libmbim-1.22.0/Makefile.in libmbim-1.24.8/Makefile.in --- libmbim-1.22.0/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -90,9 +90,10 @@ subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ @@ -138,8 +139,8 @@ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ cscope distdir distdir-am dist dist-all distcheck -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ - $(LISP)config.h.in +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \ + config.h.in # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is # *not* preserved. @@ -162,7 +163,7 @@ DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in AUTHORS \ COPYING COPYING.LIB ChangeLog INSTALL NEWS README compile \ - config.guess config.sub depcomp install-sh ltmain.sh missing + config.guess config.sub install-sh ltmain.sh missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -201,6 +202,8 @@ GZIP_ENV = --best DIST_ARCHIVES = $(distdir).tar.xz DIST_TARGETS = dist-xz +# Exists only to be overridden by the user if desired. +AM_DISTCHECK_DVI_TARGET = dvi distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' @@ -216,7 +219,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -230,7 +232,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -247,6 +248,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -356,6 +365,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -364,7 +374,7 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -SUBDIRS = . build-aux data src utils docs +SUBDIRS = . build-aux data src examples utils docs ACLOCAL_AMFLAGS = -I m4 DISTCHECK_CONFIGURE_FLAGS = \ --with-udev-base-dir="$$dc_install_base" \ @@ -624,6 +634,10 @@ tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__post_remove_distdir) +dist-zstd: distdir + tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst + $(am__post_remove_distdir) + dist-tarZ: distdir @echo WARNING: "Support for distribution archives compressed with" \ "legacy program 'compress' is deprecated." >&2 @@ -666,6 +680,8 @@ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ + *.tar.zst*) \ + zstd -dc $(distdir).tar.zst | $(am__untar) ;;\ esac chmod -R a-w $(distdir) chmod u+w $(distdir) @@ -681,7 +697,7 @@ $(DISTCHECK_CONFIGURE_FLAGS) \ --srcdir=../.. --prefix="$$dc_install_base" \ && $(MAKE) $(AM_MAKEFLAGS) \ - && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ @@ -843,18 +859,18 @@ am--refresh check check-am clean clean-cscope clean-generic \ clean-libtool cscope cscopelist-am ctags ctags-am dist \ dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \ - dist-xz dist-zip distcheck distclean distclean-generic \ - distclean-hdr distclean-libtool distclean-tags distcleancheck \ - distdir distuninstallcheck dvi dvi-am html html-am info \ - info-am install install-am install-data install-data-am \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip installcheck installcheck-am \ - installdirs installdirs-am maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ - uninstall-am + dist-xz dist-zip dist-zstd distcheck distclean \ + distclean-generic distclean-hdr distclean-libtool \ + distclean-tags distcleancheck distdir distuninstallcheck dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs installdirs-am \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags tags-am uninstall uninstall-am .PRECIOUS: Makefile diff -Nru libmbim-1.22.0/NEWS libmbim-1.24.8/NEWS --- libmbim-1.22.0/NEWS 2020-01-15 23:07:23.000000000 +0800 +++ libmbim-1.24.8/NEWS 2021-06-02 22:05:42.000000000 +0800 @@ -1,4 +1,70 @@ +Overview of changes in libmbim 1.24.8 +---------------------------------------- + + * libmbim-glib,message: + ** Fix read overflow on malformed MBIM messages. + + * build: + ** Fix build with GCC 11 and -Wincompatible-pointer-types. + + * Several other minor improvements and fixes. + + +Overview of changes in libmbim 1.24.6 +---------------------------------------- + + * libmbim-glib,device: + ** Fixed a GSource use after free. + ** Avoid g_file_test() on NULL path. + ** Don't warn if descriptors file cannot be read. + + * Several other minor improvements and fixes. + + +Overview of changes in libmbim 1.24.4 +---------------------------------------- + + * libmbim-glib,device: + ** Added new mbim_device_get_transaction_id() to retrieve the transaction + id currently being used. + + * libmbim-glib,proxy: + ** Fixed the transaction id used in fragments of the same request. + ** Avoid creating device context when it's already being untracked. + ** Fixed double GError free. + + * mbimcli: + ** Fixed missing EOL in error string when closing device. + + +Overview of changes in libmbim 1.24.2 +---------------------------------------- + + * libmbim-glib: + ** Fixed several issues in the logic that merges the service subscribe list. + ** Improved message reading logic to skip malformed MBIM messages (e.g. AT + URCs emitted wrongly in the MBIM port by some Cinterion modules). + + +Overview of changes in libmbim 1.24 +---------------------------------------- + + * Build now requires GLib/GObject/GIO 2.48. + + * Added new GObject Introspection support in the library, that can be + explicitly requested during configure with --enable-introspection=yes. + With the new introspection support, the libmbim-glib library can now be + used directly from e.g. python programs, as in the example included with + the release. + + * Added release version information to all the types and methods of the public + library API, and added new per-version indices in the documentation. + + * Added g_autoptr() support to all public types. + + * Several other minor improvements and fixes. + Overview of changes in libmbim 1.22 ---------------------------------------- @@ -364,4 +430,4 @@ Overview of changes in libmbim 0.0.1 ---------------------------------------- -Initial release. \ No newline at end of file +Initial release. diff -Nru libmbim-1.22.0/aclocal.m4 libmbim-1.24.8/aclocal.m4 --- libmbim-1.22.0/aclocal.m4 2020-01-15 23:09:53.000000000 +0800 +++ libmbim-1.24.8/aclocal.m4 2021-06-02 22:06:02.000000000 +0800 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.16.1 -*- Autoconf -*- +# generated automatically by aclocal 1.16.3 -*- Autoconf -*- -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2020 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -14,8 +14,8 @@ m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, -[m4_warning([this file was generated for autoconf 2.69. +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],, +[m4_warning([this file was generated for autoconf 2.71. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) @@ -1228,7 +1228,7 @@ [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])]) ])dnl PKG_HAVE_DEFINE_WITH_MODULES -# Copyright (C) 2002-2018 Free Software Foundation, Inc. +# Copyright (C) 2002-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1243,7 +1243,7 @@ [am__api_version='1.16' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.16.1], [], +m4_if([$1], [1.16.3], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -1259,14 +1259,14 @@ # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.16.1])dnl +[AM_AUTOMAKE_VERSION([1.16.3])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1318,7 +1318,7 @@ # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997-2018 Free Software Foundation, Inc. +# Copyright (C) 1997-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1349,7 +1349,7 @@ Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1540,7 +1540,7 @@ # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1579,7 +1579,9 @@ done if test $am_rc -ne 0; then AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments - for automatic dependency tracking. Try re-running configure with the + for automatic dependency tracking. If GNU make was not used, consider + re-running the configure script with MAKE="gmake" (or whatever is + necessary). You can also try re-running configure with the '--disable-dependency-tracking' option to at least be able to build the package (albeit without support for automatic dependency tracking).]) fi @@ -1606,7 +1608,7 @@ # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1803,7 +1805,7 @@ done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1824,7 +1826,7 @@ fi AC_SUBST([install_sh])]) -# Copyright (C) 2003-2018 Free Software Foundation, Inc. +# Copyright (C) 2003-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1846,7 +1848,7 @@ # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1881,7 +1883,7 @@ # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1924,7 +1926,7 @@ # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997-2018 Free Software Foundation, Inc. +# Copyright (C) 1997-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1945,12 +1947,7 @@ [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac + MISSING="\${SHELL} '$am_aux_dir/missing'" fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then @@ -1963,7 +1960,7 @@ # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1992,7 +1989,7 @@ AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2039,7 +2036,7 @@ # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2122,12 +2119,14 @@ m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])]) else - dnl Query Python for its version number. Getting [:3] seems to be - dnl the best way to do this; it's what "site.py" does in the standard - dnl library. + dnl Query Python for its version number. Although site.py simply uses + dnl sys.version[:3], printing that failed with Python 3.10, since the + dnl trailing zero was eliminated. So now we output just the major + dnl and minor version numbers, as numbers. Apparently the tertiary + dnl version is not of interest. AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version], - [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`]) + [am_cv_python_version=`$PYTHON -c "import sys; print('%u.%u' % sys.version_info[[:2]])"`]) AC_SUBST([PYTHON_VERSION], [$am_cv_python_version]) dnl Use the values of $prefix and $exec_prefix for the corresponding @@ -2277,7 +2276,7 @@ sys.exit(sys.hexversion < minverhex)" AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])]) -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2296,7 +2295,7 @@ # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2377,7 +2376,7 @@ rm -f conftest.file ]) -# Copyright (C) 2009-2018 Free Software Foundation, Inc. +# Copyright (C) 2009-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2437,7 +2436,7 @@ _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2465,7 +2464,7 @@ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006-2018 Free Software Foundation, Inc. +# Copyright (C) 2006-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2484,7 +2483,7 @@ # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004-2018 Free Software Foundation, Inc. +# Copyright (C) 2004-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2616,6 +2615,7 @@ ]) # _AM_PROG_TAR m4_include([m4/gtk-doc.m4]) +m4_include([m4/introspection.m4]) m4_include([m4/libtool.m4]) m4_include([m4/ltoptions.m4]) m4_include([m4/ltsugar.m4]) diff -Nru libmbim-1.22.0/build-aux/Makefile.am libmbim-1.24.8/build-aux/Makefile.am --- libmbim-1.22.0/build-aux/Makefile.am 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/build-aux/Makefile.am 2020-07-10 16:12:29.000000000 +0800 @@ -1,2 +1,4 @@ -SUBDIRS = templates mbim-codegen +SUBDIRS = templates mbim-codegen . + +EXTRA_DIST = mbim-mkenums diff -Nru libmbim-1.22.0/build-aux/Makefile.in libmbim-1.24.8/build-aux/Makefile.in --- libmbim-1.22.0/build-aux/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/build-aux/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -90,9 +90,10 @@ subdir = build-aux ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -193,7 +194,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -207,7 +207,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -224,6 +223,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -333,6 +340,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -341,7 +349,8 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -SUBDIRS = templates mbim-codegen +SUBDIRS = templates mbim-codegen . +EXTRA_DIST = mbim-mkenums all: all-recursive .SUFFIXES: diff -Nru libmbim-1.22.0/build-aux/mbim-codegen/Makefile.in libmbim-1.24.8/build-aux/mbim-codegen/Makefile.in --- libmbim-1.22.0/build-aux/mbim-codegen/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/build-aux/mbim-codegen/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -90,9 +90,10 @@ subdir = build-aux/mbim-codegen ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -133,7 +134,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -147,7 +147,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -164,6 +163,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -273,6 +280,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/build-aux/mbim-codegen/Message.py libmbim-1.24.8/build-aux/mbim-codegen/Message.py --- libmbim-1.22.0/build-aux/mbim-codegen/Message.py 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/build-aux/mbim-codegen/Message.py 2021-06-02 19:05:37.000000000 +0800 @@ -111,6 +111,9 @@ if 'query' in dictionary: self.has_query = True self.query = dictionary['query'] + self.query_since = dictionary['since-ex']['query'] if 'since-ex' in dictionary else dictionary['since'] if 'since' in dictionary else None + if self.query_since is None: + raise ValueError('Message ' + self.name + ' (query) requires a "since" tag specifying the major version where it was introduced') validate_fields(self.query) else: self.has_query = False @@ -120,6 +123,9 @@ if 'set' in dictionary: self.has_set = True self.set = dictionary['set'] + self.set_since = dictionary['since-ex']['set'] if 'since-ex' in dictionary else dictionary['since'] if 'since' in dictionary else None + if self.set_since is None: + raise ValueError('Message ' + self.name + ' (set) requires a "since" tag specifying the major version where it was introduced') validate_fields(self.set) else: self.has_set = False @@ -130,6 +136,9 @@ if 'response' in dictionary: self.has_response = True self.response = dictionary['response'] + self.response_since = dictionary['since-ex']['response'] if 'since-ex' in dictionary else dictionary['since'] if 'since' in dictionary else None + if self.response_since is None: + raise ValueError('Message ' + self.name + ' (response) requires a "since" tag specifying the major version where it was introduced') validate_fields(self.response) else: self.has_response = False @@ -139,6 +148,9 @@ if 'notification' in dictionary: self.has_notification = True self.notification = dictionary['notification'] + self.notification_since = dictionary['since-ex']['notification'] if 'since-ex' in dictionary else dictionary['since'] if 'since' in dictionary else None + if self.notification_since is None: + raise ValueError('Message ' + self.name + ' (notification) requires a "since" tag specifying the major version where it was introduced') validate_fields(self.notification) else: self.has_notification = False @@ -166,149 +178,153 @@ if self.has_query: utils.add_separator(hfile, 'Message (Query)', self.fullname); utils.add_separator(cfile, 'Message (Query)', self.fullname); - self._emit_message_creator(hfile, cfile, 'query', self.query) + self._emit_message_creator(hfile, cfile, 'query', self.query, self.query_since) self._emit_message_printable(cfile, 'query', self.query) if self.has_set: utils.add_separator(hfile, 'Message (Set)', self.fullname); utils.add_separator(cfile, 'Message (Set)', self.fullname); - self._emit_message_creator(hfile, cfile, 'set', self.set) + self._emit_message_creator(hfile, cfile, 'set', self.set, self.set_since) self._emit_message_printable(cfile, 'set', self.set) if self.has_response: utils.add_separator(hfile, 'Message (Response)', self.fullname); utils.add_separator(cfile, 'Message (Response)', self.fullname); - self._emit_message_parser(hfile, cfile, 'response', self.response) + self._emit_message_parser(hfile, cfile, 'response', self.response, self.response_since) self._emit_message_printable(cfile, 'response', self.response) if self.has_notification: utils.add_separator(hfile, 'Message (Notification)', self.fullname); utils.add_separator(cfile, 'Message (Notification)', self.fullname); - self._emit_message_parser(hfile, cfile, 'notification', self.notification) + self._emit_message_parser(hfile, cfile, 'notification', self.notification, self.notification_since) self._emit_message_printable(cfile, 'notification', self.notification) """ Emit message creator """ - def _emit_message_creator(self, hfile, cfile, message_type, fields): + def _emit_message_creator(self, hfile, cfile, message_type, fields, since): translations = { 'message' : self.name, 'service' : self.service, + 'since' : since, 'underscore' : utils.build_underscore_name (self.fullname), 'message_type' : message_type, 'message_type_upper' : message_type.upper(), 'service_underscore_upper' : utils.build_underscore_name (self.service).upper(), 'cid_enum_name' : self.cid_enum_name } + template = ( '\n' - 'MbimMessage *${underscore}_${message_type}_new (\n') + '/**\n' + ' * ${underscore}_${message_type}_new:\n') for field in fields: + translations['name'] = field['name'] translations['field'] = utils.build_underscore_name_from_camelcase (field['name']) translations['struct'] = field['struct-type'] if 'struct-type' in field else '' translations['public'] = field['public-format'] if 'public-format' in field else field['format'] + translations['array_size'] = field['array-size'] if 'array-size' in field else '' inner_template = '' if field['format'] == 'byte-array': - inner_template = (' const guint8 *${field},\n') + inner_template = (' * @${field}: (in)(element-type guint8)(array fixed-size=${array_size}): the \'${name}\' field, given as an array of ${array_size} #guint8 values.\n') elif field['format'] == 'unsized-byte-array' or \ field['format'] == 'ref-byte-array' or \ field['format'] == 'ref-byte-array-no-offset': - inner_template = (' const guint32 ${field}_size,\n' - ' const guint8 *${field},\n') + inner_template = (' * @${field}_size: (in): size of the ${field} array.\n' + ' * @${field}: (in)(element-type guint8)(array length=${field}_size): the \'${name}\' field, given as an array of #guint8 values.\n') elif field['format'] == 'uuid': - inner_template = (' const MbimUuid *${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as a #MbimUuid.\n') elif field['format'] == 'guint32': - inner_template = (' ${public} ${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as a #${public}.\n') elif field['format'] == 'guint64': - inner_template = (' ${public} ${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as a #${public}.\n') elif field['format'] == 'string': - inner_template = (' const gchar *${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as a string.\n') elif field['format'] == 'string-array': - inner_template = (' const gchar *const *${field},\n') + inner_template = (' * @${field}: (in)(type GStrv): the \'${name}\' field, given as an array of strings.\n') elif field['format'] == 'struct': - inner_template = (' const ${struct} *${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as a #${struct}.\n') elif field['format'] == 'struct-array': - inner_template = (' const ${struct} *const *${field},\n') + inner_template = (' * @${field}: (in)(array zero-terminated=1)(element-type ${struct}): the \'${name}\' field, given as an array of #${struct}s.\n') elif field['format'] == 'ref-struct-array': - inner_template = (' const ${struct} *const *${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as an array of #${struct}s.\n') elif field['format'] == 'ipv4': - inner_template = (' const MbimIPv4 *${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as a #MbimIPv4.\n') elif field['format'] == 'ref-ipv4': - inner_template = (' const MbimIPv4 *${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as a #MbimIPv4.\n') elif field['format'] == 'ipv4-array': - inner_template = (' const MbimIPv4 *${field},\n') + inner_template = (' * @${field}: (in)(array zero-terminated=1)(element-type MbimIPv4): the \'${name}\' field, given as an array of #MbimIPv4.\n') elif field['format'] == 'ipv6': - inner_template = (' const MbimIPv6 *${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as a #MbimIPv6.\n') elif field['format'] == 'ref-ipv6': - inner_template = (' const MbimIPv6 *${field},\n') + inner_template = (' * @${field}: (in): the \'${name}\' field, given as a #MbimIPv6.\n') elif field['format'] == 'ipv6-array': - inner_template = (' const MbimIPv6 *${field},\n') + inner_template = (' * @${field}: (in)(array zero-terminated=1)(element-type MbimIPv6): the \'${name}\' field, given as an array of #MbimIPv6.\n') template += (string.Template(inner_template).substitute(translations)) template += ( - ' GError **error);\n') - hfile.write(string.Template(template).substitute(translations)) - - template = ( - '\n' - '/**\n' - ' * ${underscore}_${message_type}_new:\n') + ' * @error: return location for error or %NULL.\n' + ' *\n' + ' * Create a new request for the \'${message}\' ${message_type} command in the \'${service}\' service.\n' + ' *\n' + ' * Returns: a newly allocated #MbimMessage, which should be freed with mbim_message_unref().\n' + ' *\n' + ' * Since: ${since}\n' + ' */\n' + 'MbimMessage *${underscore}_${message_type}_new (\n') for field in fields: - translations['name'] = field['name'] translations['field'] = utils.build_underscore_name_from_camelcase (field['name']) translations['struct'] = field['struct-type'] if 'struct-type' in field else '' translations['public'] = field['public-format'] if 'public-format' in field else field['format'] - translations['array_size'] = field['array-size'] if 'array-size' in field else '' inner_template = '' if field['format'] == 'byte-array': - inner_template = (' * @${field}: the \'${name}\' field, given as an array of ${array_size} #guint8 values.\n') + inner_template = (' const guint8 *${field},\n') elif field['format'] == 'unsized-byte-array' or \ field['format'] == 'ref-byte-array' or \ field['format'] == 'ref-byte-array-no-offset': - inner_template = (' * @${field}_size: size of the ${field} array.\n' - ' * @${field}: the \'${name}\' field, given as an array of #guint8 values.\n') + inner_template = (' const guint32 ${field}_size,\n' + ' const guint8 *${field},\n') elif field['format'] == 'uuid': - inner_template = (' * @${field}: the \'${name}\' field, given as a #MbimUuid.\n') + inner_template = (' const MbimUuid *${field},\n') elif field['format'] == 'guint32': - inner_template = (' * @${field}: the \'${name}\' field, given as a #${public}.\n') + inner_template = (' ${public} ${field},\n') elif field['format'] == 'guint64': - inner_template = (' * @${field}: the \'${name}\' field, given as a #${public}.\n') + inner_template = (' ${public} ${field},\n') elif field['format'] == 'string': - inner_template = (' * @${field}: the \'${name}\' field, given as a string.\n') + inner_template = (' const gchar *${field},\n') elif field['format'] == 'string-array': - inner_template = (' * @${field}: the \'${name}\' field, given as an array of strings.\n') + inner_template = (' const gchar *const *${field},\n') elif field['format'] == 'struct': - inner_template = (' * @${field}: the \'${name}\' field, given as a #${struct}.\n') + inner_template = (' const ${struct} *${field},\n') elif field['format'] == 'struct-array': - inner_template = (' * @${field}: the \'${name}\' field, given as an array of #${struct}s.\n') + inner_template = (' const ${struct} *const *${field},\n') elif field['format'] == 'ref-struct-array': - inner_template = (' * @${field}: the \'${name}\' field, given as an array of #${struct}s.\n') + inner_template = (' const ${struct} *const *${field},\n') elif field['format'] == 'ipv4': - inner_template = (' * @${field}: the \'${name}\' field, given as a #MbimIPv4.\n') + inner_template = (' const MbimIPv4 *${field},\n') elif field['format'] == 'ref-ipv4': - inner_template = (' * @${field}: the \'${name}\' field, given as a #MbimIPv4.\n') + inner_template = (' const MbimIPv4 *${field},\n') elif field['format'] == 'ipv4-array': - inner_template = (' * @${field}: the \'${name}\' field, given as an array of #MbimIPv4.\n') + inner_template = (' const MbimIPv4 *${field},\n') elif field['format'] == 'ipv6': - inner_template = (' * @${field}: the \'${name}\' field, given as a #MbimIPv6.\n') + inner_template = (' const MbimIPv6 *${field},\n') elif field['format'] == 'ref-ipv6': - inner_template = (' * @${field}: the \'${name}\' field, given as a #MbimIPv6.\n') + inner_template = (' const MbimIPv6 *${field},\n') elif field['format'] == 'ipv6-array': - inner_template = (' * @${field}: the \'${name}\' field, given as an array of #MbimIPv6.\n') + inner_template = (' const MbimIPv6 *${field},\n') template += (string.Template(inner_template).substitute(translations)) template += ( - ' * @error: return location for error or %NULL.\n' - ' *\n' - ' * Create a new request for the \'${message}\' ${message_type} command in the \'${service}\' service.\n' - ' *\n' - ' * Returns: a newly allocated #MbimMessage, which should be freed with mbim_message_unref().\n' - ' */\n' + ' GError **error);\n') + hfile.write(string.Template(template).substitute(translations)) + + template = ( + '\n' 'MbimMessage *\n' '${underscore}_${message_type}_new (\n') @@ -439,124 +455,128 @@ """ Emit message parser """ - def _emit_message_parser(self, hfile, cfile, message_type, fields): + def _emit_message_parser(self, hfile, cfile, message_type, fields, since): translations = { 'message' : self.name, 'service' : self.service, + 'since' : since, 'underscore' : utils.build_underscore_name (self.fullname), 'message_type' : message_type, 'message_type_upper' : message_type.upper(), 'service_underscore_upper' : utils.build_underscore_name (self.service).upper() } + template = ( '\n' - 'gboolean ${underscore}_${message_type}_parse (\n' - ' const MbimMessage *message,\n') + '/**\n' + ' * ${underscore}_${message_type}_parse:\n' + ' * @message: the #MbimMessage.\n') for field in fields: translations['field'] = utils.build_underscore_name_from_camelcase(field['name']) + translations['name'] = field['name'] translations['public'] = field['public-format'] if 'public-format' in field else field['format'] translations['struct'] = field['struct-type'] if 'struct-type' in field else '' + translations['struct_underscore'] = utils.build_underscore_name_from_camelcase (translations['struct']) + translations['array_size'] = field['array-size'] if 'array-size' in field else '' inner_template = '' if field['format'] == 'byte-array': - inner_template = (' const guint8 **out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer none)(element-type guint8)(array fixed-size=${array_size}): return location for an array of ${array_size} #guint8 values. Do not free the returned value, it is owned by @message.\n') elif field['format'] == 'unsized-byte-array' or field['format'] == 'ref-byte-array': - inner_template = (' guint32 *out_${field}_size,\n' - ' const guint8 **out_${field},\n') + inner_template = (' * @out_${field}_size: (out)(optional): return location for the size of the ${field} array.\n' + ' * @out_${field}: (out)(optional)(transfer none)(element-type guint8)(array length=out_${field}_size): return location for an array of #guint8 values. Do not free the returned value, it is owned by @message.\n') elif field['format'] == 'uuid': - inner_template = (' const MbimUuid **out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer none): return location for a #MbimUuid, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') elif field['format'] == 'guint32': - inner_template = (' ${public} *out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer none): return location for a #${public}, or %NULL if the \'${name}\' field is not needed.\n') elif field['format'] == 'guint64': - inner_template = (' ${public} *out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer none): return location for a #guint64, or %NULL if the \'${name}\' field is not needed.\n') elif field['format'] == 'string': - inner_template = (' gchar **out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer full): return location for a newly allocated string, or %NULL if the \'${name}\' field is not needed. Free the returned value with g_free().\n') elif field['format'] == 'string-array': - inner_template = (' gchar ***out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer full)(type GStrv): return location for a newly allocated array of strings, or %NULL if the \'${name}\' field is not needed. Free the returned value with g_strfreev().\n') elif field['format'] == 'struct': - inner_template = (' ${struct} **out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer full): return location for a newly allocated #${struct}, or %NULL if the \'${name}\' field is not needed. Free the returned value with ${struct_underscore}_free().\n') elif field['format'] == 'struct-array': - inner_template = (' ${struct} ***out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer full)(array zero-terminated=1)(element-type ${struct}): return location for a newly allocated array of #${struct}s, or %NULL if the \'${name}\' field is not needed. Free the returned value with ${struct_underscore}_array_free().\n') elif field['format'] == 'ref-struct-array': - inner_template = (' ${struct} ***out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer full)(array zero-terminated=1)(element-type ${struct}): return location for a newly allocated array of #${struct}s, or %NULL if the \'${name}\' field is not needed. Free the returned value with ${struct_underscore}_array_free().\n') elif field['format'] == 'ipv4': - inner_template = (' const MbimIPv4 **out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer none): return location for a #MbimIPv4, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') elif field['format'] == 'ref-ipv4': - inner_template = (' const MbimIPv4 **out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer none): return location for a #MbimIPv4, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') elif field['format'] == 'ipv4-array': - inner_template = (' MbimIPv4 **out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer full)(array zero-terminated=1)(element-type MbimIPv4): return location for a newly allocated array of #MbimIPv4s, or %NULL if the \'${name}\' field is not needed. Free the returned value with g_free().\n') elif field['format'] == 'ipv6': - inner_template = (' const MbimIPv6 **out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer none): return location for a #MbimIPv6, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') elif field['format'] == 'ref-ipv6': - inner_template = (' const MbimIPv6 **out_${field},\n') + inner_template = (' * @out_${field}: (out)(optional)(transfer none): return location for a #MbimIPv6, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') elif field['format'] == 'ipv6-array': - inner_template = (' MbimIPv6 **out_${field},\n') - else: - raise ValueError('Cannot handle field type \'%s\'' % field['format']) + inner_template = (' * @out_${field}: (out)(optional)(transfer full)(array zero-terminated=1)(element-type MbimIPv6): return location for a newly allocated array of #MbimIPv6s, or %NULL if the \'${name}\' field is not needed. Free the returned value with g_free().\n') template += (string.Template(inner_template).substitute(translations)) template += ( - ' GError **error);\n') - hfile.write(string.Template(template).substitute(translations)) - - template = ( - '\n' - '/**\n' - ' * ${underscore}_${message_type}_parse:\n' - ' * @message: the #MbimMessage.\n') + ' * @error: return location for error or %NULL.\n' + ' *\n' + ' * Parses and returns parameters of the \'${message}\' ${message_type} command in the \'${service}\' service.\n' + ' *\n' + ' * Returns: %TRUE if the message was correctly parsed, %FALSE if @error is set.\n' + ' *\n' + ' * Since: ${since}\n' + ' */\n' + 'gboolean ${underscore}_${message_type}_parse (\n' + ' const MbimMessage *message,\n') for field in fields: translations['field'] = utils.build_underscore_name_from_camelcase(field['name']) - translations['name'] = field['name'] translations['public'] = field['public-format'] if 'public-format' in field else field['format'] translations['struct'] = field['struct-type'] if 'struct-type' in field else '' - translations['struct_underscore'] = utils.build_underscore_name_from_camelcase (translations['struct']) - translations['array_size'] = field['array-size'] if 'array-size' in field else '' inner_template = '' if field['format'] == 'byte-array': - inner_template = (' * @out_${field}: return location for an array of ${array_size} #guint8 values. Do not free the returned value, it is owned by @message.\n') + inner_template = (' const guint8 **out_${field},\n') elif field['format'] == 'unsized-byte-array' or field['format'] == 'ref-byte-array': - inner_template = (' * @out_${field}_size: return location for the size of the ${field} array.\n' - ' * @out_${field}: return location for an array of #guint8 values. Do not free the returned value, it is owned by @message.\n') + inner_template = (' guint32 *out_${field}_size,\n' + ' const guint8 **out_${field},\n') elif field['format'] == 'uuid': - inner_template = (' * @out_${field}: return location for a #MbimUuid, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') + inner_template = (' const MbimUuid **out_${field},\n') elif field['format'] == 'guint32': - inner_template = (' * @out_${field}: return location for a #${public}, or %NULL if the \'${name}\' field is not needed.\n') + inner_template = (' ${public} *out_${field},\n') elif field['format'] == 'guint64': - inner_template = (' * @out_${field}: return location for a #guint64, or %NULL if the \'${name}\' field is not needed.\n') + inner_template = (' ${public} *out_${field},\n') elif field['format'] == 'string': - inner_template = (' * @out_${field}: return location for a newly allocated string, or %NULL if the \'${name}\' field is not needed. Free the returned value with g_free().\n') + inner_template = (' gchar **out_${field},\n') elif field['format'] == 'string-array': - inner_template = (' * @out_${field}: return location for a newly allocated array of strings, or %NULL if the \'${name}\' field is not needed. Free the returned value with g_strfreev().\n') + inner_template = (' gchar ***out_${field},\n') elif field['format'] == 'struct': - inner_template = (' * @out_${field}: return location for a newly allocated #${struct}, or %NULL if the \'${name}\' field is not needed. Free the returned value with ${struct_underscore}_free().\n') + inner_template = (' ${struct} **out_${field},\n') elif field['format'] == 'struct-array': - inner_template = (' * @out_${field}: return location for a newly allocated array of #${struct}s, or %NULL if the \'${name}\' field is not needed. Free the returned value with ${struct_underscore}_array_free().\n') + inner_template = (' ${struct}Array **out_${field},\n') elif field['format'] == 'ref-struct-array': - inner_template = (' * @out_${field}: return location for a newly allocated array of #${struct}s, or %NULL if the \'${name}\' field is not needed. Free the returned value with ${struct_underscore}_array_free().\n') + inner_template = (' ${struct}Array **out_${field},\n') elif field['format'] == 'ipv4': - inner_template = (' * @out_${field}: return location for a #MbimIPv4, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') + inner_template = (' const MbimIPv4 **out_${field},\n') elif field['format'] == 'ref-ipv4': - inner_template = (' * @out_${field}: return location for a #MbimIPv4, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') + inner_template = (' const MbimIPv4 **out_${field},\n') elif field['format'] == 'ipv4-array': - inner_template = (' * @out_${field}: return location for a newly allocated array of #MbimIPv4s, or %NULL if the \'${name}\' field is not needed. Free the returned value with g_free().\n') + inner_template = (' MbimIPv4 **out_${field},\n') elif field['format'] == 'ipv6': - inner_template = (' * @out_${field}: return location for a #MbimIPv6, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') + inner_template = (' const MbimIPv6 **out_${field},\n') elif field['format'] == 'ref-ipv6': - inner_template = (' * @out_${field}: return location for a #MbimIPv6, or %NULL if the \'${name}\' field is not needed. Do not free the returned value, it is owned by @message.\n') + inner_template = (' const MbimIPv6 **out_${field},\n') elif field['format'] == 'ipv6-array': - inner_template = (' * @out_${field}: return location for a newly allocated array of #MbimIPv6s, or %NULL if the \'${name}\' field is not needed. Free the returned value with g_free().\n') + inner_template = (' MbimIPv6 **out_${field},\n') + else: + raise ValueError('Cannot handle field type \'%s\'' % field['format']) template += (string.Template(inner_template).substitute(translations)) template += ( - ' * @error: return location for error or %NULL.\n' - ' *\n' - ' * Parses and returns parameters of the \'${message}\' ${message_type} command in the \'${service}\' service.\n' - ' *\n' - ' * Returns: %TRUE if the message was correctly parsed, %FALSE if @error is set.\n' - ' */\n' + ' GError **error);\n') + hfile.write(string.Template(template).substitute(translations)) + + template = ( + '\n' 'gboolean\n' '${underscore}_${message_type}_parse (\n' ' const MbimMessage *message,\n') @@ -585,9 +605,9 @@ elif field['format'] == 'struct': inner_template = (' ${struct} **out_${field},\n') elif field['format'] == 'struct-array': - inner_template = (' ${struct} ***out_${field},\n') + inner_template = (' ${struct}Array **out_${field},\n') elif field['format'] == 'ref-struct-array': - inner_template = (' ${struct} ***out_${field},\n') + inner_template = (' ${struct}Array **out_${field},\n') elif field['format'] == 'ipv4': inner_template = (' const MbimIPv4 **out_${field},\n') elif field['format'] == 'ref-ipv4': @@ -1069,15 +1089,14 @@ elif field['format'] == 'uuid': inner_template += ( - ' const MbimUuid *tmp;\n' - ' gchar *tmpstr;\n' + ' const MbimUuid *tmp;\n' + ' g_autofree gchar *tmpstr = NULL;\n' '\n' ' if (!_mbim_message_read_uuid (message, offset, &tmp, &inner_error))\n' ' goto out;\n' ' offset += 16;\n' ' tmpstr = mbim_uuid_get_printable (tmp);\n' - ' g_string_append_printf (str, "\'%s\'", tmpstr);\n' - ' g_free (tmpstr);\n') + ' g_string_append_printf (str, "\'%s\'", tmpstr);\n') elif field['format'] == 'guint32' or \ field['format'] == 'guint64': @@ -1101,11 +1120,10 @@ ' g_string_append_printf (str, "\'%s\'", ${public_underscore}_get_string ((${public})tmp));\n' '#elif defined __${public_underscore_upper}_IS_FLAGS__\n' ' {\n' - ' gchar *tmpstr;\n' + ' g_autofree gchar *tmpstr = NULL;\n' '\n' ' tmpstr = ${public_underscore}_build_string_from_mask ((${public})tmp);\n' ' g_string_append_printf (str, "\'%s\'", tmpstr);\n' - ' g_free (tmpstr);\n' ' }\n' '#else\n' '# error neither enum nor flags\n' @@ -1120,17 +1138,16 @@ elif field['format'] == 'string': inner_template += ( - ' gchar *tmp;\n' + ' g_autofree gchar *tmp = NULL;\n' '\n' ' if (!_mbim_message_read_string (message, 0, offset, &tmp, &inner_error))\n' ' goto out;\n' ' offset += 8;\n' - ' g_string_append_printf (str, "\'%s\'", tmp);\n' - ' g_free (tmp);\n') + ' g_string_append_printf (str, "\'%s\'", tmp);\n') elif field['format'] == 'string-array': inner_template += ( - ' gchar **tmp;\n' + ' g_auto(GStrv) tmp = NULL;\n' ' guint i;\n' '\n' ' if (!_mbim_message_read_string_array (message, _${array_size_field}, 0, offset, &tmp, &inner_error))\n' @@ -1143,15 +1160,14 @@ ' if (i < (_${array_size_field} - 1))\n' ' g_string_append (str, ", ");\n' ' }\n' - ' g_string_append (str, "\'");\n' - ' g_strfreev (tmp);\n') + ' g_string_append (str, "\'");\n') elif field['format'] == 'struct': inner_template += ( - ' ${struct_type} *tmp;\n' + ' g_autoptr(${struct_type}) tmp = NULL;\n' + ' g_autofree gchar *new_line_prefix = NULL;\n' + ' g_autofree gchar *struct_str = NULL;\n' ' guint32 bytes_read = 0;\n' - ' gchar *new_line_prefix;\n' - ' gchar *struct_str;\n' '\n' ' tmp = _mbim_message_read_${struct_name}_struct (message, offset, &bytes_read, &inner_error);\n' ' if (!tmp)\n' @@ -1161,15 +1177,12 @@ ' new_line_prefix = g_strdup_printf ("%s ", line_prefix);\n' ' struct_str = _mbim_message_print_${struct_name}_struct (tmp, new_line_prefix);\n' ' g_string_append (str, struct_str);\n' - ' g_free (struct_str);\n' - ' g_string_append_printf (str, "%s }\\n", line_prefix);\n' - ' g_free (new_line_prefix);\n' - ' _${struct_name}_free (tmp);\n') + ' g_string_append_printf (str, "%s }\\n", line_prefix);\n') elif field['format'] == 'struct-array' or field['format'] == 'ref-struct-array': inner_template += ( - ' ${struct_type} **tmp;\n' - ' gchar *new_line_prefix;\n' + ' g_autoptr(${struct_type}Array) tmp = NULL;\n' + ' g_autofree gchar *new_line_prefix = NULL;\n' ' guint i;\n' '\n') @@ -1188,17 +1201,14 @@ ' new_line_prefix = g_strdup_printf ("%s ", line_prefix);\n' ' g_string_append (str, "\'{\\n");\n' ' for (i = 0; i < _${array_size_field}; i++) {\n' - ' gchar *struct_str;\n' + ' g_autofree gchar *struct_str = NULL;\n' '\n' ' g_string_append_printf (str, "%s [%u] = {\\n", line_prefix, i);\n' ' struct_str = _mbim_message_print_${struct_name}_struct (tmp[i], new_line_prefix);\n' ' g_string_append (str, struct_str);\n' - ' g_free (struct_str);\n' ' g_string_append_printf (str, "%s },\\n", line_prefix);\n' ' }\n' - ' g_string_append_printf (str, "%s }\'", line_prefix);\n' - ' g_free (new_line_prefix);\n' - ' ${struct_name}_array_free (tmp);\n') + ' g_string_append_printf (str, "%s }\'", line_prefix);\n') elif field['format'] == 'ipv4' or \ field['format'] == 'ref-ipv4' or \ @@ -1212,14 +1222,14 @@ ' const MbimIPv4 *tmp;\n') elif field['format'] == 'ipv4-array': inner_template += ( - ' MbimIPv4 *tmp;\n') + ' g_autofree MbimIPv4 *tmp = NULL;\n') elif field['format'] == 'ipv6' or \ field['format'] == 'ref-ipv6': inner_template += ( ' const MbimIPv6 *tmp;\n') elif field['format'] == 'ipv6-array': inner_template += ( - ' MbimIPv6 *tmp;\n') + ' g_autofree MbimIPv6 *tmp = NULL;\n') inner_template += ( ' guint array_size;\n' @@ -1267,8 +1277,8 @@ ' g_string_append (str, "\'");\n' ' if (tmp) {\n' ' for (i = 0; i < array_size; i++) {\n' - ' GInetAddress *addr;\n' - ' gchar *tmpstr;\n' + ' g_autoptr(GInetAddress) addr = NULL;\n' + ' g_autofree gchar *tmpstr = NULL;\n' '\n') if field['format'] == 'ipv4' or \ @@ -1285,19 +1295,12 @@ inner_template += ( ' tmpstr = g_inet_address_to_string (addr);\n' ' g_string_append_printf (str, "%s", tmpstr);\n' - ' g_free (tmpstr);\n' - ' g_object_unref (addr);\n' ' if (i < (array_size - 1))\n' ' g_string_append (str, ", ");\n' ' }\n' ' }\n' ' g_string_append (str, "\'");\n') - if field['format'] == 'ipv4-array' or \ - field['format'] == 'ipv6-array': - inner_template += ( - ' g_free (tmp);\n') - else: raise ValueError('Field format \'%s\' not printable' % field['format']) diff -Nru libmbim-1.22.0/build-aux/mbim-codegen/Struct.py libmbim-1.24.8/build-aux/mbim-codegen/Struct.py --- libmbim-1.22.0/build-aux/mbim-codegen/Struct.py 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/build-aux/mbim-codegen/Struct.py 2021-06-02 19:05:37.000000000 +0800 @@ -18,7 +18,6 @@ # import string - import utils """ @@ -32,6 +31,9 @@ def __init__(self, dictionary): self.name = dictionary['name'] self.contents = dictionary['contents'] + self.since = dictionary['since'] if 'since' in dictionary else None + if self.since is None: + raise ValueError('Struct ' + self.name + ' requires a "since" tag specifying the major version where it was introduced') # Whether the struct is used as a single field, or as an array of # fields. Will be updated after having created the object. @@ -60,7 +62,8 @@ Emit the new struct type """ def _emit_type(self, hfile): - translations = { 'name' : self.name } + translations = { 'name' : self.name, + 'since' : self.since } template = ( '\n' '/**\n' @@ -109,6 +112,8 @@ template += string.Template(inner_template).substitute(translations) template += ( + ' *\n' + ' * Since: ${since}\n' ' */\n' 'typedef struct {\n') for field in self.contents: @@ -166,14 +171,24 @@ Emit the type's free methods """ def _emit_free(self, hfile, cfile): - translations = { 'name' : self.name, + translations = { 'name' : self.name, + 'since' : self.since, 'name_underscore' : utils.build_underscore_name_from_camelcase(self.name) } template = '' if self.single_member == True: template = ( '\n' - 'void ${name_underscore}_free (${name} *var);\n') + '/**\n' + ' * ${name_underscore}_free:\n' + ' * @var: a #${name}.\n' + ' *\n' + ' * Frees the memory allocated for the #${name}.\n' + ' *\n' + ' * Since: ${since}\n' + ' */\n' + 'void ${name_underscore}_free (${name} *var);\n' + 'G_DEFINE_AUTOPTR_CLEANUP_FUNC (${name}, ${name_underscore}_free)\n') hfile.write(string.Template(template).substitute(translations)) @@ -227,12 +242,6 @@ if self.single_member == True: template = ( '\n' - '/**\n' - ' * ${name_underscore}_free:\n' - ' * @var: a #${name}.\n' - ' *\n' - ' * Frees the memory allocated for the #${name}.\n' - ' */\n' 'void\n' '${name_underscore}_free (${name} *var)\n' '{\n' @@ -241,21 +250,34 @@ cfile.write(string.Template(template).substitute(translations)) if self.array_member: + # TypeArray was introduced in 1.24 + translations['array_since'] = self.since if utils.version_compare('1.24', self.since) > 0 else '1.24' template = ( '\n' - 'void ${name_underscore}_array_free (${name} **array);\n') - hfile.write(string.Template(template).substitute(translations)) - - template = ( - '\n' + '/**\n' + ' * ${name}Array:\n' + ' *\n' + ' * A NULL-terminated array of ${name} elements.\n' + ' *\n' + ' * Since: ${array_since}\n' + ' */\n' + 'typedef ${name} *${name}Array;\n' '/**\n' ' * ${name_underscore}_array_free:\n' ' * @array: a #NULL terminated array of #${name} structs.\n' ' *\n' ' * Frees the memory allocated for the array of #${name}s.\n' + ' *\n' + ' * Since: ${since}\n' ' */\n' + 'void ${name_underscore}_array_free (${name}Array *array);\n' + 'G_DEFINE_AUTOPTR_CLEANUP_FUNC (${name}Array, ${name_underscore}_array_free)\n') + hfile.write(string.Template(template).substitute(translations)) + + template = ( + '\n' 'void\n' - '${name_underscore}_array_free (${name} **array)\n' + '${name_underscore}_array_free (${name}Array *array)\n' '{\n' ' guint32 i;\n' '\n' @@ -365,8 +387,8 @@ field['format'] == 'ipv6' or \ field['format'] == 'ref-ipv6': inner_template += ( - ' GInetAddress *addr;\n' - ' gchar *tmpstr;\n' + ' g_autoptr(GInetAddress) addr = NULL;\n' + ' g_autofree gchar *tmpstr = NULL;\n' '\n') if field['format'] == 'ipv4' or \ @@ -380,9 +402,7 @@ inner_template += ( ' tmpstr = g_inet_address_to_string (addr);\n' - ' g_string_append_printf (str, "\'%s\'", tmpstr);\n' - ' g_free (tmpstr);\n' - ' g_object_unref (addr);\n') + ' g_string_append_printf (str, "\'%s\'", tmpstr);\n') else: raise ValueError('Cannot handle format \'%s\' in struct' % field['format']) @@ -605,11 +625,11 @@ ' guint32 array_size,\n' ' guint32 relative_offset_array_start,\n' ' gboolean refs,\n' - ' ${name} ***out_array,\n' + ' ${name}Array **out_array,\n' ' GError **error)\n' '{\n' ' GError *inner_error = NULL;\n' - ' ${name} **out;\n' + ' ${name}Array *out;\n' ' guint32 i;\n' ' guint32 offset;\n' '\n' @@ -852,6 +872,9 @@ template = ( '\n' '${struct_name}\n') + if self.array_member == True: + template += ( + '${struct_name}Array\n') if self.single_member == True: template += ( '${name_underscore}_free\n') diff -Nru libmbim-1.22.0/build-aux/mbim-codegen/utils.py libmbim-1.24.8/build-aux/mbim-codegen/utils.py --- libmbim-1.22.0/build-aux/mbim-codegen/utils.py 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/build-aux/mbim-codegen/utils.py 2020-07-10 16:12:29.000000000 +0800 @@ -189,3 +189,24 @@ else: out += line return out + +""" +Compare two version strings given in MAJOR.MINOR format. +Just to avoid needing to include e.g. packaging.version.parse just for this +""" +def version_compare(v1,v2): + major_v1 = int(v1.partition(".")[0]) + major_v2 = int(v2.partition(".")[0]) + if major_v2 > major_v1: + return 1 + if major_v2 < major_v1: + return -1 + # major_v2 == major_v1 + minor_v1 = int(v1.partition(".")[2]) + minor_v2 = int(v2.partition(".")[2]) + if minor_v2 > minor_v1: + return 1 + if minor_v2 < minor_v1: + return -1 + # minor_v2 == minor_v1 + return 0 diff -Nru libmbim-1.22.0/build-aux/mbim-mkenums libmbim-1.24.8/build-aux/mbim-mkenums --- libmbim-1.22.0/build-aux/mbim-mkenums 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/build-aux/mbim-mkenums 2020-07-10 16:12:29.000000000 +0800 @@ -0,0 +1,788 @@ +#!/usr/bin/env python3 + +# qmi-mkenums is ported from glib-mkenums. +# Same license applies. +# The 'since' tag support was introduced in upstream GLib 2.66, +# so remove this custom mkenums once 2.66 is required in the project. + +# If the code below looks horrible and unpythonic, do not panic. +# +# It is. +# +# This is a manual conversion from the original Perl script to +# Python. Improvements are welcome. +# +from __future__ import print_function, unicode_literals + +import argparse +import os +import re +import sys +import tempfile +import io +import errno +import codecs +import locale + +VERSION_STR = '''glib-mkenums version 2.64.2 +glib-mkenums comes with ABSOLUTELY NO WARRANTY. +You may redistribute copies of glib-mkenums under the terms of +the GNU General Public License which can be found in the +GLib source package. Sources, examples and contact +information are available at http://www.gtk.org''' + +# pylint: disable=too-few-public-methods +class Color: + '''ANSI Terminal colors''' + GREEN = '\033[1;32m' + BLUE = '\033[1;34m' + YELLOW = '\033[1;33m' + RED = '\033[1;31m' + END = '\033[0m' + + +def print_color(msg, color=Color.END, prefix='MESSAGE'): + '''Print a string with a color prefix''' + if os.isatty(sys.stderr.fileno()): + real_prefix = '{start}{prefix}{end}'.format(start=color, prefix=prefix, end=Color.END) + else: + real_prefix = prefix + print('{prefix}: {msg}'.format(prefix=real_prefix, msg=msg), file=sys.stderr) + + +def print_error(msg): + '''Print an error, and terminate''' + print_color(msg, color=Color.RED, prefix='ERROR') + sys.exit(1) + + +def print_warning(msg, fatal=False): + '''Print a warning, and optionally terminate''' + if fatal: + color = Color.RED + prefix = 'ERROR' + else: + color = Color.YELLOW + prefix = 'WARNING' + print_color(msg, color, prefix) + if fatal: + sys.exit(1) + + +def print_info(msg): + '''Print a message''' + print_color(msg, color=Color.GREEN, prefix='INFO') + + +def get_rspfile_args(rspfile): + ''' + Response files are useful on Windows where there is a command-line character + limit of 8191 because when passing sources as arguments to glib-mkenums this + limit can be exceeded in large codebases. + + There is no specification for response files and each tool that supports it + generally writes them out in slightly different ways, but some sources are: + https://docs.microsoft.com/en-us/visualstudio/msbuild/msbuild-response-files + https://docs.microsoft.com/en-us/windows/desktop/midl/the-response-file-command + ''' + import shlex + if not os.path.isfile(rspfile): + sys.exit('Response file {!r} does not exist'.format(rspfile)) + try: + with open(rspfile, 'r') as f: + cmdline = f.read() + except OSError as e: + sys.exit('Response file {!r} could not be read: {}' + .format(rspfile, e.strerror)) + return shlex.split(cmdline) + + +def write_output(output): + global output_stream + print(output, file=output_stream) + + +# Python 2 defaults to ASCII in case stdout is redirected. +# This should make it match Python 3, which uses the locale encoding. +if sys.stdout.encoding is None: + output_stream = codecs.getwriter( + locale.getpreferredencoding())(sys.stdout) +else: + output_stream = sys.stdout + + +# Some source files aren't UTF-8 and the old perl version didn't care. +# Replace invalid data with a replacement character to keep things working. +# https://bugzilla.gnome.org/show_bug.cgi?id=785113#c20 +def replace_and_warn(err): + # 7 characters of context either side of the offending character + print_warning('UnicodeWarning: {} at {} ({})'.format( + err.reason, err.start, + err.object[err.start - 7:err.end + 7])) + return ('?', err.end) + +codecs.register_error('replace_and_warn', replace_and_warn) + + +# glib-mkenums.py +# Information about the current enumeration +flags = None # Is enumeration a bitmask? +option_underscore_name = '' # Overridden underscore variant of the enum name + # for example to fix the cases we don't get the + # mixed-case -> underscorized transform right. +option_lowercase_name = '' # DEPRECATED. A lower case name to use as part + # of the *_get_type() function, instead of the + # one that we guess. For instance, when an enum + # uses abnormal capitalization and we can not + # guess where to put the underscores. +option_since = '' # User provided version info for the enum. +seenbitshift = 0 # Have we seen bitshift operators? +enum_prefix = None # Prefix for this enumeration +enumname = '' # Name for this enumeration +enumshort = '' # $enumname without prefix +enumname_prefix = '' # prefix of $enumname +enumindex = 0 # Global enum counter +firstenum = 1 # Is this the first enumeration per file? +entries = [] # [ name, val ] for each entry +sandbox = None # sandbox for safe evaluation of expressions + +output = '' # Filename to write result into + +def parse_trigraph(opts): + result = {} + + for opt in re.split(r'\s*,\s*', opts): + opt = re.sub(r'^\s*', '', opt) + opt = re.sub(r'\s*$', '', opt) + m = re.search(r'(\w+)(?:=(.+))?', opt) + assert m is not None + groups = m.groups() + key = groups[0] + if len(groups) > 1: + val = groups[1] + else: + val = 1 + result[key] = val + return result + +def parse_entries(file, file_name): + global entries, enumindex, enumname, seenbitshift, flags + looking_for_name = False + + while True: + line = file.readline() + if not line: + break + + line = line.strip() + + # read lines until we have no open comments + while re.search(r'/\*([^*]|\*(?!/))*$', line): + line += file.readline() + + # strip comments w/o options + line = re.sub(r'''/\*(?!<) + ([^*]+|\*(?!/))* + \*/''', '', line, flags=re.X) + + line = line.rstrip() + + # skip empty lines + if len(line.strip()) == 0: + continue + + if looking_for_name: + m = re.match(r'\s*(\w+)', line) + if m: + enumname = m.group(1) + return True + + # Handle include files + m = re.match(r'\#include\s*<([^>]*)>', line) + if m: + newfilename = os.path.join("..", m.group(1)) + newfile = io.open(newfilename, encoding="utf-8", + errors="replace_and_warn") + + if not parse_entries(newfile, newfilename): + return False + else: + continue + + m = re.match(r'\s*\}\s*(\w+)', line) + if m: + enumname = m.group(1) + enumindex += 1 + return 1 + + m = re.match(r'\s*\}', line) + if m: + enumindex += 1 + looking_for_name = True + continue + + m = re.match(r'''\s* + (\w+)\s* # name + (?:=( # value + \s*\w+\s*\(.*\)\s* # macro with multiple args + | # OR + (?:[^,/]|/(?!\*))* # anything but a comma or comment + ))?,?\s* + (?:/\*< # options + (([^*]|\*(?!/))*) + >\s*\*/)?,? + \s*$''', line, flags=re.X) + if m: + groups = m.groups() + name = groups[0] + value = None + options = None + if len(groups) > 1: + value = groups[1] + if len(groups) > 2: + options = groups[2] + if flags is None and value is not None and '<<' in value: + seenbitshift = 1 + + if options is not None: + options = parse_trigraph(options) + if 'skip' not in options: + entries.append((name, value, options.get('nick'))) + else: + entries.append((name, value)) + elif re.match(r's*\#', line): + pass + else: + print_warning('Failed to parse "{}" in {}'.format(line, file_name)) + return False + +help_epilog = '''Production text substitutions: + \u0040EnumName\u0040 PrefixTheXEnum + \u0040enum_name\u0040 prefix_the_xenum + \u0040ENUMNAME\u0040 PREFIX_THE_XENUM + \u0040ENUMSHORT\u0040 THE_XENUM + \u0040ENUMPREFIX\u0040 PREFIX + \u0040enumsince\u0040 the user-provided since value given (qmi-mkenums only) + \u0040VALUENAME\u0040 PREFIX_THE_XVALUE + \u0040valuenick\u0040 the-xvalue + \u0040valuenum\u0040 the integer value (limited support, Since: 2.26) + \u0040type\u0040 either enum or flags + \u0040Type\u0040 either Enum or Flags + \u0040TYPE\u0040 either ENUM or FLAGS + \u0040filename\u0040 name of current input file + \u0040basename\u0040 base name of the current input file (Since: 2.22) +''' + + +# production variables: +idprefix = "" # "G", "Gtk", etc +symprefix = "" # "g", "gtk", etc, if not just lc($idprefix) +fhead = "" # output file header +fprod = "" # per input file production +ftail = "" # output file trailer +eprod = "" # per enum text (produced prior to value itarations) +vhead = "" # value header, produced before iterating over enum values +vprod = "" # value text, produced for each enum value +vtail = "" # value tail, produced after iterating over enum values +comment_tmpl = "" # comment template + +def read_template_file(file): + global idprefix, symprefix, fhead, fprod, ftail, eprod, vhead, vprod, vtail, comment_tmpl + tmpl = {'file-header': fhead, + 'file-production': fprod, + 'file-tail': ftail, + 'enumeration-production': eprod, + 'value-header': vhead, + 'value-production': vprod, + 'value-tail': vtail, + 'comment': comment_tmpl, + } + in_ = 'junk' + + ifile = io.open(file, encoding="utf-8", errors="replace_and_warn") + for line in ifile: + m = re.match(r'\/\*\*\*\s+(BEGIN|END)\s+([\w-]+)\s+\*\*\*\/', line) + if m: + if in_ == 'junk' and m.group(1) == 'BEGIN' and m.group(2) in tmpl: + in_ = m.group(2) + continue + elif in_ == m.group(2) and m.group(1) == 'END' and m.group(2) in tmpl: + in_ = 'junk' + continue + else: + sys.exit("Malformed template file " + file) + + if in_ != 'junk': + tmpl[in_] += line + + if in_ != 'junk': + sys.exit("Malformed template file " + file) + + fhead = tmpl['file-header'] + fprod = tmpl['file-production'] + ftail = tmpl['file-tail'] + eprod = tmpl['enumeration-production'] + vhead = tmpl['value-header'] + vprod = tmpl['value-production'] + vtail = tmpl['value-tail'] + comment_tmpl = tmpl['comment'] + +parser = argparse.ArgumentParser(epilog=help_epilog, + formatter_class=argparse.RawDescriptionHelpFormatter) + +parser.add_argument('--identifier-prefix', default='', dest='idprefix', + help='Identifier prefix') +parser.add_argument('--symbol-prefix', default='', dest='symprefix', + help='Symbol prefix') +parser.add_argument('--fhead', default=[], dest='fhead', action='append', + help='Output file header') +parser.add_argument('--ftail', default=[], dest='ftail', action='append', + help='Output file footer') +parser.add_argument('--fprod', default=[], dest='fprod', action='append', + help='Put out TEXT every time a new input file is being processed.') +parser.add_argument('--eprod', default=[], dest='eprod', action='append', + help='Per enum text, produced prior to value iterations') +parser.add_argument('--vhead', default=[], dest='vhead', action='append', + help='Value header, produced before iterating over enum values') +parser.add_argument('--vprod', default=[], dest='vprod', action='append', + help='Value text, produced for each enum value.') +parser.add_argument('--vtail', default=[], dest='vtail', action='append', + help='Value tail, produced after iterating over enum values') +parser.add_argument('--comments', default='', dest='comment_tmpl', + help='Comment structure') +parser.add_argument('--template', default='', dest='template', + help='Template file') +parser.add_argument('--output', default=None, dest='output') +parser.add_argument('--version', '-v', default=False, action='store_true', dest='version', + help='Print version information') +parser.add_argument('args', nargs='*', + help='One or more input files, or a single argument @rspfile_path ' + 'pointing to a file that contains the actual arguments') + +# Support reading an rspfile of the form @filename which contains the args +# to be parsed +if len(sys.argv) == 2 and sys.argv[1].startswith('@'): + args = get_rspfile_args(sys.argv[1][1:]) +else: + args = sys.argv[1:] + +options = parser.parse_args(args) + +if options.version: + print(VERSION_STR) + sys.exit(0) + +def unescape_cmdline_args(arg): + arg = arg.replace('\\n', '\n') + arg = arg.replace('\\r', '\r') + return arg.replace('\\t', '\t') + +if options.template != '': + read_template_file(options.template) + +idprefix += options.idprefix +symprefix += options.symprefix + +# This is a hack to maintain some semblance of backward compatibility with +# the old, Perl-based glib-mkenums. The old tool had an implicit ordering +# on the arguments and templates; each argument was parsed in order, and +# all the strings appended. This allowed developers to write: +# +# glib-mkenums \ +# --fhead ... \ +# --template a-template-file.c.in \ +# --ftail ... +# +# And have the fhead be prepended to the file-head stanza in the template, +# as well as the ftail be appended to the file-tail stanza in the template. +# Short of throwing away ArgumentParser and going over sys.argv[] element +# by element, we can simulate that behaviour by ensuring some ordering in +# how we build the template strings: +# +# - the head stanzas are always prepended to the template +# - the prod stanzas are always appended to the template +# - the tail stanzas are always appended to the template +# +# Within each instance of the command line argument, we append each value +# to the array in the order in which it appears on the command line. +fhead = ''.join([unescape_cmdline_args(x) for x in options.fhead]) + fhead +vhead = ''.join([unescape_cmdline_args(x) for x in options.vhead]) + vhead + +fprod += ''.join([unescape_cmdline_args(x) for x in options.fprod]) +eprod += ''.join([unescape_cmdline_args(x) for x in options.eprod]) +vprod += ''.join([unescape_cmdline_args(x) for x in options.vprod]) + +ftail = ftail + ''.join([unescape_cmdline_args(x) for x in options.ftail]) +vtail = vtail + ''.join([unescape_cmdline_args(x) for x in options.vtail]) + +if options.comment_tmpl != '': + comment_tmpl = unescape_cmdline_args(options.comment_tmpl) +elif comment_tmpl == "": + # default to C-style comments + comment_tmpl = "/* \u0040comment\u0040 */" + +output = options.output + +if output is not None: + (out_dir, out_fn) = os.path.split(options.output) + out_suffix = '_' + os.path.splitext(out_fn)[1] + if out_dir == '': + out_dir = '.' + fd, filename = tempfile.mkstemp(dir=out_dir) + os.close(fd) + tmpfile = io.open(filename, "w", encoding="utf-8") + output_stream = tmpfile +else: + tmpfile = None + +# put auto-generation comment +comment = comment_tmpl.replace('\u0040comment\u0040', + 'This file is generated by glib-mkenums, do ' + 'not modify it. This code is licensed under ' + 'the same license as the containing project. ' + 'Note that it links to GLib, so must comply ' + 'with the LGPL linking clauses.') +write_output("\n" + comment + '\n') + +def replace_specials(prod): + prod = prod.replace(r'\\a', r'\a') + prod = prod.replace(r'\\b', r'\b') + prod = prod.replace(r'\\t', r'\t') + prod = prod.replace(r'\\n', r'\n') + prod = prod.replace(r'\\f', r'\f') + prod = prod.replace(r'\\r', r'\r') + prod = prod.rstrip() + return prod + + +def warn_if_filename_basename_used(section, prod): + for substitution in ('\u0040filename\u0040', + '\u0040basename\u0040'): + if substitution in prod: + print_warning('{} used in {} section.'.format(substitution, + section)) + +if len(fhead) > 0: + prod = fhead + warn_if_filename_basename_used('file-header', prod) + prod = replace_specials(prod) + write_output(prod) + +def process_file(curfilename): + global entries, flags, seenbitshift, enum_prefix + firstenum = True + + try: + curfile = io.open(curfilename, encoding="utf-8", + errors="replace_and_warn") + except IOError as e: + if e.errno == errno.ENOENT: + print_warning('No file "{}" found.'.format(curfilename)) + return + raise + + while True: + line = curfile.readline() + if not line: + break + + line = line.strip() + + # read lines until we have no open comments + while re.search(r'/\*([^*]|\*(?!/))*$', line): + line += curfile.readline() + + # strip comments w/o options + line = re.sub(r'''/\*(?!<) + ([^*]+|\*(?!/))* + \*/''', '', line) + + # ignore forward declarations + if re.match(r'\s*typedef\s+enum.*;', line): + continue + + m = re.match(r'''\s*typedef\s+enum\s*[_A-Za-z]*[_A-Za-z0-9]*\s* + ({)?\s* + (?:/\*< + (([^*]|\*(?!/))*) + >\s*\*/)? + \s*({)?''', line, flags=re.X) + if m: + groups = m.groups() + if len(groups) >= 2 and groups[1] is not None: + options = parse_trigraph(groups[1]) + if 'skip' in options: + continue + enum_prefix = options.get('prefix', None) + flags = options.get('flags', None) + if 'flags' in options: + if flags is None: + flags = 1 + else: + flags = int(flags) + option_lowercase_name = options.get('lowercase_name', None) + option_underscore_name = options.get('underscore_name', None) + option_since = options.get('since', None) + else: + enum_prefix = None + flags = None + option_lowercase_name = None + option_underscore_name = None + option_since = None + + if option_lowercase_name is not None: + if option_underscore_name is not None: + print_warning("lowercase_name overridden with underscore_name") + option_lowercase_name = None + else: + print_warning("lowercase_name is deprecated, use underscore_name") + + # Didn't have trailing '{' look on next lines + if groups[0] is None and (len(groups) < 4 or groups[3] is None): + while True: + line = curfile.readline() + if not line: + print_error("Syntax error when looking for opening { in enum") + if re.match(r'\s*\{', line): + break + + seenbitshift = 0 + entries = [] + + # Now parse the entries + parse_entries(curfile, curfilename) + + # figure out if this was a flags or enums enumeration + if flags is None: + flags = seenbitshift + + # Autogenerate a prefix + if enum_prefix is None: + for entry in entries: + if len(entry) < 3 or entry[2] is None: + name = entry[0] + if enum_prefix is not None: + enum_prefix = os.path.commonprefix([name, enum_prefix]) + else: + enum_prefix = name + if enum_prefix is None: + enum_prefix = "" + else: + # Trim so that it ends in an underscore + enum_prefix = re.sub(r'_[^_]*$', '_', enum_prefix) + else: + # canonicalize user defined prefixes + enum_prefix = enum_prefix.upper() + enum_prefix = enum_prefix.replace('-', '_') + enum_prefix = re.sub(r'(.*)([^_])$', r'\1\2_', enum_prefix) + + fixed_entries = [] + for e in entries: + name = e[0] + num = e[1] + if len(e) < 3 or e[2] is None: + nick = re.sub(r'^' + enum_prefix, '', name) + nick = nick.replace('_', '-').lower() + e = (name, num, nick) + fixed_entries.append(e) + entries = fixed_entries + + # Spit out the output + if option_underscore_name is not None: + enumlong = option_underscore_name.upper() + enumsym = option_underscore_name.lower() + enumshort = re.sub(r'^[A-Z][A-Z0-9]*_', '', enumlong) + + enumname_prefix = re.sub('_' + enumshort + '$', '', enumlong) + elif symprefix == '' and idprefix == '': + # enumname is e.g. GMatchType + enspace = re.sub(r'^([A-Z][a-z]*).*$', r'\1', enumname) + + enumshort = re.sub(r'^[A-Z][a-z]*', '', enumname) + enumshort = re.sub(r'([^A-Z])([A-Z])', r'\1_\2', enumshort) + enumshort = re.sub(r'([A-Z][A-Z])([A-Z][0-9a-z])', r'\1_\2', enumshort) + enumshort = enumshort.upper() + + enumname_prefix = re.sub(r'^([A-Z][a-z]*).*$', r'\1', enumname).upper() + + enumlong = enspace.upper() + "_" + enumshort + enumsym = enspace.lower() + "_" + enumshort.lower() + + if option_lowercase_name is not None: + enumsym = option_lowercase_name + else: + enumshort = enumname + if idprefix: + enumshort = re.sub(r'^' + idprefix, '', enumshort) + else: + enumshort = re.sub(r'/^[A-Z][a-z]*', '', enumshort) + + enumshort = re.sub(r'([^A-Z])([A-Z])', r'\1_\2', enumshort) + enumshort = re.sub(r'([A-Z][A-Z])([A-Z][0-9a-z])', r'\1_\2', enumshort) + enumshort = enumshort.upper() + + if symprefix: + enumname_prefix = symprefix.upper() + else: + enumname_prefix = idprefix.upper() + + enumlong = enumname_prefix + "_" + enumshort + enumsym = enumlong.lower() + + if option_since is not None: + enumsince = option_since + else: + enumsince = "" + + if firstenum: + firstenum = False + + if len(fprod) > 0: + prod = fprod + base = os.path.basename(curfilename) + + prod = prod.replace('\u0040filename\u0040', curfilename) + prod = prod.replace('\u0040basename\u0040', base) + prod = replace_specials(prod) + + write_output(prod) + + if len(eprod) > 0: + prod = eprod + + prod = prod.replace('\u0040enum_name\u0040', enumsym) + prod = prod.replace('\u0040EnumName\u0040', enumname) + prod = prod.replace('\u0040ENUMSHORT\u0040', enumshort) + prod = prod.replace('\u0040ENUMNAME\u0040', enumlong) + prod = prod.replace('\u0040ENUMPREFIX\u0040', enumname_prefix) + prod = prod.replace('\u0040enumsince\u0040', enumsince) + if flags: + prod = prod.replace('\u0040type\u0040', 'flags') + else: + prod = prod.replace('\u0040type\u0040', 'enum') + if flags: + prod = prod.replace('\u0040Type\u0040', 'Flags') + else: + prod = prod.replace('\u0040Type\u0040', 'Enum') + if flags: + prod = prod.replace('\u0040TYPE\u0040', 'FLAGS') + else: + prod = prod.replace('\u0040TYPE\u0040', 'ENUM') + prod = replace_specials(prod) + write_output(prod) + + if len(vhead) > 0: + prod = vhead + prod = prod.replace('\u0040enum_name\u0040', enumsym) + prod = prod.replace('\u0040EnumName\u0040', enumname) + prod = prod.replace('\u0040ENUMSHORT\u0040', enumshort) + prod = prod.replace('\u0040ENUMNAME\u0040', enumlong) + prod = prod.replace('\u0040ENUMPREFIX\u0040', enumname_prefix) + prod = prod.replace('\u0040enumsince\u0040', enumsince) + if flags: + prod = prod.replace('\u0040type\u0040', 'flags') + else: + prod = prod.replace('\u0040type\u0040', 'enum') + if flags: + prod = prod.replace('\u0040Type\u0040', 'Flags') + else: + prod = prod.replace('\u0040Type\u0040', 'Enum') + if flags: + prod = prod.replace('\u0040TYPE\u0040', 'FLAGS') + else: + prod = prod.replace('\u0040TYPE\u0040', 'ENUM') + prod = replace_specials(prod) + write_output(prod) + + if len(vprod) > 0: + prod = vprod + next_num = 0 + + prod = replace_specials(prod) + for name, num, nick in entries: + tmp_prod = prod + + if '\u0040valuenum\u0040' in prod: + # only attempt to eval the value if it is requested + # this prevents us from throwing errors otherwise + if num is not None: + # use sandboxed evaluation as a reasonable + # approximation to C constant folding + inum = eval(num, {}, {}) + + # make sure it parsed to an integer + if not isinstance(inum, int): + sys.exit("Unable to parse enum value '%s'" % num) + num = inum + else: + num = next_num + + tmp_prod = tmp_prod.replace('\u0040valuenum\u0040', str(num)) + next_num = int(num) + 1 + + tmp_prod = tmp_prod.replace('\u0040VALUENAME\u0040', name) + tmp_prod = tmp_prod.replace('\u0040valuenick\u0040', nick) + if flags: + tmp_prod = tmp_prod.replace('\u0040type\u0040', 'flags') + else: + tmp_prod = tmp_prod.replace('\u0040type\u0040', 'enum') + if flags: + tmp_prod = tmp_prod.replace('\u0040Type\u0040', 'Flags') + else: + tmp_prod = tmp_prod.replace('\u0040Type\u0040', 'Enum') + if flags: + tmp_prod = tmp_prod.replace('\u0040TYPE\u0040', 'FLAGS') + else: + tmp_prod = tmp_prod.replace('\u0040TYPE\u0040', 'ENUM') + tmp_prod = tmp_prod.rstrip() + + write_output(tmp_prod) + + if len(vtail) > 0: + prod = vtail + prod = prod.replace('\u0040enum_name\u0040', enumsym) + prod = prod.replace('\u0040EnumName\u0040', enumname) + prod = prod.replace('\u0040ENUMSHORT\u0040', enumshort) + prod = prod.replace('\u0040ENUMNAME\u0040', enumlong) + prod = prod.replace('\u0040ENUMPREFIX\u0040', enumname_prefix) + prod = prod.replace('\u0040enumsince\u0040', enumsince) + if flags: + prod = prod.replace('\u0040type\u0040', 'flags') + else: + prod = prod.replace('\u0040type\u0040', 'enum') + if flags: + prod = prod.replace('\u0040Type\u0040', 'Flags') + else: + prod = prod.replace('\u0040Type\u0040', 'Enum') + if flags: + prod = prod.replace('\u0040TYPE\u0040', 'FLAGS') + else: + prod = prod.replace('\u0040TYPE\u0040', 'ENUM') + prod = replace_specials(prod) + write_output(prod) + +for fname in sorted(options.args): + process_file(fname) + +if len(ftail) > 0: + prod = ftail + warn_if_filename_basename_used('file-tail', prod) + prod = replace_specials(prod) + write_output(prod) + +# put auto-generation comment +comment = comment_tmpl +comment = comment.replace('\u0040comment\u0040', 'Generated data ends here') +write_output("\n" + comment + "\n") + +if tmpfile is not None: + tmpfilename = tmpfile.name + tmpfile.close() + + try: + os.unlink(options.output) + except OSError as error: + if error.errno != errno.ENOENT: + raise error + + os.rename(tmpfilename, options.output) diff -Nru libmbim-1.22.0/build-aux/templates/Makefile.in libmbim-1.24.8/build-aux/templates/Makefile.in --- libmbim-1.22.0/build-aux/templates/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/build-aux/templates/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -90,9 +90,10 @@ subdir = build-aux/templates ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -133,7 +134,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -147,7 +147,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -164,6 +163,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -273,6 +280,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/build-aux/templates/mbim-enum-types-template.c libmbim-1.24.8/build-aux/templates/mbim-enum-types-template.c --- libmbim-1.22.0/build-aux/templates/mbim-enum-types-template.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/build-aux/templates/mbim-enum-types-template.c 2021-06-02 19:05:37.000000000 +0800 @@ -21,30 +21,22 @@ GType @enum_name@_get_type (void) { - static volatile gsize g_define_type_id__volatile = 0; + static gsize g_define_type_id_initialized = 0; - if (g_once_init_enter (&g_define_type_id__volatile)) { + if (g_once_init_enter (&g_define_type_id_initialized)) { GType g_define_type_id = g_@type@_register_static (g_intern_static_string ("@EnumName@"), @enum_name@_values); - g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); + g_once_init_leave (&g_define_type_id_initialized, g_define_type_id); } - return g_define_type_id__volatile; + return g_define_type_id_initialized; } /* Enum-specific method to get the value as a string. * We get the nick of the GEnumValue. Note that this will be * valid even if the GEnumClass is not referenced anywhere. */ #if defined __@ENUMNAME@_IS_ENUM__ -/** - * @enum_name@_get_string: - * @val: a @EnumName@. - * - * Gets the nickname string for the #@EnumName@ specified at @val. - * - * Returns: (transfer none): a string with the nickname, or %NULL if not found. Do not free the returned value. - */ const gchar * @enum_name@_get_string (@EnumName@ val) { @@ -64,15 +56,6 @@ * Note that this will be valid even if the GFlagsClass is not referenced * anywhere. */ #if defined __@ENUMNAME@_IS_FLAGS__ -/** - * @enum_name@_build_string_from_mask: - * @mask: bitmask of @EnumName@ values. - * - * Builds a string containing a comma-separated list of nicknames for - * each #@EnumName@ in @mask. - * - * Returns: (transfer full): a string with the list of nicknames, or %NULL if none given. The returned value should be freed with g_free(). - */ gchar * @enum_name@_build_string_from_mask (@EnumName@ mask) { diff -Nru libmbim-1.22.0/build-aux/templates/mbim-enum-types-template.h libmbim-1.24.8/build-aux/templates/mbim-enum-types-template.h --- libmbim-1.22.0/build-aux/templates/mbim-enum-types-template.h 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/build-aux/templates/mbim-enum-types-template.h 2021-06-02 19:05:37.000000000 +0800 @@ -18,10 +18,31 @@ #define __@ENUMNAME@_IS_@TYPE@__ #if defined __@ENUMNAME@_IS_ENUM__ +/** + * @enum_name@_get_string: + * @val: a @EnumName@. + * + * Gets the nickname string for the #@EnumName@ specified at @val. + * + * Returns: (transfer none): a string with the nickname, or %NULL if not found. Do not free the returned value. + * + * Since: @enumsince@ + */ const gchar *@enum_name@_get_string (@EnumName@ val); #endif #if defined __@ENUMNAME@_IS_FLAGS__ +/** + * @enum_name@_build_string_from_mask: + * @mask: bitmask of @EnumName@ values. + * + * Builds a string containing a comma-separated list of nicknames for + * each #@EnumName@ in @mask. + * + * Returns: (transfer full): a string with the list of nicknames, or %NULL if none given. The returned value should be freed with g_free(). + * + * Since: @enumsince@ + */ gchar *@enum_name@_build_string_from_mask (@EnumName@ mask); #endif diff -Nru libmbim-1.22.0/build-aux/templates/mbim-error-types-template.c libmbim-1.24.8/build-aux/templates/mbim-error-types-template.c --- libmbim-1.22.0/build-aux/templates/mbim-error-types-template.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/build-aux/templates/mbim-error-types-template.c 2021-06-02 19:05:37.000000000 +0800 @@ -20,16 +20,16 @@ GType @enum_name@_get_type (void) { - static volatile gsize g_define_type_id__volatile = 0; + static gsize g_define_type_id_initialized = 0; - if (g_once_init_enter (&g_define_type_id__volatile)) { + if (g_once_init_enter (&g_define_type_id_initialized)) { GType g_define_type_id = g_@type@_register_static (g_intern_static_string ("@EnumName@"), @enum_name@_values); - g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); + g_once_init_leave (&g_define_type_id_initialized, g_define_type_id); } - return g_define_type_id__volatile; + return g_define_type_id_initialized; } /* Enum-specific method to get the value as a string. diff -Nru libmbim-1.22.0/compile libmbim-1.24.8/compile --- libmbim-1.22.0/compile 2020-01-15 17:57:37.000000000 +0800 +++ libmbim-1.24.8/compile 2021-06-02 22:06:03.000000000 +0800 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2020 Free Software Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify @@ -53,7 +53,7 @@ MINGW*) file_conv=mingw ;; - CYGWIN*) + CYGWIN* | MSYS*) file_conv=cygwin ;; *) @@ -67,7 +67,7 @@ mingw/*) file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` ;; - cygwin/*) + cygwin/* | msys/*) file=`cygpath -m "$file" || echo "$file"` ;; wine/*) diff -Nru libmbim-1.22.0/config.guess libmbim-1.24.8/config.guess --- libmbim-1.22.0/config.guess 2020-01-15 17:57:37.000000000 +0800 +++ libmbim-1.24.8/config.guess 2021-06-02 22:06:04.000000000 +0800 @@ -1,8 +1,8 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright 1992-2018 Free Software Foundation, Inc. +# Copyright 1992-2021 Free Software Foundation, Inc. -timestamp='2018-03-08' +timestamp='2021-01-25' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -27,12 +27,12 @@ # Originally written by Per Bothner; maintained since 2000 by Ben Elliston. # # You can get the latest version of this script from: -# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess +# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess # # Please send patches to . -me=`echo "$0" | sed -e 's,.*/,,'` +me=$(echo "$0" | sed -e 's,.*/,,') usage="\ Usage: $0 [OPTION] @@ -50,7 +50,7 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright 1992-2018 Free Software Foundation, Inc. +Copyright 1992-2021 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -84,8 +84,6 @@ exit 1 fi -trap 'exit 1' 1 2 15 - # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a @@ -96,66 +94,82 @@ # Portable tmp directory creation inspired by the Autoconf team. -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > "$dummy.c" ; - for c in cc gcc c89 c99 ; do - if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ; set_cc_for_build= ;' +tmp= +# shellcheck disable=SC2172 +trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 + +set_cc_for_build() { + # prevent multiple calls if $tmp is already set + test "$tmp" && return 0 + : "${TMPDIR=/tmp}" + # shellcheck disable=SC2039 + { tmp=$( (umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null) && test -n "$tmp" && test -d "$tmp" ; } || + { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } + dummy=$tmp/dummy + case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in + ,,) echo "int x;" > "$dummy.c" + for driver in cc gcc c89 c99 ; do + if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then + CC_FOR_BUILD="$driver" + break + fi + done + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; + esac +} # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then +if test -f /.attbin/uname ; then PATH=$PATH:/.attbin ; export PATH fi -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown +UNAME_MACHINE=$( (uname -m) 2>/dev/null) || UNAME_MACHINE=unknown +UNAME_RELEASE=$( (uname -r) 2>/dev/null) || UNAME_RELEASE=unknown +UNAME_SYSTEM=$( (uname -s) 2>/dev/null) || UNAME_SYSTEM=unknown +UNAME_VERSION=$( (uname -v) 2>/dev/null) || UNAME_VERSION=unknown case "$UNAME_SYSTEM" in Linux|GNU|GNU/*) - # If the system lacks a compiler, then just pick glibc. - # We could probably try harder. - LIBC=gnu + LIBC=unknown - eval "$set_cc_for_build" + set_cc_for_build cat <<-EOF > "$dummy.c" #include #if defined(__UCLIBC__) LIBC=uclibc #elif defined(__dietlibc__) LIBC=dietlibc - #else + #elif defined(__GLIBC__) LIBC=gnu + #else + #include + /* First heuristic to detect musl libc. */ + #ifdef __DEFINED_va_list + LIBC=musl + #endif #endif EOF - eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`" + eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g')" - # If ldd exists, use it to detect musl libc. - if command -v ldd >/dev/null && \ - ldd --version 2>&1 | grep -q ^musl - then - LIBC=musl + # Second heuristic to detect musl libc. + if [ "$LIBC" = unknown ] && + command -v ldd >/dev/null && + ldd --version 2>&1 | grep -q ^musl; then + LIBC=musl + fi + + # If the system lacks a compiler, then just pick glibc. + # We could probably try harder. + if [ "$LIBC" = unknown ]; then + LIBC=gnu fi ;; esac @@ -174,20 +188,20 @@ # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ - "/sbin/$sysctl" 2>/dev/null || \ - "/usr/sbin/$sysctl" 2>/dev/null || \ - echo unknown)` + UNAME_MACHINE_ARCH=$( (uname -p 2>/dev/null || \ + /sbin/sysctl -n hw.machine_arch 2>/dev/null || \ + /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \ + echo unknown)) case "$UNAME_MACHINE_ARCH" in + aarch64eb) machine=aarch64_be-unknown ;; armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-unknown ;; earmv*) - arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` - endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` + arch=$(echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,') + endian=$(echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p') machine="${arch}${endian}"-unknown ;; *) machine="$UNAME_MACHINE_ARCH"-unknown ;; @@ -199,7 +213,7 @@ os=netbsdelf ;; arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval "$set_cc_for_build" + set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ then @@ -218,7 +232,7 @@ case "$UNAME_MACHINE_ARCH" in earm*) expr='s/^earmv[0-9]/-eabi/;s/eb$//' - abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` + abi=$(echo "$UNAME_MACHINE_ARCH" | sed -e "$expr") ;; esac # The OS release @@ -231,24 +245,24 @@ release='-gnu' ;; *) - release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` + release=$(echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2) ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "$machine-${os}${release}${abi}" + echo "$machine-${os}${release}${abi-}" exit ;; *:Bitrig:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` + UNAME_MACHINE_ARCH=$(arch | sed 's/Bitrig.//') echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE" exit ;; *:OpenBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` + UNAME_MACHINE_ARCH=$(arch | sed 's/OpenBSD.//') echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE" exit ;; *:LibertyBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` + UNAME_MACHINE_ARCH=$(arch | sed 's/^.*BSD\.//') echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE" exit ;; *:MidnightBSD:*:*) @@ -260,6 +274,9 @@ *:SolidBSD:*:*) echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE" exit ;; + *:OS108:*:*) + echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE" + exit ;; macppc:MirBSD:*:*) echo powerpc-unknown-mirbsd"$UNAME_RELEASE" exit ;; @@ -269,26 +286,29 @@ *:Sortix:*:*) echo "$UNAME_MACHINE"-unknown-sortix exit ;; + *:Twizzler:*:*) + echo "$UNAME_MACHINE"-unknown-twizzler + exit ;; *:Redox:*:*) echo "$UNAME_MACHINE"-unknown-redox exit ;; mips:OSF1:*.*) - echo mips-dec-osf1 - exit ;; + echo mips-dec-osf1 + exit ;; alpha:OSF1:*:*) case $UNAME_RELEASE in *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $3}') ;; *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` + UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $4}') ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on # OSF/1 and Tru64 systems produced since 1995. I hope that # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. - ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` + ALPHA_CPU_TYPE=$(/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1) case "$ALPHA_CPU_TYPE" in "EV4 (21064)") UNAME_MACHINE=alpha ;; @@ -326,7 +346,7 @@ # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. - echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`" + echo "$UNAME_MACHINE"-dec-osf"$(echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz)" # Reset EXIT trap before exiting to avoid spurious non-zero exit code. exitcode=$? trap '' 0 @@ -360,7 +380,7 @@ exit ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then + if test "$( (/bin/universe) 2>/dev/null)" = att ; then echo pyramid-pyramid-sysv3 else echo pyramid-pyramid-bsd @@ -373,28 +393,28 @@ echo sparc-icl-nx6 exit ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) - case `/usr/bin/uname -p` in + case $(/usr/bin/uname -p) in sparc) echo sparc-icl-nx7; exit ;; esac ;; s390x:SunOS:*:*) - echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" + echo "$UNAME_MACHINE"-ibm-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')" exit ;; sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" + echo sparc-hal-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')" exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" + echo sparc-sun-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')" exit ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) echo i386-pc-auroraux"$UNAME_RELEASE" exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - eval "$set_cc_for_build" + set_cc_for_build SUN_ARCH=i386 # If there is a compiler, see if it is configured for 64-bit objects. # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. # This test works for both compilers. - if [ "$CC_FOR_BUILD" != no_compiler_found ]; then + if test "$CC_FOR_BUILD" != no_compiler_found; then if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null @@ -402,30 +422,30 @@ SUN_ARCH=x86_64 fi fi - echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" + echo "$SUN_ARCH"-pc-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')" exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" + echo sparc-sun-solaris3"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')" exit ;; sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in + case "$(/usr/bin/arch -k)" in Series*|S4*) - UNAME_RELEASE=`uname -v` + UNAME_RELEASE=$(uname -v) ;; esac # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`" + echo sparc-sun-sunos"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/')" exit ;; sun3*:SunOS:*:*) echo m68k-sun-sunos"$UNAME_RELEASE" exit ;; sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + UNAME_RELEASE=$( (sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null) test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 - case "`/bin/arch`" in + case "$(/bin/arch)" in sun3) echo m68k-sun-sunos"$UNAME_RELEASE" ;; @@ -482,7 +502,7 @@ echo clipper-intergraph-clix"$UNAME_RELEASE" exit ;; mips:*:*:UMIPS | mips:*:*:RISCos) - eval "$set_cc_for_build" + set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #ifdef __cplusplus #include /* for printf() prototype */ @@ -505,8 +525,8 @@ } EOF $CC_FOR_BUILD -o "$dummy" "$dummy.c" && - dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && - SYSTEM_NAME=`"$dummy" "$dummyarg"` && + dummyarg=$(echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p') && + SYSTEM_NAME=$("$dummy" "$dummyarg") && { echo "$SYSTEM_NAME"; exit; } echo mips-mips-riscos"$UNAME_RELEASE" exit ;; @@ -533,11 +553,11 @@ exit ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ] + UNAME_PROCESSOR=$(/usr/bin/uname -p) + if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110 then - if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \ - [ "$TARGET_BINARY_INTERFACE"x = x ] + if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \ + test "$TARGET_BINARY_INTERFACE"x = x then echo m88k-dg-dgux"$UNAME_RELEASE" else @@ -561,17 +581,17 @@ echo m68k-tektronix-bsd exit ;; *:IRIX*:*:*) - echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`" + echo mips-sgi-irix"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/g')" exit ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + exit ;; # Note that: echo "'$(uname -s)'" gives 'AIX ' i*86:AIX:*:*) echo i386-ibm-aix exit ;; ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` + if test -x /usr/bin/oslevel ; then + IBM_REV=$(/usr/bin/oslevel) else IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" fi @@ -579,7 +599,7 @@ exit ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval "$set_cc_for_build" + set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #include @@ -591,7 +611,7 @@ exit(0); } EOF - if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` + if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy") then echo "$SYSTEM_NAME" else @@ -604,15 +624,15 @@ fi exit ;; *:AIX:*:[4567]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` + IBM_CPU_ID=$(/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }') if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi - if [ -x /usr/bin/lslpp ] ; then - IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | - awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` + if test -x /usr/bin/lslpp ; then + IBM_REV=$(/usr/bin/lslpp -Lqc bos.rte.libc | + awk -F: '{ print $3 }' | sed s/[0-9]*$/0/) else IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" fi @@ -640,14 +660,14 @@ echo m68k-hp-bsd4.4 exit ;; 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` + HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//') case "$UNAME_MACHINE" in 9000/31?) HP_ARCH=m68000 ;; 9000/[34]??) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + if test -x /usr/bin/getconf; then + sc_cpu_version=$(/usr/bin/getconf SC_CPU_VERSION 2>/dev/null) + sc_kernel_bits=$(/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null) case "$sc_cpu_version" in 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 @@ -659,8 +679,8 @@ esac ;; esac fi - if [ "$HP_ARCH" = "" ]; then - eval "$set_cc_for_build" + if test "$HP_ARCH" = ""; then + set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #define _HPUX_SOURCE @@ -694,13 +714,13 @@ exit (0); } EOF - (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` + (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=$("$dummy") test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac - if [ "$HP_ARCH" = hppa2.0w ] + if test "$HP_ARCH" = hppa2.0w then - eval "$set_cc_for_build" + set_cc_for_build # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler @@ -722,11 +742,11 @@ echo "$HP_ARCH"-hp-hpux"$HPUX_REV" exit ;; ia64:HP-UX:*:*) - HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` + HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//') echo ia64-hp-hpux"$HPUX_REV" exit ;; 3050*:HI-UX:*:*) - eval "$set_cc_for_build" + set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #include int @@ -752,7 +772,7 @@ exit (0); } EOF - $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && + $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy") && { echo "$SYSTEM_NAME"; exit; } echo unknown-hitachi-hiuxwe2 exit ;; @@ -772,7 +792,7 @@ echo hppa1.0-hp-osf exit ;; i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then + if test -x /usr/sbin/sysversion ; then echo "$UNAME_MACHINE"-unknown-osf1mk else echo "$UNAME_MACHINE"-unknown-osf1 @@ -821,14 +841,14 @@ echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` - FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` + FUJITSU_PROC=$(uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz) + FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///') + FUJITSU_REL=$(echo "$UNAME_RELEASE" | sed -e 's/ /_/') echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` + FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///') + FUJITSU_REL=$(echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/') echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) @@ -840,15 +860,26 @@ *:BSD/OS:*:*) echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE" exit ;; + arm:FreeBSD:*:*) + UNAME_PROCESSOR=$(uname -p) + set_cc_for_build + if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_PCS_VFP + then + echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabi + else + echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabihf + fi + exit ;; *:FreeBSD:*:*) - UNAME_PROCESSOR=`/usr/bin/uname -p` + UNAME_PROCESSOR=$(/usr/bin/uname -p) case "$UNAME_PROCESSOR" in amd64) UNAME_PROCESSOR=x86_64 ;; i386) UNAME_PROCESSOR=i586 ;; esac - echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" + echo "$UNAME_PROCESSOR"-unknown-freebsd"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')" exit ;; i*:CYGWIN*:*) echo "$UNAME_MACHINE"-pc-cygwin @@ -881,21 +912,21 @@ echo "$UNAME_MACHINE"-pc-uwin exit ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) - echo x86_64-unknown-cygwin + echo x86_64-pc-cygwin exit ;; prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" + echo powerpcle-unknown-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')" exit ;; *:GNU:*:*) # the GNU system - echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`" + echo "$(echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,')-unknown-$LIBC$(echo "$UNAME_RELEASE"|sed -e 's,/.*$,,')" exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland - echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC" + echo "$UNAME_MACHINE-unknown-$(echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]")$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')-$LIBC" exit ;; - i*86:Minix:*:*) - echo "$UNAME_MACHINE"-pc-minix + *:Minix:*:*) + echo "$UNAME_MACHINE"-unknown-minix exit ;; aarch64:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" @@ -905,7 +936,7 @@ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + case $(sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null) in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; @@ -922,7 +953,7 @@ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; arm*:Linux:*:*) - eval "$set_cc_for_build" + set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then @@ -964,6 +995,9 @@ k1om:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; + loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; m32r*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; @@ -971,23 +1005,51 @@ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; mips:Linux:*:* | mips64:Linux:*:*) - eval "$set_cc_for_build" + set_cc_for_build + IS_GLIBC=0 + test x"${LIBC}" = xgnu && IS_GLIBC=1 sed 's/^ //' << EOF > "$dummy.c" #undef CPU - #undef ${UNAME_MACHINE} - #undef ${UNAME_MACHINE}el + #undef mips + #undef mipsel + #undef mips64 + #undef mips64el + #if ${IS_GLIBC} && defined(_ABI64) + LIBCABI=gnuabi64 + #else + #if ${IS_GLIBC} && defined(_ABIN32) + LIBCABI=gnuabin32 + #else + LIBCABI=${LIBC} + #endif + #endif + + #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 + CPU=mipsisa64r6 + #else + #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 + CPU=mipsisa32r6 + #else + #if defined(__mips64) + CPU=mips64 + #else + CPU=mips + #endif + #endif + #endif + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=${UNAME_MACHINE}el + MIPS_ENDIAN=el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=${UNAME_MACHINE} + MIPS_ENDIAN= #else - CPU= + MIPS_ENDIAN= #endif #endif EOF - eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`" - test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; } + eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI')" + test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; } ;; mips64el:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" @@ -1006,7 +1068,7 @@ exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + case $(grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2) in PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;; PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;; *) echo hppa-unknown-linux-"$LIBC" ;; @@ -1024,7 +1086,7 @@ ppcle:Linux:*:*) echo powerpcle-unknown-linux-"$LIBC" exit ;; - riscv32:Linux:*:* | riscv64:Linux:*:*) + riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; s390:Linux:*:* | s390x:Linux:*:*) @@ -1046,7 +1108,17 @@ echo "$UNAME_MACHINE"-dec-linux-"$LIBC" exit ;; x86_64:Linux:*:*) - echo "$UNAME_MACHINE"-pc-linux-"$LIBC" + set_cc_for_build + LIBCABI=$LIBC + if test "$CC_FOR_BUILD" != no_compiler_found; then + if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_X32 >/dev/null + then + LIBCABI="$LIBC"x32 + fi + fi + echo "$UNAME_MACHINE"-pc-linux-"$LIBCABI" exit ;; xtensa*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" @@ -1086,7 +1158,7 @@ echo "$UNAME_MACHINE"-pc-msdosdjgpp exit ;; i*86:*:4.*:*) - UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` + UNAME_REL=$(echo "$UNAME_RELEASE" | sed 's/\/MP$//') if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL" else @@ -1095,19 +1167,19 @@ exit ;; i*86:*:5:[678]*) # UnixWare 7.x, OpenUNIX and OpenServer 6. - case `/bin/uname -X | grep "^Machine"` in + case $(/bin/uname -X | grep "^Machine") in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac - echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}" + echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}" exit ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` + UNAME_REL=$( (/bin/uname -X|grep Release|sed -e 's/.*= //')) (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 @@ -1157,7 +1229,7 @@ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + && OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ @@ -1168,7 +1240,7 @@ NCR*:*:4.2:* | MPRAS*:*:4.2:*) OS_REL='.3' test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + && OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ @@ -1201,7 +1273,7 @@ exit ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` + UNAME_MACHINE=$( (uname -p) 2>/dev/null) echo "$UNAME_MACHINE"-sni-sysv4 else echo ns32k-sni-sysv @@ -1235,7 +1307,7 @@ echo mips-sony-newsos6 exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then + if test -d /usr/nec; then echo mips-nec-sysv"$UNAME_RELEASE" else echo mips-unknown-sysv"$UNAME_RELEASE" @@ -1283,44 +1355,48 @@ *:Rhapsody:*:*) echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE" exit ;; + arm64:Darwin:*:*) + echo aarch64-apple-darwin"$UNAME_RELEASE" + exit ;; *:Darwin:*:*) - UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - eval "$set_cc_for_build" - if test "$UNAME_PROCESSOR" = unknown ; then - UNAME_PROCESSOR=powerpc - fi - if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then - if [ "$CC_FOR_BUILD" != no_compiler_found ]; then - if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - case $UNAME_PROCESSOR in - i386) UNAME_PROCESSOR=x86_64 ;; - powerpc) UNAME_PROCESSOR=powerpc64 ;; - esac - fi - # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc - if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_PPC >/dev/null - then - UNAME_PROCESSOR=powerpc - fi + UNAME_PROCESSOR=$(uname -p) + case $UNAME_PROCESSOR in + unknown) UNAME_PROCESSOR=powerpc ;; + esac + if command -v xcode-select > /dev/null 2> /dev/null && \ + ! xcode-select --print-path > /dev/null 2> /dev/null ; then + # Avoid executing cc if there is no toolchain installed as + # cc will be a stub that puts up a graphical alert + # prompting the user to install developer tools. + CC_FOR_BUILD=no_compiler_found + else + set_cc_for_build + fi + if test "$CC_FOR_BUILD" != no_compiler_found; then + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + case $UNAME_PROCESSOR in + i386) UNAME_PROCESSOR=x86_64 ;; + powerpc) UNAME_PROCESSOR=powerpc64 ;; + esac + fi + # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc + if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_PPC >/dev/null + then + UNAME_PROCESSOR=powerpc fi elif test "$UNAME_PROCESSOR" = i386 ; then - # Avoid executing cc on OS X 10.9, as it ships with a stub - # that puts up a graphical alert prompting to install - # developer tools. Any system running Mac OS X 10.7 or - # later (Darwin 11 and later) is required to have a 64-bit - # processor. This is not true of the ARM version of Darwin - # that Apple uses in portable devices. - UNAME_PROCESSOR=x86_64 + # uname -m returns i386 or x86_64 + UNAME_PROCESSOR=$UNAME_MACHINE fi echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE" exit ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` + UNAME_PROCESSOR=$(uname -p) if test "$UNAME_PROCESSOR" = x86; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc @@ -1358,6 +1434,7 @@ # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. + # shellcheck disable=SC2154 if test "$cputype" = 386; then UNAME_MACHINE=i386 else @@ -1387,10 +1464,10 @@ echo mips-sei-seiux"$UNAME_RELEASE" exit ;; *:DragonFly:*:*) - echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" + echo "$UNAME_MACHINE"-unknown-dragonfly"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')" exit ;; *:*VMS:*:*) - UNAME_MACHINE=`(uname -p) 2>/dev/null` + UNAME_MACHINE=$( (uname -p) 2>/dev/null) case "$UNAME_MACHINE" in A*) echo alpha-dec-vms ; exit ;; I*) echo ia64-dec-vms ; exit ;; @@ -1400,13 +1477,13 @@ echo i386-pc-xenix exit ;; i*86:skyos:*:*) - echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`" + echo "$UNAME_MACHINE"-pc-skyos"$(echo "$UNAME_RELEASE" | sed -e 's/ .*$//')" exit ;; i*86:rdos:*:*) echo "$UNAME_MACHINE"-pc-rdos exit ;; - i*86:AROS:*:*) - echo "$UNAME_MACHINE"-pc-aros + *:AROS:*:*) + echo "$UNAME_MACHINE"-unknown-aros exit ;; x86_64:VMkernel:*:*) echo "$UNAME_MACHINE"-unknown-esx @@ -1414,8 +1491,148 @@ amd64:Isilon\ OneFS:*:*) echo x86_64-unknown-onefs exit ;; + *:Unleashed:*:*) + echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE" + exit ;; esac +# No uname command or uname output not recognized. +set_cc_for_build +cat > "$dummy.c" < +#include +#endif +#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) +#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) +#include +#if defined(_SIZE_T_) || defined(SIGLOST) +#include +#endif +#endif +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=$( (hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null); + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); +#endif + +#if defined (vax) +#if !defined (ultrix) +#include +#if defined (BSD) +#if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +#else +#if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +#else + printf ("vax-dec-bsd\n"); exit (0); +#endif +#endif +#else + printf ("vax-dec-bsd\n"); exit (0); +#endif +#else +#if defined(_SIZE_T_) || defined(SIGLOST) + struct utsname un; + uname (&un); + printf ("vax-dec-ultrix%s\n", un.release); exit (0); +#else + printf ("vax-dec-ultrix\n"); exit (0); +#endif +#endif +#endif +#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) +#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) +#if defined(_SIZE_T_) || defined(SIGLOST) + struct utsname *un; + uname (&un); + printf ("mips-dec-ultrix%s\n", un.release); exit (0); +#else + printf ("mips-dec-ultrix\n"); exit (0); +#endif +#endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=$($dummy) && + { echo "$SYSTEM_NAME"; exit; } + +# Apollos put the system type in the environment. +test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; } + echo "$0: unable to guess system type" >&2 case "$UNAME_MACHINE:$UNAME_SYSTEM" in @@ -1435,9 +1652,15 @@ operating system you are using. If your script is old, overwrite *all* copies of config.guess and config.sub with the latest versions from: - https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess + https://git.savannah.gnu.org/cgit/config.git/plain/config.guess and - https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub + https://git.savannah.gnu.org/cgit/config.git/plain/config.sub +EOF + +year=$(echo $timestamp | sed 's,-.*,,') +# shellcheck disable=SC2003 +if test "$(expr "$(date +%Y)" - "$year")" -lt 3 ; then + cat >&2 </dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` +uname -m = $( (uname -m) 2>/dev/null || echo unknown) +uname -r = $( (uname -r) 2>/dev/null || echo unknown) +uname -s = $( (uname -s) 2>/dev/null || echo unknown) +uname -v = $( (uname -v) 2>/dev/null || echo unknown) + +/usr/bin/uname -p = $( (/usr/bin/uname -p) 2>/dev/null) +/bin/uname -X = $( (/bin/uname -X) 2>/dev/null) + +hostinfo = $( (hostinfo) 2>/dev/null) +/bin/universe = $( (/bin/universe) 2>/dev/null) +/usr/bin/arch -k = $( (/usr/bin/arch -k) 2>/dev/null) +/bin/arch = $( (/bin/arch) 2>/dev/null) +/usr/bin/oslevel = $( (/usr/bin/oslevel) 2>/dev/null) +/usr/convex/getsysinfo = $( (/usr/convex/getsysinfo) 2>/dev/null) UNAME_MACHINE = "$UNAME_MACHINE" UNAME_RELEASE = "$UNAME_RELEASE" UNAME_SYSTEM = "$UNAME_SYSTEM" UNAME_VERSION = "$UNAME_VERSION" EOF +fi exit 1 diff -Nru libmbim-1.22.0/config.h.in libmbim-1.24.8/config.h.in --- libmbim-1.22.0/config.h.in 2020-01-15 23:09:58.000000000 +0800 +++ libmbim-1.24.8/config.h.in 2021-06-02 22:06:03.000000000 +0800 @@ -6,12 +6,12 @@ /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H -/* Define to 1 if you have the header file. */ -#undef HAVE_MEMORY_H - /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H +/* Define to 1 if you have the header file. */ +#undef HAVE_STDIO_H + /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H @@ -57,7 +57,9 @@ /* Define to the version of this package. */ #undef PACKAGE_VERSION -/* Define to 1 if you have the ANSI C header files. */ +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ #undef STDC_HEADERS /* Define if you want udev support */ diff -Nru libmbim-1.22.0/config.sub libmbim-1.24.8/config.sub --- libmbim-1.22.0/config.sub 2020-01-15 17:57:37.000000000 +0800 +++ libmbim-1.24.8/config.sub 2021-06-02 22:06:04.000000000 +0800 @@ -1,8 +1,8 @@ #! /bin/sh # Configuration validation subroutine script. -# Copyright 1992-2018 Free Software Foundation, Inc. +# Copyright 1992-2021 Free Software Foundation, Inc. -timestamp='2018-03-08' +timestamp='2021-01-08' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -33,7 +33,7 @@ # Otherwise, we print the canonical config type on stdout and succeed. # You can get the latest version of this script from: -# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub +# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases @@ -50,7 +50,7 @@ # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. -me=`echo "$0" | sed -e 's,.*/,,'` +me=$(echo "$0" | sed -e 's,.*/,,') usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS @@ -67,7 +67,7 @@ version="\ GNU config.sub ($timestamp) -Copyright 1992-2018 Free Software Foundation, Inc. +Copyright 1992-2021 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -89,7 +89,7 @@ - ) # Use stdin as input. break ;; -* ) - echo "$me: invalid option $1$help" + echo "$me: invalid option $1$help" >&2 exit 1 ;; *local*) @@ -110,1223 +110,1169 @@ exit 1;; esac -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ - kopensolaris*-gnu* | cloudabi*-eabi* | \ - storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - android-linux) - os=-linux-android - basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown - ;; - *) - basic_machine=`echo "$1" | sed 's/-[^-]*$//'` - if [ "$basic_machine" != "$1" ] - then os=`echo "$1" | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray | -microblaze*) - os= - basic_machine=$1 - ;; - -bluegene*) - os=-cnk - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco6) - os=-sco5v6 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco5v6*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*178) - os=-lynxos178 - ;; - -lynx*5) - os=-lynxos5 +# Split fields of configuration type +# shellcheck disable=SC2162 +IFS="-" read field1 field2 field3 field4 <&2 + exit 1 ;; - -lynx*) - os=-lynxos + *-*-*-*) + basic_machine=$field1-$field2 + basic_os=$field3-$field4 ;; - -ptx*) - basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'` + *-*-*) + # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two + # parts + maybe_os=$field2-$field3 + case $maybe_os in + nto-qnx* | linux-* | uclinux-uclibc* \ + | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ + | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ + | storm-chaos* | os2-emx* | rtmk-nova*) + basic_machine=$field1 + basic_os=$maybe_os + ;; + android-linux) + basic_machine=$field1-unknown + basic_os=linux-android + ;; + *) + basic_machine=$field1-$field2 + basic_os=$field3 + ;; + esac ;; - -psos*) - os=-psos + *-*) + # A lone config we happen to match not fitting any pattern + case $field1-$field2 in + decstation-3100) + basic_machine=mips-dec + basic_os= + ;; + *-*) + # Second component is usually, but not always the OS + case $field2 in + # Prevent following clause from handling this valid os + sun*os*) + basic_machine=$field1 + basic_os=$field2 + ;; + # Manufacturers + dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \ + | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \ + | unicom* | ibm* | next | hp | isi* | apollo | altos* \ + | convergent* | ncr* | news | 32* | 3600* | 3100* \ + | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \ + | ultra | tti* | harris | dolphin | highlevel | gould \ + | cbm | ns | masscomp | apple | axis | knuth | cray \ + | microblaze* | sim | cisco \ + | oki | wec | wrs | winbond) + basic_machine=$field1-$field2 + basic_os= + ;; + *) + basic_machine=$field1 + basic_os=$field2 + ;; + esac + ;; + esac ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint + *) + # Convert single-component short-hands not valid as part of + # multi-component configurations. + case $field1 in + 386bsd) + basic_machine=i386-pc + basic_os=bsd + ;; + a29khif) + basic_machine=a29k-amd + basic_os=udi + ;; + adobe68k) + basic_machine=m68010-adobe + basic_os=scout + ;; + alliant) + basic_machine=fx80-alliant + basic_os= + ;; + altos | altos3068) + basic_machine=m68k-altos + basic_os= + ;; + am29k) + basic_machine=a29k-none + basic_os=bsd + ;; + amdahl) + basic_machine=580-amdahl + basic_os=sysv + ;; + amiga) + basic_machine=m68k-unknown + basic_os= + ;; + amigaos | amigados) + basic_machine=m68k-unknown + basic_os=amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + basic_os=sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + basic_os=sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + basic_os=bsd + ;; + aros) + basic_machine=i386-pc + basic_os=aros + ;; + aux) + basic_machine=m68k-apple + basic_os=aux + ;; + balance) + basic_machine=ns32k-sequent + basic_os=dynix + ;; + blackfin) + basic_machine=bfin-unknown + basic_os=linux + ;; + cegcc) + basic_machine=arm-unknown + basic_os=cegcc + ;; + convex-c1) + basic_machine=c1-convex + basic_os=bsd + ;; + convex-c2) + basic_machine=c2-convex + basic_os=bsd + ;; + convex-c32) + basic_machine=c32-convex + basic_os=bsd + ;; + convex-c34) + basic_machine=c34-convex + basic_os=bsd + ;; + convex-c38) + basic_machine=c38-convex + basic_os=bsd + ;; + cray) + basic_machine=j90-cray + basic_os=unicos + ;; + crds | unos) + basic_machine=m68k-crds + basic_os= + ;; + da30) + basic_machine=m68k-da30 + basic_os= + ;; + decstation | pmax | pmin | dec3100 | decstatn) + basic_machine=mips-dec + basic_os= + ;; + delta88) + basic_machine=m88k-motorola + basic_os=sysv3 + ;; + dicos) + basic_machine=i686-pc + basic_os=dicos + ;; + djgpp) + basic_machine=i586-pc + basic_os=msdosdjgpp + ;; + ebmon29k) + basic_machine=a29k-amd + basic_os=ebmon + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + basic_os=ose + ;; + gmicro) + basic_machine=tron-gmicro + basic_os=sysv + ;; + go32) + basic_machine=i386-pc + basic_os=go32 + ;; + h8300hms) + basic_machine=h8300-hitachi + basic_os=hms + ;; + h8300xray) + basic_machine=h8300-hitachi + basic_os=xray + ;; + h8500hms) + basic_machine=h8500-hitachi + basic_os=hms + ;; + harris) + basic_machine=m88k-harris + basic_os=sysv3 + ;; + hp300 | hp300hpux) + basic_machine=m68k-hp + basic_os=hpux + ;; + hp300bsd) + basic_machine=m68k-hp + basic_os=bsd + ;; + hppaosf) + basic_machine=hppa1.1-hp + basic_os=osf + ;; + hppro) + basic_machine=hppa1.1-hp + basic_os=proelf + ;; + i386mach) + basic_machine=i386-mach + basic_os=mach + ;; + isi68 | isi) + basic_machine=m68k-isi + basic_os=sysv + ;; + m68knommu) + basic_machine=m68k-unknown + basic_os=linux + ;; + magnum | m3230) + basic_machine=mips-mips + basic_os=sysv + ;; + merlin) + basic_machine=ns32k-utek + basic_os=sysv + ;; + mingw64) + basic_machine=x86_64-pc + basic_os=mingw64 + ;; + mingw32) + basic_machine=i686-pc + basic_os=mingw32 + ;; + mingw32ce) + basic_machine=arm-unknown + basic_os=mingw32ce + ;; + monitor) + basic_machine=m68k-rom68k + basic_os=coff + ;; + morphos) + basic_machine=powerpc-unknown + basic_os=morphos + ;; + moxiebox) + basic_machine=moxie-unknown + basic_os=moxiebox + ;; + msdos) + basic_machine=i386-pc + basic_os=msdos + ;; + msys) + basic_machine=i686-pc + basic_os=msys + ;; + mvs) + basic_machine=i370-ibm + basic_os=mvs + ;; + nacl) + basic_machine=le32-unknown + basic_os=nacl + ;; + ncr3000) + basic_machine=i486-ncr + basic_os=sysv4 + ;; + netbsd386) + basic_machine=i386-pc + basic_os=netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + basic_os=linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + basic_os=newsos + ;; + news1000) + basic_machine=m68030-sony + basic_os=newsos + ;; + necv70) + basic_machine=v70-nec + basic_os=sysv + ;; + nh3000) + basic_machine=m68k-harris + basic_os=cxux + ;; + nh[45]000) + basic_machine=m88k-harris + basic_os=cxux + ;; + nindy960) + basic_machine=i960-intel + basic_os=nindy + ;; + mon960) + basic_machine=i960-intel + basic_os=mon960 + ;; + nonstopux) + basic_machine=mips-compaq + basic_os=nonstopux + ;; + os400) + basic_machine=powerpc-ibm + basic_os=os400 + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + basic_os=ose + ;; + os68k) + basic_machine=m68k-none + basic_os=os68k + ;; + paragon) + basic_machine=i860-intel + basic_os=osf + ;; + parisc) + basic_machine=hppa-unknown + basic_os=linux + ;; + psp) + basic_machine=mipsallegrexel-sony + basic_os=psp + ;; + pw32) + basic_machine=i586-unknown + basic_os=pw32 + ;; + rdos | rdos64) + basic_machine=x86_64-pc + basic_os=rdos + ;; + rdos32) + basic_machine=i386-pc + basic_os=rdos + ;; + rom68k) + basic_machine=m68k-rom68k + basic_os=coff + ;; + sa29200) + basic_machine=a29k-amd + basic_os=udi + ;; + sei) + basic_machine=mips-sei + basic_os=seiux + ;; + sequent) + basic_machine=i386-sequent + basic_os= + ;; + sps7) + basic_machine=m68k-bull + basic_os=sysv2 + ;; + st2000) + basic_machine=m68k-tandem + basic_os= + ;; + stratus) + basic_machine=i860-stratus + basic_os=sysv4 + ;; + sun2) + basic_machine=m68000-sun + basic_os= + ;; + sun2os3) + basic_machine=m68000-sun + basic_os=sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + basic_os=sunos4 + ;; + sun3) + basic_machine=m68k-sun + basic_os= + ;; + sun3os3) + basic_machine=m68k-sun + basic_os=sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + basic_os=sunos4 + ;; + sun4) + basic_machine=sparc-sun + basic_os= + ;; + sun4os3) + basic_machine=sparc-sun + basic_os=sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + basic_os=sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + basic_os=solaris2 + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + basic_os= + ;; + sv1) + basic_machine=sv1-cray + basic_os=unicos + ;; + symmetry) + basic_machine=i386-sequent + basic_os=dynix + ;; + t3e) + basic_machine=alphaev5-cray + basic_os=unicos + ;; + t90) + basic_machine=t90-cray + basic_os=unicos + ;; + toad1) + basic_machine=pdp10-xkl + basic_os=tops20 + ;; + tpf) + basic_machine=s390x-ibm + basic_os=tpf + ;; + udi29k) + basic_machine=a29k-amd + basic_os=udi + ;; + ultra3) + basic_machine=a29k-nyu + basic_os=sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + basic_os=none + ;; + vaxv) + basic_machine=vax-dec + basic_os=sysv + ;; + vms) + basic_machine=vax-dec + basic_os=vms + ;; + vsta) + basic_machine=i386-pc + basic_os=vsta + ;; + vxworks960) + basic_machine=i960-wrs + basic_os=vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + basic_os=vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + basic_os=vxworks + ;; + xbox) + basic_machine=i686-pc + basic_os=mingw32 + ;; + ymp) + basic_machine=ymp-cray + basic_os=unicos + ;; + *) + basic_machine=$1 + basic_os= + ;; + esac ;; esac -# Decode aliases for certain CPU-COMPANY combinations. +# Decode 1-component or ad-hoc basic machines case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | aarch64 | aarch64_be \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | am33_2.0 \ - | arc | arceb \ - | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ - | avr | avr32 \ - | ba \ - | be32 | be64 \ - | bfin \ - | c4x | c8051 | clipper \ - | d10v | d30v | dlx | dsp16xx \ - | e2k | epiphany \ - | fido | fr30 | frv | ft32 \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | hexagon \ - | i370 | i860 | i960 | ia16 | ia64 \ - | ip2k | iq2000 \ - | k1om \ - | le32 | le64 \ - | lm32 \ - | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ - | mips64octeon | mips64octeonel \ - | mips64orion | mips64orionel \ - | mips64r5900 | mips64r5900el \ - | mips64vr | mips64vrel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ - | mips64vr5900 | mips64vr5900el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa32r6 | mipsisa32r6el \ - | mipsisa64 | mipsisa64el \ - | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64r6 | mipsisa64r6el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipsr5900 | mipsr5900el \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | moxie \ - | mt \ - | msp430 \ - | nds32 | nds32le | nds32be \ - | nios | nios2 | nios2eb | nios2el \ - | ns16k | ns32k \ - | open8 | or1k | or1knd | or32 \ - | pdp10 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle \ - | pru \ - | pyramid \ - | riscv32 | riscv64 \ - | rl78 | rx \ - | score \ - | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ - | spu \ - | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ - | ubicom32 \ - | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ - | visium \ - | wasm32 \ - | x86 | xc16x | xstormy16 | xtensa \ - | z8k | z80) - basic_machine=$basic_machine-unknown - ;; - c54x) - basic_machine=tic54x-unknown - ;; - c55x) - basic_machine=tic55x-unknown - ;; - c6x) - basic_machine=tic6x-unknown - ;; - leon|leon[3-9]) - basic_machine=sparc-$basic_machine - ;; - m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) - basic_machine=$basic_machine-unknown - os=-none + # Here we handle the default manufacturer of certain CPU types. It is in + # some cases the only manufacturer, in others, it is the most popular. + w89k) + cpu=hppa1.1 + vendor=winbond ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65) + op50n) + cpu=hppa1.1 + vendor=oki ;; - ms1) - basic_machine=mt-unknown + op60c) + cpu=hppa1.1 + vendor=oki ;; - - strongarm | thumb | xscale) - basic_machine=arm-unknown + ibm*) + cpu=i370 + vendor=ibm ;; - xgate) - basic_machine=$basic_machine-unknown - os=-none + orion105) + cpu=clipper + vendor=highlevel ;; - xscaleeb) - basic_machine=armeb-unknown + mac | mpw | mac-mpw) + cpu=m68k + vendor=apple ;; - - xscaleel) - basic_machine=armel-unknown + pmac | pmac-mpw) + cpu=powerpc + vendor=apple ;; - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | aarch64-* | aarch64_be-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* | avr32-* \ - | ba-* \ - | be32-* | be64-* \ - | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* \ - | c8051-* | clipper-* | craynv-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | e2k-* | elxsi-* \ - | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | hexagon-* \ - | i*86-* | i860-* | i960-* | ia16-* | ia64-* \ - | ip2k-* | iq2000-* \ - | k1om-* \ - | le32-* | le64-* \ - | lm32-* \ - | m32c-* | m32r-* | m32rle-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ - | microblaze-* | microblazeel-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ - | mips64octeon-* | mips64octeonel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64r5900-* | mips64r5900el-* \ - | mips64vr-* | mips64vrel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ - | mips64vr5900-* | mips64vr5900el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa32r6-* | mipsisa32r6el-* \ - | mipsisa64-* | mipsisa64el-* \ - | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64r6-* | mipsisa64r6el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipsr5900-* | mipsr5900el-* \ - | mipstx39-* | mipstx39el-* \ - | mmix-* \ - | mt-* \ - | msp430-* \ - | nds32-* | nds32le-* | nds32be-* \ - | nios-* | nios2-* | nios2eb-* | nios2el-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ - | open8-* \ - | or1k*-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ - | pru-* \ - | pyramid-* \ - | riscv32-* | riscv64-* \ - | rl78-* | romp-* | rs6000-* | rx-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ - | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ - | tahoe-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tile*-* \ - | tron-* \ - | ubicom32-* \ - | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ - | vax-* \ - | visium-* \ - | wasm32-* \ - | we32k-* \ - | x86-* | x86_64-* | xc16x-* | xps100-* \ - | xstormy16-* | xtensa*-* \ - | ymp-* \ - | z8k-* | z80-*) - ;; - # Recognize the basic CPU types without company name, with glob match. - xtensa*) - basic_machine=$basic_machine-unknown - ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-pc - os=-bsd - ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68000-att + cpu=m68000 + vendor=att ;; 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - abacus) - basic_machine=abacus-unknown - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amd64-*) - basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'` - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aros) - basic_machine=i386-pc - os=-aros - ;; - asmjs) - basic_machine=asmjs-unknown - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - blackfin) - basic_machine=bfin-unknown - os=-linux - ;; - blackfin-*) - basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'` - os=-linux + cpu=we32k + vendor=att ;; bluegene*) - basic_machine=powerpc-ibm - os=-cnk - ;; - c54x-*) - basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'` - ;; - c55x-*) - basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'` - ;; - c6x-*) - basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'` - ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; - cegcc) - basic_machine=arm-unknown - os=-cegcc - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - craynv) - basic_machine=craynv-cray - os=-unicosmp - ;; - cr16 | cr16-*) - basic_machine=cr16-unknown - os=-elf - ;; - crds | unos) - basic_machine=m68k-crds - ;; - crisv32 | crisv32-* | etraxfs*) - basic_machine=crisv32-axis - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - crx) - basic_machine=crx-unknown - os=-elf - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec + cpu=powerpc + vendor=ibm + basic_os=cnk ;; decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 + cpu=pdp10 + vendor=dec + basic_os=tops10 ;; decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 + cpu=pdp10 + vendor=dec + basic_os=tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - dicos) - basic_machine=i686-pc - os=-dicos - ;; - djgpp) - basic_machine=i586-pc - os=-msdosdjgpp - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx + cpu=m68k + vendor=motorola ;; dpx2*) - basic_machine=m68k-bull - os=-sysv3 - ;; - e500v[12]) - basic_machine=powerpc-unknown - os=$os"spe" - ;; - e500v[12]-*) - basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'` - os=$os"spe" - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd + cpu=m68k + vendor=bull + basic_os=sysv3 ;; encore | umax | mmax) - basic_machine=ns32k-encore + cpu=ns32k + vendor=encore ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose + elxsi) + cpu=elxsi + vendor=elxsi + basic_os=${basic_os:-bsd} ;; fx2800) - basic_machine=i860-alliant + cpu=i860 + vendor=alliant ;; genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 + cpu=ns32k + vendor=ns ;; h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux + cpu=hppa1.1 + vendor=hitachi + basic_os=hiuxwe2 ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp + cpu=hppa1.0 + vendor=hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp + cpu=m68000 + vendor=hp ;; hp9k3[2-9][0-9]) - basic_machine=m68k-hp + cpu=m68k + vendor=hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp + cpu=hppa1.0 + vendor=hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm + cpu=hppa1.0 + vendor=hp ;; i*86v32) - basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` - os=-sysv32 + cpu=$(echo "$1" | sed -e 's/86.*/86/') + vendor=pc + basic_os=sysv32 ;; i*86v4*) - basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` - os=-sysv4 + cpu=$(echo "$1" | sed -e 's/86.*/86/') + vendor=pc + basic_os=sysv4 ;; i*86v) - basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` - os=-sysv + cpu=$(echo "$1" | sed -e 's/86.*/86/') + vendor=pc + basic_os=sysv ;; i*86sol2) - basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - vsta) - basic_machine=i386-unknown - os=-vsta + cpu=$(echo "$1" | sed -e 's/86.*/86/') + vendor=pc + basic_os=solaris2 + ;; + j90 | j90-cray) + cpu=j90 + vendor=cray + basic_os=${basic_os:-unicos} ;; iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) + cpu=mips + vendor=sgi + case $basic_os in + irix*) ;; *) - os=-irix4 + basic_os=irix4 ;; esac ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - leon-*|leon[3-9]-*) - basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'` - ;; - m68knommu) - basic_machine=m68k-unknown - os=-linux - ;; - m68knommu-*) - basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'` - os=-linux - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - microblaze*) - basic_machine=microblaze-xilinx - ;; - mingw64) - basic_machine=x86_64-pc - os=-mingw64 - ;; - mingw32) - basic_machine=i686-pc - os=-mingw32 - ;; - mingw32ce) - basic_machine=arm-unknown - os=-mingw32ce - ;; miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mips3*-*) - basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown + cpu=m68000 + vendor=convergent ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - moxiebox) - basic_machine=moxie-unknown - os=-moxiebox - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - ms1-*) - basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'` - ;; - msys) - basic_machine=i686-pc - os=-msys - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - nacl) - basic_machine=le32-unknown - os=-nacl - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos + *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*) + cpu=m68k + vendor=atari + basic_os=mint ;; news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv + cpu=mips + vendor=sony + basic_os=newsos ;; next | m*-next) - basic_machine=m68k-next - case $os in - -nextstep* ) + cpu=m68k + vendor=next + case $basic_os in + openstep*) + ;; + nextstep*) ;; - -ns2*) - os=-nextstep2 + ns2*) + basic_os=nextstep2 ;; *) - os=-nextstep3 + basic_os=nextstep3 ;; esac ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; np1) - basic_machine=np1-gould - ;; - neo-tandem) - basic_machine=neo-tandem - ;; - nse-tandem) - basic_machine=nse-tandem - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - nsv-tandem) - basic_machine=nsv-tandem - ;; - nsx-tandem) - basic_machine=nsx-tandem + cpu=np1 + vendor=gould ;; op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - openrisc | openrisc-*) - basic_machine=or32-unknown - ;; - os400) - basic_machine=powerpc-ibm - os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k + cpu=hppa1.1 + vendor=oki + basic_os=proelf ;; pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - parisc) - basic_machine=hppa-unknown - os=-linux - ;; - parisc-*) - basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'` - os=-linux + cpu=hppa1.1 + vendor=hitachi + basic_os=hiuxwe2 ;; pbd) - basic_machine=sparc-tti + cpu=sparc + vendor=tti ;; pbb) - basic_machine=m68k-tti + cpu=m68k + vendor=tti ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 + pc532) + cpu=ns32k + vendor=pc532 ;; - pc98) - basic_machine=i386-pc + pn) + cpu=pn + vendor=gould ;; - pc98-*) - basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'` + power) + cpu=power + vendor=ibm ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc + ps2) + cpu=i386 + vendor=ibm ;; - pentiumpro | p6 | 6x86 | athlon | athlon_*) - basic_machine=i686-pc + rm[46]00) + cpu=mips + vendor=siemens ;; - pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc + rtpc | rtpc-*) + cpu=romp + vendor=ibm ;; - pentium4) - basic_machine=i786-pc + sde) + cpu=mipsisa32 + vendor=sde + basic_os=${basic_os:-elf} ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'` + simso-wrs) + cpu=sparclite + vendor=wrs + basic_os=vxworks ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'` + tower | tower-32) + cpu=m68k + vendor=ncr ;; - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'` + vpp*|vx|vx-*) + cpu=f301 + vendor=fujitsu ;; - pentium4-*) - basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'` + w65) + cpu=w65 + vendor=wdc ;; - pn) - basic_machine=pn-gould + w89k-*) + cpu=hppa1.1 + vendor=winbond + basic_os=proelf ;; - power) basic_machine=power-ibm + none) + cpu=none + vendor=none ;; - ppc | ppcbe) basic_machine=powerpc-unknown + leon|leon[3-9]) + cpu=sparc + vendor=$basic_machine ;; - ppc-* | ppcbe-*) - basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'` + leon-*|leon[3-9]-*) + cpu=sparc + vendor=$(echo "$basic_machine" | sed 's/-.*//') ;; - ppcle | powerpclittle) - basic_machine=powerpcle-unknown + + *-*) + # shellcheck disable=SC2162 + IFS="-" read cpu vendor <&2 - exit 1 + # Recognize the canonical CPU types that are allowed with any + # company name. + case $cpu in + 1750a | 580 \ + | a29k \ + | aarch64 | aarch64_be \ + | abacus \ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \ + | alphapca5[67] | alpha64pca5[67] \ + | am33_2.0 \ + | amdgcn \ + | arc | arceb \ + | arm | arm[lb]e | arme[lb] | armv* \ + | avr | avr32 \ + | asmjs \ + | ba \ + | be32 | be64 \ + | bfin | bpf | bs2000 \ + | c[123]* | c30 | [cjt]90 | c4x \ + | c8051 | clipper | craynv | csky | cydra \ + | d10v | d30v | dlx | dsp16xx \ + | e2k | elxsi | epiphany \ + | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \ + | h8300 | h8500 \ + | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | hexagon \ + | i370 | i*86 | i860 | i960 | ia16 | ia64 \ + | ip2k | iq2000 \ + | k1om \ + | le32 | le64 \ + | lm32 \ + | loongarch32 | loongarch64 | loongarchx32 \ + | m32c | m32r | m32rle \ + | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \ + | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \ + | m88110 | m88k | maxq | mb | mcore | mep | metag \ + | microblaze | microblazeel \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64eb | mips64el \ + | mips64octeon | mips64octeonel \ + | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ + | mips64vr5900 | mips64vr5900el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa32r6 | mipsisa32r6el \ + | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64r6 | mipsisa64r6el \ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipsr5900 | mipsr5900el \ + | mipstx39 | mipstx39el \ + | mmix \ + | mn10200 | mn10300 \ + | moxie \ + | mt \ + | msp430 \ + | nds32 | nds32le | nds32be \ + | nfp \ + | nios | nios2 | nios2eb | nios2el \ + | none | np1 | ns16k | ns32k | nvptx \ + | open8 \ + | or1k* \ + | or32 \ + | orion \ + | picochip \ + | pdp10 | pdp11 | pj | pjl | pn | power \ + | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \ + | pru \ + | pyramid \ + | riscv | riscv32 | riscv32be | riscv64 | riscv64be \ + | rl78 | romp | rs6000 | rx \ + | s390 | s390x \ + | score \ + | sh | shl \ + | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \ + | sh[1234]e[lb] | sh[12345][lb]e | sh[23]ele | sh64 | sh64le \ + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \ + | sparclite \ + | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \ + | spu \ + | tahoe \ + | thumbv7* \ + | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \ + | tron \ + | ubicom32 \ + | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \ + | vax \ + | visium \ + | w65 \ + | wasm32 | wasm64 \ + | we32k \ + | x86 | x86_64 | xc16x | xgate | xps100 \ + | xstormy16 | xtensa* \ + | ymp \ + | z8k | z80) + ;; + + *) + echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2 + exit 1 + ;; + esac ;; esac # Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'` +case $vendor in + digital*) + vendor=dec ;; - *-commodore*) - basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'` + commodore*) + vendor=cbm ;; *) ;; @@ -1334,203 +1280,213 @@ # Decode manufacturer-specific aliases for certain operating systems. -if [ x"$os" != x"" ] +if test x$basic_os != x then + +# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just +# set os. +case $basic_os in + gnu/linux*) + kernel=linux + os=$(echo $basic_os | sed -e 's|gnu/linux|gnu|') + ;; + os2-emx) + kernel=os2 + os=$(echo $basic_os | sed -e 's|os2-emx|emx|') + ;; + nto-qnx*) + kernel=nto + os=$(echo $basic_os | sed -e 's|nto-qnx|qnx|') + ;; + *-*) + # shellcheck disable=SC2162 + IFS="-" read kernel os <&2 - exit 1 + # No normalization, but not necessarily accepted, that comes below. ;; esac + else # Here we handle the default operating systems that come with various machines. @@ -1543,254 +1499,357 @@ # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. -case $basic_machine in +kernel= +case $cpu-$vendor in score-*) - os=-elf + os=elf ;; spu-*) - os=-elf + os=elf ;; *-acorn) - os=-riscix1.2 + os=riscix1.2 ;; arm*-rebel) - os=-linux + kernel=linux + os=gnu ;; arm*-semi) - os=-aout + os=aout ;; c4x-* | tic4x-*) - os=-coff + os=coff ;; c8051-*) - os=-elf + os=elf + ;; + clipper-intergraph) + os=clix ;; hexagon-*) - os=-elf + os=elf ;; tic54x-*) - os=-coff + os=coff ;; tic55x-*) - os=-coff + os=coff ;; tic6x-*) - os=-coff + os=coff ;; # This must come before the *-dec entry. pdp10-*) - os=-tops20 + os=tops20 ;; pdp11-*) - os=-none + os=none ;; *-dec | vax-*) - os=-ultrix4.2 + os=ultrix4.2 ;; m68*-apollo) - os=-domain + os=domain ;; i386-sun) - os=-sunos4.0.2 + os=sunos4.0.2 ;; m68000-sun) - os=-sunos3 + os=sunos3 ;; m68*-cisco) - os=-aout + os=aout ;; mep-*) - os=-elf + os=elf ;; mips*-cisco) - os=-elf + os=elf ;; mips*-*) - os=-elf + os=elf ;; or32-*) - os=-coff + os=coff ;; *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 + os=sysv3 ;; sparc-* | *-sun) - os=-sunos4.1.1 + os=sunos4.1.1 ;; pru-*) - os=-elf + os=elf ;; *-be) - os=-beos + os=beos ;; *-ibm) - os=-aix + os=aix ;; *-knuth) - os=-mmixware + os=mmixware ;; *-wec) - os=-proelf + os=proelf ;; *-winbond) - os=-proelf + os=proelf ;; *-oki) - os=-proelf + os=proelf ;; *-hp) - os=-hpux + os=hpux ;; *-hitachi) - os=-hiux + os=hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv + os=sysv ;; *-cbm) - os=-amigaos + os=amigaos ;; *-dg) - os=-dgux + os=dgux ;; *-dolphin) - os=-sysv3 + os=sysv3 ;; m68k-ccur) - os=-rtu + os=rtu ;; m88k-omron*) - os=-luna + os=luna ;; *-next) - os=-nextstep + os=nextstep ;; *-sequent) - os=-ptx + os=ptx ;; *-crds) - os=-unos + os=unos ;; *-ns) - os=-genix + os=genix ;; i370-*) - os=-mvs + os=mvs ;; *-gould) - os=-sysv + os=sysv ;; *-highlevel) - os=-bsd + os=bsd ;; *-encore) - os=-bsd + os=bsd ;; *-sgi) - os=-irix + os=irix ;; *-siemens) - os=-sysv4 + os=sysv4 ;; *-masscomp) - os=-rtu + os=rtu ;; f30[01]-fujitsu | f700-fujitsu) - os=-uxpv + os=uxpv ;; *-rom68k) - os=-coff + os=coff ;; *-*bug) - os=-coff + os=coff ;; *-apple) - os=-macos + os=macos ;; *-atari*) - os=-mint + os=mint + ;; + *-wrs) + os=vxworks ;; *) - os=-none + os=none ;; esac + fi +# Now, validate our (potentially fixed-up) OS. +case $os in + # Sometimes we do "kernel-libc", so those need to count as OSes. + musl* | newlib* | uclibc*) + ;; + # Likewise for "kernel-abi" + eabi* | gnueabi*) + ;; + # VxWorks passes extra cpu info in the 4th filed. + simlinux | simwindows | spe) + ;; + # Now accept the basic system types. + # The portable systems comes first. + # Each alternative MUST end in a * to match a version number. + gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \ + | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \ + | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ + | sym* | plan9* | psp* | sim* | xray* | os68k* | v88r* \ + | hiux* | abug | nacl* | netware* | windows* \ + | os9* | macos* | osx* | ios* \ + | mpw* | magic* | mmixware* | mon960* | lnews* \ + | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ + | aos* | aros* | cloudabi* | sortix* | twizzler* \ + | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ + | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \ + | mirbsd* | netbsd* | dicos* | openedition* | ose* \ + | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \ + | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \ + | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \ + | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \ + | udi* | lites* | ieee* | go32* | aux* | hcos* \ + | chorusrdb* | cegcc* | glidix* \ + | cygwin* | msys* | pe* | moss* | proelf* | rtems* \ + | midipix* | mingw32* | mingw64* | mint* \ + | uxpv* | beos* | mpeix* | udk* | moxiebox* \ + | interix* | uwin* | mks* | rhapsody* | darwin* \ + | openstep* | oskit* | conix* | pw32* | nonstopux* \ + | storm-chaos* | tops10* | tenex* | tops20* | its* \ + | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \ + | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \ + | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \ + | skyos* | haiku* | rdos* | toppers* | drops* | es* \ + | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ + | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \ + | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx*) + ;; + # This one is extra strict with allowed versions + sco3.2v2 | sco3.2v[4-9]* | sco5v6*) + # Don't forget version if it is 3.2v4 or newer. + ;; + none) + ;; + *) + echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2 + exit 1 + ;; +esac + +# As a final step for OS-related things, validate the OS-kernel combination +# (given a valid OS), if there is a kernel. +case $kernel-$os in + linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* | linux-musl* | linux-uclibc* ) + ;; + uclinux-uclibc* ) + ;; + -dietlibc* | -newlib* | -musl* | -uclibc* ) + # These are just libc implementations, not actual OSes, and thus + # require a kernel. + echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2 + exit 1 + ;; + kfreebsd*-gnu* | kopensolaris*-gnu*) + ;; + vxworks-simlinux | vxworks-simwindows | vxworks-spe) + ;; + nto-qnx*) + ;; + os2-emx) + ;; + *-eabi* | *-gnueabi*) + ;; + -*) + # Blank kernel with real OS is always fine. + ;; + *-*) + echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2 + exit 1 + ;; +esac + # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) +case $vendor in + unknown) + case $cpu-$os in + *-riscix*) vendor=acorn ;; - -sunos*) + *-sunos*) vendor=sun ;; - -cnk*|-aix*) + *-cnk* | *-aix*) vendor=ibm ;; - -beos*) + *-beos*) vendor=be ;; - -hpux*) + *-hpux*) vendor=hp ;; - -mpeix*) + *-mpeix*) vendor=hp ;; - -hiux*) + *-hiux*) vendor=hitachi ;; - -unos*) + *-unos*) vendor=crds ;; - -dgux*) + *-dgux*) vendor=dg ;; - -luna*) + *-luna*) vendor=omron ;; - -genix*) + *-genix*) vendor=ns ;; - -mvs* | -opened*) + *-clix*) + vendor=intergraph + ;; + *-mvs* | *-opened*) + vendor=ibm + ;; + *-os400*) vendor=ibm ;; - -os400*) + s390-* | s390x-*) vendor=ibm ;; - -ptx*) + *-ptx*) vendor=sequent ;; - -tpf*) + *-tpf*) vendor=ibm ;; - -vxsim* | -vxworks* | -windiss*) + *-vxsim* | *-vxworks* | *-windiss*) vendor=wrs ;; - -aux*) + *-aux*) vendor=apple ;; - -hms*) + *-hms*) vendor=hitachi ;; - -mpw* | -macos*) + *-mpw* | *-macos*) vendor=apple ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*) vendor=atari ;; - -vos*) + *-vos*) vendor=stratus ;; esac - basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"` ;; esac -echo "$basic_machine$os" +echo "$cpu-$vendor-${kernel:+$kernel-}$os" exit # Local variables: diff -Nru libmbim-1.22.0/configure libmbim-1.24.8/configure --- libmbim-1.22.0/configure 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/configure 2021-06-02 22:06:02.000000000 +0800 @@ -1,11 +1,12 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for libmbim 1.22.0. +# Generated by GNU Autoconf 2.71 for libmbim 1.24.8. # # Report bugs to . # # -# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. +# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, +# Inc. # # # This configure script is free software; the Free Software Foundation @@ -16,14 +17,16 @@ # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : +as_nop=: +if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 +then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST -else +else $as_nop case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( @@ -33,46 +36,46 @@ fi + +# Reset variables that may have inherited troublesome values from +# the environment. + +# IFS needs to be set, to space, tab, and newline, in precisely that order. +# (If _AS_PATH_WALK were called with IFS unset, it would have the +# side effect of setting IFS to empty, thus disabling word splitting.) +# Quoting is to prevent editors from complaining about space-tab. as_nl=' ' export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi +IFS=" "" $as_nl" + +PS1='$ ' +PS2='> ' +PS4='+ ' + +# Ensure predictable behavior from utilities with locale-dependent output. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# We cannot yet rely on "unset" to work, but we need these variables +# to be unset--not just set to an empty or harmless value--now, to +# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct +# also avoids known problems related to "unset" and subshell syntax +# in other old shells (e.g. bash 2.01 and pdksh 5.2.14). +for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH +do eval test \${$as_var+y} \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done + +# Ensure that fds 0, 1, and 2 are open. +if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi +if (exec 3>&2) ; then :; else exec 2>/dev/null; fi # The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then +if ${PATH_SEPARATOR+false} :; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || @@ -81,13 +84,6 @@ fi -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( @@ -96,8 +92,12 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + test -r "$as_dir$0" && as_myself=$as_dir$0 && break done IFS=$as_save_IFS @@ -109,30 +109,10 @@ as_myself=$0 fi if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH # Use a proper internal environment variable to ensure we don't fall # into an infinite loop, continuously re-executing ourselves. @@ -154,20 +134,22 @@ exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -as_fn_exit 255 +printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2 +exit 255 fi # We don't want this to propagate to other subprocesses. { _as_can_reexec=; unset _as_can_reexec;} if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + as_bourne_compatible="as_nop=: +if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 +then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST -else +else \$as_nop case \`(set -o) 2>/dev/null\` in #( *posix*) : set -o posix ;; #( @@ -187,12 +169,15 @@ as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } -if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : +if ( set x; as_fn_ret_success y && test x = \"\$1\" ) +then : -else +else \$as_nop exitcode=1; echo positional parameters were not saved. fi test x\$exitcode = x0 || exit 1 +blah=\$(echo \$(echo blah)) +test x\"\$blah\" = xblah || exit 1 test -x / || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO @@ -207,30 +192,38 @@ test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 test \$(( 1 + 1 )) = 2 || exit 1" - if (eval "$as_required") 2>/dev/null; then : + if (eval "$as_required") 2>/dev/null +then : as_have_required=yes -else +else $as_nop as_have_required=no fi - if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null +then : -else +else $as_nop as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac as_found=: case $as_dir in #( /*) for as_base in sh bash ksh sh5; do # Try only shells that exist, to save several forks. - as_shell=$as_dir/$as_base + as_shell=$as_dir$as_base if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + as_run=a "$as_shell" -c "$as_bourne_compatible""$as_required" 2>/dev/null +then : CONFIG_SHELL=$as_shell as_have_required=yes - if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + if as_run=a "$as_shell" -c "$as_bourne_compatible""$as_suggested" 2>/dev/null +then : break 2 fi fi @@ -238,14 +231,21 @@ esac as_found=false done -$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : - CONFIG_SHELL=$SHELL as_have_required=yes -fi; } IFS=$as_save_IFS +if $as_found +then : + +else $as_nop + if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null +then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi +fi - if test "x$CONFIG_SHELL" != x; then : + if test "x$CONFIG_SHELL" != x +then : export CONFIG_SHELL # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also @@ -263,18 +263,19 @@ exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2 exit 255 fi - if test x$as_have_required = xno; then : - $as_echo "$0: This script requires a shell more modern than all" - $as_echo "$0: the shells that I found on your system." - if test x${ZSH_VERSION+set} = xset ; then - $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" - $as_echo "$0: be upgraded to zsh 4.3.4 or later." + if test x$as_have_required = xno +then : + printf "%s\n" "$0: This script requires a shell more modern than all" + printf "%s\n" "$0: the shells that I found on your system." + if test ${ZSH_VERSION+y} ; then + printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should" + printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later." else - $as_echo "$0: Please tell bug-autoconf@gnu.org and + printf "%s\n" "$0: Please tell bug-autoconf@gnu.org and $0: libmbim-devel@lists.freedesktop.org about your system, $0: including any error possibly output before this $0: message. Then install a modern shell, or manually run @@ -302,6 +303,7 @@ } as_unset=as_fn_unset + # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. @@ -319,6 +321,14 @@ as_fn_set_status $1 exit $1 } # as_fn_exit +# as_fn_nop +# --------- +# Do nothing but, unlike ":", preserve the value of $?. +as_fn_nop () +{ + return $? +} +as_nop=as_fn_nop # as_fn_mkdir_p # ------------- @@ -333,7 +343,7 @@ as_dirs= while :; do case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" @@ -342,7 +352,7 @@ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | +printf "%s\n" X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -381,12 +391,13 @@ # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null +then : eval 'as_fn_append () { eval $1+=\$2 }' -else +else $as_nop as_fn_append () { eval $1=\$$1\$2 @@ -398,18 +409,27 @@ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null +then : eval 'as_fn_arith () { as_val=$(( $* )) }' -else +else $as_nop as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith +# as_fn_nop +# --------- +# Do nothing but, unlike ":", preserve the value of $?. +as_fn_nop () +{ + return $? +} +as_nop=as_fn_nop # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- @@ -421,9 +441,9 @@ as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi - $as_echo "$as_me: error: $2" >&2 + printf "%s\n" "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error @@ -450,7 +470,7 @@ $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | +printf "%s\n" X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q @@ -494,7 +514,7 @@ s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } + { printf "%s\n" "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # If we had to re-execute with $CONFIG_SHELL, we're ensured to have # already done that, so ensure we don't try to do so again and fall @@ -508,6 +528,10 @@ exit } + +# Determine whether it's possible to make 'echo' print without a newline. +# These variables are no longer used directly by Autoconf, but are AC_SUBSTed +# for compatibility with existing Makefiles. ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) @@ -521,6 +545,13 @@ ECHO_N='-n';; esac +# For backward compatibility with old third-party macros, we provide +# the shell variables $as_echo and $as_echo_n. New code should use +# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively. +as_echo='printf %s\n' +as_echo_n='printf %s' + + rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file @@ -590,48 +621,44 @@ # Identity of this package. PACKAGE_NAME='libmbim' PACKAGE_TARNAME='libmbim' -PACKAGE_VERSION='1.22.0' -PACKAGE_STRING='libmbim 1.22.0' +PACKAGE_VERSION='1.24.8' +PACKAGE_STRING='libmbim 1.24.8' PACKAGE_BUGREPORT='libmbim-devel@lists.freedesktop.org' PACKAGE_URL='' ac_unique_file="config.h.in" # Factoring default headers for most tests. ac_includes_default="\ -#include -#ifdef HAVE_SYS_TYPES_H -# include -#endif -#ifdef HAVE_SYS_STAT_H -# include +#include +#ifdef HAVE_STDIO_H +# include #endif -#ifdef STDC_HEADERS +#ifdef HAVE_STDLIB_H # include -# include -#else -# ifdef HAVE_STDLIB_H -# include -# endif #endif #ifdef HAVE_STRING_H -# if !defined STDC_HEADERS && defined HAVE_MEMORY_H -# include -# endif # include #endif -#ifdef HAVE_STRINGS_H -# include -#endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif +#ifdef HAVE_STRINGS_H +# include +#endif +#ifdef HAVE_SYS_TYPES_H +# include +#endif +#ifdef HAVE_SYS_STAT_H +# include +#endif #ifdef HAVE_UNISTD_H # include #endif" +ac_header_c_list= ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS @@ -645,6 +672,16 @@ MBIM_USERNAME_ENABLED_FALSE MBIM_USERNAME_ENABLED_TRUE MBIM_USERNAME +HAVE_INTROSPECTION_FALSE +HAVE_INTROSPECTION_TRUE +INTROSPECTION_MAKEFILE +INTROSPECTION_LIBS +INTROSPECTION_CFLAGS +INTROSPECTION_TYPELIBDIR +INTROSPECTION_GIRDIR +INTROSPECTION_GENERATE +INTROSPECTION_COMPILER +INTROSPECTION_SCANNER GTK_DOC_USE_REBASE_FALSE GTK_DOC_USE_REBASE_TRUE GTK_DOC_USE_LIBTOOL_FALSE @@ -664,7 +701,6 @@ GTKDOC_REBASE GTKDOC_CHECK_PATH GTKDOC_CHECK -GLIB_MKENUMS pkgpyexecdir pyexecdir pkgpythondir @@ -695,7 +731,6 @@ WARN_SCANNERFLAGS WARN_LDFLAGS WARN_CFLAGS -CPP LT_SYS_LIBRARY_PATH OTOOL64 OTOOL @@ -791,6 +826,7 @@ docdir oldincludedir includedir +runstatedir localstatedir sharedstatedir sysconfdir @@ -831,6 +867,7 @@ enable_gtk_doc enable_gtk_doc_html enable_gtk_doc_pdf +enable_introspection enable_mbim_username with_udev with_udev_base_dir @@ -844,7 +881,6 @@ LIBS CPPFLAGS LT_SYS_LIBRARY_PATH -CPP PKG_CONFIG PKG_CONFIG_PATH PKG_CONFIG_LIBDIR @@ -899,6 +935,7 @@ sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' +runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' @@ -928,8 +965,6 @@ *) ac_optarg=yes ;; esac - # Accept the important Cygnus configure options, so we can diagnose typos. - case $ac_dashdash$ac_option in --) ac_dashdash=yes ;; @@ -970,9 +1005,9 @@ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" + as_fn_error $? "invalid feature name: \`$ac_useropt'" ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" @@ -996,9 +1031,9 @@ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" + as_fn_error $? "invalid feature name: \`$ac_useropt'" ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" @@ -1151,6 +1186,15 @@ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; + -runstatedir | --runstatedir | --runstatedi | --runstated \ + | --runstate | --runstat | --runsta | --runst | --runs \ + | --run | --ru | --r) + ac_prev=runstatedir ;; + -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ + | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ + | --run=* | --ru=* | --r=*) + runstatedir=$ac_optarg ;; + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1200,9 +1244,9 @@ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" + as_fn_error $? "invalid package name: \`$ac_useropt'" ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" @@ -1216,9 +1260,9 @@ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" + as_fn_error $? "invalid package name: \`$ac_useropt'" ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" @@ -1262,9 +1306,9 @@ *) # FIXME: should be removed in autoconf 3.0. - $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + printf "%s\n" "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + printf "%s\n" "$as_me: WARNING: invalid host type: $ac_option" >&2 : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" ;; @@ -1280,7 +1324,7 @@ case $enable_option_checking in no) ;; fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; - *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; + *) printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi @@ -1288,7 +1332,7 @@ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir + libdir localedir mandir runstatedir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1344,7 +1388,7 @@ X"$as_myself" : 'X\(//\)[^/]' \| \ X"$as_myself" : 'X\(//\)$' \| \ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_myself" | +printf "%s\n" X"$as_myself" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -1401,7 +1445,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libmbim 1.22.0 to adapt to many kinds of systems. +\`configure' configures libmbim 1.24.8 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1441,6 +1485,7 @@ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -1471,7 +1516,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libmbim 1.22.0:";; + short | recursive ) echo "Configuration of libmbim 1.24.8:";; esac cat <<\_ACEOF @@ -1499,6 +1544,8 @@ --enable-gtk-doc use gtk-doc to build documentation [[default=no]] --enable-gtk-doc-html build documentation in html format [[default=yes]] --enable-gtk-doc-pdf build documentation in pdf format [[default=no]] + --enable-introspection=[no/auto/yes] + Enable introspection for this build --enable-mbim-username= user allowed to access MBIM devices @@ -1528,7 +1575,6 @@ you have headers in a nonstandard directory LT_SYS_LIBRARY_PATH User-defined run-time library search path. - CPP C preprocessor PKG_CONFIG path to pkg-config utility PKG_CONFIG_PATH directories to add to pkg-config's search path @@ -1578,9 +1624,9 @@ case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; @@ -1608,7 +1654,8 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix cd "$ac_dir" || { ac_status=$?; continue; } - # Check for guested configure. + # Check for configure.gnu first; this name is used for a wrapper for + # Metaconfig's "Configure" on case-insensitive file systems. if test -f "$ac_srcdir/configure.gnu"; then echo && $SHELL "$ac_srcdir/configure.gnu" --help=recursive @@ -1616,7 +1663,7 @@ echo && $SHELL "$ac_srcdir/configure" --help=recursive else - $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi || ac_status=$? cd "$ac_pwd" || { ac_status=$?; break; } done @@ -1625,10 +1672,10 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libmbim configure 1.22.0 -generated by GNU Autoconf 2.69 +libmbim configure 1.24.8 +generated by GNU Autoconf 2.71 -Copyright (C) 2012 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF @@ -1645,14 +1692,14 @@ ac_fn_c_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext + rm -f conftest.$ac_objext conftest.beam if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 +printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then @@ -1660,14 +1707,15 @@ cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err - } && test -s conftest.$ac_objext; then : + } && test -s conftest.$ac_objext +then : ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 +else $as_nop + printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 @@ -1683,14 +1731,14 @@ ac_fn_c_try_link () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext conftest$ac_exeext + rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 +printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link") 2>conftest.err ac_status=$? if test -s conftest.err; then @@ -1698,17 +1746,18 @@ cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || test -x conftest$ac_exeext - }; then : + } +then : ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 +else $as_nop + printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 @@ -1730,120 +1779,44 @@ ac_fn_c_check_header_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +printf %s "checking for $2... " >&6; } +if eval test \${$3+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$3=yes" -else +else $as_nop eval "$3=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_compile -# ac_fn_c_try_cpp LINENO -# ---------------------- -# Try to preprocess conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_cpp () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } > conftest.i && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_cpp - -# ac_fn_c_try_run LINENO -# ---------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes -# that executables *can* be run. -ac_fn_c_try_run () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then : - ac_retval=0 -else - $as_echo "$as_me: program exited with status $ac_status" >&5 - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=$ac_status -fi - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_run - # ac_fn_c_check_func LINENO FUNC VAR # ---------------------------------- # Tests whether FUNC exists, setting the cache variable VAR accordingly ac_fn_c_check_func () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +printf %s "checking for $2... " >&6; } +if eval test \${$3+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Define $2 to an innocuous variant, in case declares $2. @@ -1851,16 +1824,9 @@ #define $2 innocuous_$2 /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $2 (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif + which can conflict with char $2 (); below. */ +#include #undef $2 /* Override any GCC internal prototype to avoid an error. @@ -1878,35 +1844,56 @@ #endif int -main () +main (void) { return $2 (); ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : eval "$3=yes" -else +else $as_nop eval "$3=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext fi eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_func +ac_configure_args_raw= +for ac_arg +do + case $ac_arg in + *\'*) + ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append ac_configure_args_raw " '$ac_arg'" +done + +case $ac_configure_args_raw in + *$as_nl*) + ac_safe_unquote= ;; + *) + ac_unsafe_z='|&;<>()$`\\"*?[ '' ' # This string ends in space, tab. + ac_unsafe_a="$ac_unsafe_z#~" + ac_safe_unquote="s/ '\\([^$ac_unsafe_a][^$ac_unsafe_z]*\\)'/ \\1/g" + ac_configure_args_raw=` printf "%s\n" "$ac_configure_args_raw" | sed "$ac_safe_unquote"`;; +esac + cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libmbim $as_me 1.22.0, which was -generated by GNU Autoconf 2.69. Invocation command line was +It was created by libmbim $as_me 1.24.8, which was +generated by GNU Autoconf 2.71. Invocation command line was - $ $0 $@ + $ $0$ac_configure_args_raw _ACEOF exec 5>>config.log @@ -1939,8 +1926,12 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - $as_echo "PATH: $as_dir" + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + printf "%s\n" "PATH: $as_dir" done IFS=$as_save_IFS @@ -1975,7 +1966,7 @@ | -silent | --silent | --silen | --sile | --sil) continue ;; *\'*) - ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; @@ -2010,11 +2001,13 @@ # WARNING: Use '\'' to represent an apostrophe within the trap. # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? + # Sanitize IFS. + IFS=" "" $as_nl" # Save into config.log some information that might help in debugging. { echo - $as_echo "## ---------------- ## + printf "%s\n" "## ---------------- ## ## Cache variables. ## ## ---------------- ##" echo @@ -2025,8 +2018,8 @@ case $ac_val in #( *${as_nl}*) case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( @@ -2050,7 +2043,7 @@ ) echo - $as_echo "## ----------------- ## + printf "%s\n" "## ----------------- ## ## Output variables. ## ## ----------------- ##" echo @@ -2058,14 +2051,14 @@ do eval ac_val=\$$ac_var case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac - $as_echo "$ac_var='\''$ac_val'\''" + printf "%s\n" "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then - $as_echo "## ------------------- ## + printf "%s\n" "## ------------------- ## ## File substitutions. ## ## ------------------- ##" echo @@ -2073,15 +2066,15 @@ do eval ac_val=\$$ac_var case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac - $as_echo "$ac_var='\''$ac_val'\''" + printf "%s\n" "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then - $as_echo "## ----------- ## + printf "%s\n" "## ----------- ## ## confdefs.h. ## ## ----------- ##" echo @@ -2089,8 +2082,8 @@ echo fi test "$ac_signal" != 0 && - $as_echo "$as_me: caught signal $ac_signal" - $as_echo "$as_me: exit $exit_status" + printf "%s\n" "$as_me: caught signal $ac_signal" + printf "%s\n" "$as_me: exit $exit_status" } >&5 rm -f core *.core core.conftest.* && rm -f -r conftest* confdefs* conf$$* $ac_clean_files && @@ -2104,63 +2097,48 @@ # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h -$as_echo "/* confdefs.h */" > confdefs.h +printf "%s\n" "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF +printf "%s\n" "#define PACKAGE_NAME \"$PACKAGE_NAME\"" >>confdefs.h -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF +printf "%s\n" "#define PACKAGE_TARNAME \"$PACKAGE_TARNAME\"" >>confdefs.h -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF +printf "%s\n" "#define PACKAGE_VERSION \"$PACKAGE_VERSION\"" >>confdefs.h -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF +printf "%s\n" "#define PACKAGE_STRING \"$PACKAGE_STRING\"" >>confdefs.h -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF +printf "%s\n" "#define PACKAGE_BUGREPORT \"$PACKAGE_BUGREPORT\"" >>confdefs.h -cat >>confdefs.h <<_ACEOF -#define PACKAGE_URL "$PACKAGE_URL" -_ACEOF +printf "%s\n" "#define PACKAGE_URL \"$PACKAGE_URL\"" >>confdefs.h # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. -ac_site_file1=NONE -ac_site_file2=NONE if test -n "$CONFIG_SITE"; then - # We do not want a PATH search for config.site. - case $CONFIG_SITE in #(( - -*) ac_site_file1=./$CONFIG_SITE;; - */*) ac_site_file1=$CONFIG_SITE;; - *) ac_site_file1=./$CONFIG_SITE;; - esac + ac_site_files="$CONFIG_SITE" elif test "x$prefix" != xNONE; then - ac_site_file1=$prefix/share/config.site - ac_site_file2=$prefix/etc/config.site + ac_site_files="$prefix/share/config.site $prefix/etc/config.site" else - ac_site_file1=$ac_default_prefix/share/config.site - ac_site_file2=$ac_default_prefix/etc/config.site + ac_site_files="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" fi -for ac_site_file in "$ac_site_file1" "$ac_site_file2" + +for ac_site_file in $ac_site_files do - test "x$ac_site_file" = xNONE && continue - if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 -$as_echo "$as_me: loading site script $ac_site_file" >&6;} + case $ac_site_file in #( + */*) : + ;; #( + *) : + ac_site_file=./$ac_site_file ;; +esac + if test -f "$ac_site_file" && test -r "$ac_site_file"; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 +printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" \ - || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "failed to load site script $ac_site_file See \`config.log' for more details" "$LINENO" 5; } fi @@ -2170,19 +2148,434 @@ # Some versions of bash will fail to source /dev/null (special files # actually), so we avoid doing that. DJGPP emulates it as a regular file. if test /dev/null != "$cache_file" && test -f "$cache_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 -$as_echo "$as_me: loading cache $cache_file" >&6;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 +printf "%s\n" "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else - { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 -$as_echo "$as_me: creating cache $cache_file" >&6;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 +printf "%s\n" "$as_me: creating cache $cache_file" >&6;} >$cache_file fi +# Test code for whether the C compiler supports C89 (global declarations) +ac_c_conftest_c89_globals=' +/* Does the compiler advertise C89 conformance? + Do not test the value of __STDC__, because some compilers set it to 0 + while being otherwise adequately conformant. */ +#if !defined __STDC__ +# error "Compiler does not advertise C89 conformance" +#endif + +#include +#include +struct stat; +/* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ +struct buf { int x; }; +struct buf * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} + +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has + function prototypes and stuff, but not \xHH hex character constants. + These do not provoke an error unfortunately, instead are silently treated + as an "x". The following induces an error, until -std is added to get + proper ANSI mode. Curiously \x00 != x always comes out true, for an + array size at least. It is necessary to write \x00 == 0 to get something + that is true only with -std. */ +int osf4_cc_array ['\''\x00'\'' == 0 ? 1 : -1]; + +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) '\''x'\'' +int xlc6_cc_array[FOO(a) == '\''x'\'' ? 1 : -1]; + +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), + int, int);' + +# Test code for whether the C compiler supports C89 (body of main). +ac_c_conftest_c89_main=' +ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); +' + +# Test code for whether the C compiler supports C99 (global declarations) +ac_c_conftest_c99_globals=' +// Does the compiler advertise C99 conformance? +#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L +# error "Compiler does not advertise C99 conformance" +#endif + +#include +extern int puts (const char *); +extern int printf (const char *, ...); +extern int dprintf (int, const char *, ...); +extern void *malloc (size_t); + +// Check varargs macros. These examples are taken from C99 6.10.3.5. +// dprintf is used instead of fprintf to avoid needing to declare +// FILE and stderr. +#define debug(...) dprintf (2, __VA_ARGS__) +#define showlist(...) puts (#__VA_ARGS__) +#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) +static void +test_varargs_macros (void) +{ + int x = 1234; + int y = 5678; + debug ("Flag"); + debug ("X = %d\n", x); + showlist (The first, second, and third items.); + report (x>y, "x is %d but y is %d", x, y); +} + +// Check long long types. +#define BIG64 18446744073709551615ull +#define BIG32 4294967295ul +#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) +#if !BIG_OK + #error "your preprocessor is broken" +#endif +#if BIG_OK +#else + #error "your preprocessor is broken" +#endif +static long long int bignum = -9223372036854775807LL; +static unsigned long long int ubignum = BIG64; + +struct incomplete_array +{ + int datasize; + double data[]; +}; + +struct named_init { + int number; + const wchar_t *name; + double average; +}; + +typedef const char *ccp; + +static inline int +test_restrict (ccp restrict text) +{ + // See if C++-style comments work. + // Iterate through items via the restricted pointer. + // Also check for declarations in for loops. + for (unsigned int i = 0; *(text+i) != '\''\0'\''; ++i) + continue; + return 0; +} + +// Check varargs and va_copy. +static bool +test_varargs (const char *format, ...) +{ + va_list args; + va_start (args, format); + va_list args_copy; + va_copy (args_copy, args); + + const char *str = ""; + int number = 0; + float fnumber = 0; + + while (*format) + { + switch (*format++) + { + case '\''s'\'': // string + str = va_arg (args_copy, const char *); + break; + case '\''d'\'': // int + number = va_arg (args_copy, int); + break; + case '\''f'\'': // float + fnumber = va_arg (args_copy, double); + break; + default: + break; + } + } + va_end (args_copy); + va_end (args); + + return *str && number && fnumber; +} +' + +# Test code for whether the C compiler supports C99 (body of main). +ac_c_conftest_c99_main=' + // Check bool. + _Bool success = false; + success |= (argc != 0); + + // Check restrict. + if (test_restrict ("String literal") == 0) + success = true; + char *restrict newvar = "Another string"; + + // Check varargs. + success &= test_varargs ("s, d'\'' f .", "string", 65, 34.234); + test_varargs_macros (); + + // Check flexible array members. + struct incomplete_array *ia = + malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); + ia->datasize = 10; + for (int i = 0; i < ia->datasize; ++i) + ia->data[i] = i * 1.234; + + // Check named initializers. + struct named_init ni = { + .number = 34, + .name = L"Test wide string", + .average = 543.34343, + }; + + ni.number = 58; + + int dynamic_array[ni.number]; + dynamic_array[0] = argv[0][0]; + dynamic_array[ni.number - 1] = 543; + + // work around unused variable warnings + ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == '\''x'\'' + || dynamic_array[ni.number - 1] != 543); +' + +# Test code for whether the C compiler supports C11 (global declarations) +ac_c_conftest_c11_globals=' +// Does the compiler advertise C11 conformance? +#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L +# error "Compiler does not advertise C11 conformance" +#endif + +// Check _Alignas. +char _Alignas (double) aligned_as_double; +char _Alignas (0) no_special_alignment; +extern char aligned_as_int; +char _Alignas (0) _Alignas (int) aligned_as_int; + +// Check _Alignof. +enum +{ + int_alignment = _Alignof (int), + int_array_alignment = _Alignof (int[100]), + char_alignment = _Alignof (char) +}; +_Static_assert (0 < -_Alignof (int), "_Alignof is signed"); + +// Check _Noreturn. +int _Noreturn does_not_return (void) { for (;;) continue; } + +// Check _Static_assert. +struct test_static_assert +{ + int x; + _Static_assert (sizeof (int) <= sizeof (long int), + "_Static_assert does not work in struct"); + long int y; +}; + +// Check UTF-8 literals. +#define u8 syntax error! +char const utf8_literal[] = u8"happens to be ASCII" "another string"; + +// Check duplicate typedefs. +typedef long *long_ptr; +typedef long int *long_ptr; +typedef long_ptr long_ptr; + +// Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1. +struct anonymous +{ + union { + struct { int i; int j; }; + struct { int k; long int l; } w; + }; + int m; +} v1; +' + +# Test code for whether the C compiler supports C11 (body of main). +ac_c_conftest_c11_main=' + _Static_assert ((offsetof (struct anonymous, i) + == offsetof (struct anonymous, w.k)), + "Anonymous union alignment botch"); + v1.i = 2; + v1.w.k = 5; + ok |= v1.i != 5; +' + +# Test code for whether the C compiler supports C11 (complete). +ac_c_conftest_c11_program="${ac_c_conftest_c89_globals} +${ac_c_conftest_c99_globals} +${ac_c_conftest_c11_globals} + +int +main (int argc, char **argv) +{ + int ok = 0; + ${ac_c_conftest_c89_main} + ${ac_c_conftest_c99_main} + ${ac_c_conftest_c11_main} + return ok; +} +" + +# Test code for whether the C compiler supports C99 (complete). +ac_c_conftest_c99_program="${ac_c_conftest_c89_globals} +${ac_c_conftest_c99_globals} + +int +main (int argc, char **argv) +{ + int ok = 0; + ${ac_c_conftest_c89_main} + ${ac_c_conftest_c99_main} + return ok; +} +" + +# Test code for whether the C compiler supports C89 (complete). +ac_c_conftest_c89_program="${ac_c_conftest_c89_globals} + +int +main (int argc, char **argv) +{ + int ok = 0; + ${ac_c_conftest_c89_main} + return ok; +} +" + +as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H" +as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H" +as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H" +as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H" +as_fn_append ac_header_c_list " stdint.h stdint_h HAVE_STDINT_H" +as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H" +as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H" +as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H" +as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H" + +# Auxiliary files required by this configure script. +ac_aux_files="config.guess config.sub ltmain.sh compile missing install-sh" + +# Locations in which to look for auxiliary files. +ac_aux_dir_candidates="${srcdir}${PATH_SEPARATOR}${srcdir}/..${PATH_SEPARATOR}${srcdir}/../.." + +# Search for a directory containing all of the required auxiliary files, +# $ac_aux_files, from the $PATH-style list $ac_aux_dir_candidates. +# If we don't find one directory that contains all the files we need, +# we report the set of missing files from the *first* directory in +# $ac_aux_dir_candidates and give up. +ac_missing_aux_files="" +ac_first_candidate=: +printf "%s\n" "$as_me:${as_lineno-$LINENO}: looking for aux files: $ac_aux_files" >&5 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false +for as_dir in $ac_aux_dir_candidates +do + IFS=$as_save_IFS + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + as_found=: + + printf "%s\n" "$as_me:${as_lineno-$LINENO}: trying $as_dir" >&5 + ac_aux_dir_found=yes + ac_install_sh= + for ac_aux in $ac_aux_files + do + # As a special case, if "install-sh" is required, that requirement + # can be satisfied by any of "install-sh", "install.sh", or "shtool", + # and $ac_install_sh is set appropriately for whichever one is found. + if test x"$ac_aux" = x"install-sh" + then + if test -f "${as_dir}install-sh"; then + printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}install-sh found" >&5 + ac_install_sh="${as_dir}install-sh -c" + elif test -f "${as_dir}install.sh"; then + printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}install.sh found" >&5 + ac_install_sh="${as_dir}install.sh -c" + elif test -f "${as_dir}shtool"; then + printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}shtool found" >&5 + ac_install_sh="${as_dir}shtool install -c" + else + ac_aux_dir_found=no + if $ac_first_candidate; then + ac_missing_aux_files="${ac_missing_aux_files} install-sh" + else + break + fi + fi + else + if test -f "${as_dir}${ac_aux}"; then + printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}${ac_aux} found" >&5 + else + ac_aux_dir_found=no + if $ac_first_candidate; then + ac_missing_aux_files="${ac_missing_aux_files} ${ac_aux}" + else + break + fi + fi + fi + done + if test "$ac_aux_dir_found" = yes; then + ac_aux_dir="$as_dir" + break + fi + ac_first_candidate=false + + as_found=false +done +IFS=$as_save_IFS +if $as_found +then : + +else $as_nop + as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5 +fi + + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +if test -f "${ac_aux_dir}config.guess"; then + ac_config_guess="$SHELL ${ac_aux_dir}config.guess" +fi +if test -f "${ac_aux_dir}config.sub"; then + ac_config_sub="$SHELL ${ac_aux_dir}config.sub" +fi +if test -f "$ac_aux_dir/configure"; then + ac_configure="$SHELL ${ac_aux_dir}configure" +fi + # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false @@ -2193,12 +2586,12 @@ eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +printf "%s\n" "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 +printf "%s\n" "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) @@ -2207,24 +2600,24 @@ ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 -$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 +printf "%s\n" "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else - { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 -$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 +printf "%s\n" "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi - { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 -$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 -$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 +printf "%s\n" "$as_me: former value: \`$ac_old_val'" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 +printf "%s\n" "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in - *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *\'*) ac_arg=$ac_var=`printf "%s\n" "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in @@ -2234,11 +2627,12 @@ fi done if $ac_cache_corrupted; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 -$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 +printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;} + as_fn_error $? "run \`${MAKE-make} distclean' and/or \`rm $cache_file' + and start over" "$LINENO" 5 fi ## -------------------- ## ## Main body of script. ## @@ -2258,36 +2652,9 @@ am__api_version='1.16' -ac_aux_dir= -for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do - if test -f "$ac_dir/install-sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f "$ac_dir/install.sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f "$ac_dir/shtool"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi -done -if test -z "$ac_aux_dir"; then - as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 -fi - -# These three variables are undocumented and unsupported, -# and are intended to be withdrawn in a future Autoconf release. -# They can cause serious problems if a builder's source tree is in a directory -# whose full name contains unusual characters. -ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. -ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. -ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. -# Find a good install program. We prefer a C program (faster), + # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install @@ -2301,20 +2668,25 @@ # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 -$as_echo_n "checking for a BSD-compatible install... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 +printf %s "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then -if ${ac_cv_path_install+:} false; then : - $as_echo_n "(cached) " >&6 -else +if test ${ac_cv_path_install+y} +then : + printf %s "(cached) " >&6 +else $as_nop as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in #(( - ./ | .// | /[cC]/* | \ + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + # Account for fact that we put trailing slashes in our PATH walk. +case $as_dir in #(( + ./ | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; @@ -2324,13 +2696,13 @@ # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext"; then if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + grep dspmsg "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + grep pwplus "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else @@ -2338,12 +2710,12 @@ echo one > conftest.one echo two > conftest.two mkdir conftest.dir - if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + if "$as_dir$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir/" && test -s conftest.one && test -s conftest.two && test -s conftest.dir/conftest.one && test -s conftest.dir/conftest.two then - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + ac_cv_path_install="$as_dir$ac_prog$ac_exec_ext -c" break 3 fi fi @@ -2359,7 +2731,7 @@ rm -rf conftest.one conftest.two conftest.dir fi - if test "${ac_cv_path_install+set}" = set; then + if test ${ac_cv_path_install+y}; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. Don't cache a @@ -2369,8 +2741,8 @@ INSTALL=$ac_install_sh fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 -$as_echo "$INSTALL" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 +printf "%s\n" "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. @@ -2380,8 +2752,8 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 -$as_echo_n "checking whether build environment is sane... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 +printf %s "checking whether build environment is sane... " >&6; } # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' @@ -2435,8 +2807,8 @@ as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= @@ -2455,26 +2827,23 @@ # Double any \ or $. # By default was `s,x,x', remove it if useless. ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' -program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` +program_transform_name=`printf "%s\n" "$program_transform_name" | sed "$ac_script"` + # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` -if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac + + if test x"${MISSING+set}" != xset; then + MISSING="\${SHELL} '$am_aux_dir/missing'" fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 -$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 +printf "%s\n" "$as_me: WARNING: 'missing' script is too old or missing" >&2;} fi if test x"${install_sh+set}" != xset; then @@ -2494,11 +2863,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_STRIP+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else @@ -2506,11 +2876,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -2521,11 +2895,11 @@ fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 -$as_echo "$STRIP" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +printf "%s\n" "$STRIP" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -2534,11 +2908,12 @@ ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_STRIP+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else @@ -2546,11 +2921,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -2561,11 +2940,11 @@ fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 -$as_echo "$ac_ct_STRIP" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +printf "%s\n" "$ac_ct_STRIP" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then @@ -2573,8 +2952,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP @@ -2586,25 +2965,31 @@ fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 -$as_echo_n "checking for a thread-safe mkdir -p... " >&6; } + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a race-free mkdir -p" >&5 +printf %s "checking for a race-free mkdir -p... " >&6; } if test -z "$MKDIR_P"; then - if ${ac_cv_path_mkdir+:} false; then : - $as_echo_n "(cached) " >&6 -else + if test ${ac_cv_path_mkdir+y} +then : + printf %s "(cached) " >&6 +else $as_nop as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do - as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue - case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( - 'mkdir (GNU coreutils) '* | \ - 'mkdir (coreutils) '* | \ + as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext" || continue + case `"$as_dir$ac_prog$ac_exec_ext" --version 2>&1` in #( + 'mkdir ('*'coreutils) '* | \ + 'BusyBox '* | \ 'mkdir (fileutils) '4.1*) - ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext + ac_cv_path_mkdir=$as_dir$ac_prog$ac_exec_ext break 3;; esac done @@ -2615,7 +3000,7 @@ fi test -d ./--version && rmdir ./--version - if test "${ac_cv_path_mkdir+set}" = set; then + if test ${ac_cv_path_mkdir+y}; then MKDIR_P="$ac_cv_path_mkdir -p" else # As a last resort, use the slow shell script. Don't cache a @@ -2625,18 +3010,19 @@ MKDIR_P="$ac_install_sh -d" fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 -$as_echo "$MKDIR_P" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 +printf "%s\n" "$MKDIR_P" >&6; } for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AWK+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_AWK+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else @@ -2644,11 +3030,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_AWK="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -2659,24 +3049,25 @@ fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 -$as_echo "$AWK" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 +printf "%s\n" "$AWK" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi test -n "$AWK" && break done -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +printf %s "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} -ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : - $as_echo_n "(cached) " >&6 -else +ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if eval test \${ac_cv_prog_make_${ac_make}_set+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @@ -2692,12 +3083,12 @@ rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } SET_MAKE= else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi @@ -2711,7 +3102,8 @@ rmdir .tst 2>/dev/null # Check whether --enable-silent-rules was given. -if test "${enable_silent_rules+set}" = set; then : +if test ${enable_silent_rules+y} +then : enableval=$enable_silent_rules; fi @@ -2721,12 +3113,13 @@ *) AM_DEFAULT_VERBOSITY=1;; esac am_make=${MAKE-make} -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 -$as_echo_n "checking whether $am_make supports nested variables... " >&6; } -if ${am_cv_make_support_nested_variables+:} false; then : - $as_echo_n "(cached) " >&6 -else - if $as_echo 'TRUE=$(BAR$(V)) +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 +printf %s "checking whether $am_make supports nested variables... " >&6; } +if test ${am_cv_make_support_nested_variables+y} +then : + printf %s "(cached) " >&6 +else $as_nop + if printf "%s\n" 'TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 @@ -2738,8 +3131,8 @@ am_cv_make_support_nested_variables=no fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 -$as_echo "$am_cv_make_support_nested_variables" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 +printf "%s\n" "$am_cv_make_support_nested_variables" >&6; } if test $am_cv_make_support_nested_variables = yes; then AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' @@ -2771,7 +3164,7 @@ # Define the identity of the package. PACKAGE='libmbim' - VERSION='1.22.0' + VERSION='1.24.8' # Some tools Automake needs. @@ -2818,29 +3211,29 @@ # (that is, avoid stderr redirection). am_uid=`id -u || echo unknown` am_gid=`id -g || echo unknown` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether UID '$am_uid' is supported by ustar format" >&5 -$as_echo_n "checking whether UID '$am_uid' is supported by ustar format... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether UID '$am_uid' is supported by ustar format" >&5 +printf %s "checking whether UID '$am_uid' is supported by ustar format... " >&6; } if test $am_uid -le $am_max_uid; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } _am_tools=none fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether GID '$am_gid' is supported by ustar format" >&5 -$as_echo_n "checking whether GID '$am_gid' is supported by ustar format... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether GID '$am_gid' is supported by ustar format" >&5 +printf %s "checking whether GID '$am_gid' is supported by ustar format... " >&6; } if test $am_gid -le $am_max_gid; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } _am_tools=none fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to create a ustar tar archive" >&5 -$as_echo_n "checking how to create a ustar tar archive... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to create a ustar tar archive" >&5 +printf %s "checking how to create a ustar tar archive... " >&6; } # Go ahead even if we have the value already cached. We do so because we # need to set the values for the 'am__tar' and 'am__untar' variables. @@ -2915,14 +3308,15 @@ done rm -rf conftest.dir - if ${am_cv_prog_tar_ustar+:} false; then : - $as_echo_n "(cached) " >&6 -else + if test ${am_cv_prog_tar_ustar+y} +then : + printf %s "(cached) " >&6 +else $as_nop am_cv_prog_tar_ustar=$_am_tool fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_tar_ustar" >&5 -$as_echo "$am_cv_prog_tar_ustar" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_tar_ustar" >&5 +printf "%s\n" "$am_cv_prog_tar_ustar" >&6; } @@ -2972,17 +3366,18 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 -$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 +printf %s "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } # Check whether --enable-maintainer-mode was given. -if test "${enable_maintainer_mode+set}" = set; then : +if test ${enable_maintainer_mode+y} +then : enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval -else +else $as_nop USE_MAINTAINER_MODE=yes fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 -$as_echo "$USE_MAINTAINER_MODE" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 +printf "%s\n" "$USE_MAINTAINER_MODE" >&6; } if test $USE_MAINTAINER_MODE = yes; then MAINTAINER_MODE_TRUE= MAINTAINER_MODE_FALSE='#' @@ -2996,7 +3391,8 @@ # Check whether --enable-silent-rules was given. -if test "${enable_silent_rules+set}" = set; then : +if test ${enable_silent_rules+y} +then : enableval=$enable_silent_rules; fi @@ -3006,12 +3402,13 @@ *) AM_DEFAULT_VERBOSITY=0;; esac am_make=${MAKE-make} -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 -$as_echo_n "checking whether $am_make supports nested variables... " >&6; } -if ${am_cv_make_support_nested_variables+:} false; then : - $as_echo_n "(cached) " >&6 -else - if $as_echo 'TRUE=$(BAR$(V)) +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 +printf %s "checking whether $am_make supports nested variables... " >&6; } +if test ${am_cv_make_support_nested_variables+y} +then : + printf %s "(cached) " >&6 +else $as_nop + if printf "%s\n" 'TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 @@ -3023,8 +3420,8 @@ am_cv_make_support_nested_variables=no fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 -$as_echo "$am_cv_make_support_nested_variables" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 +printf "%s\n" "$am_cv_make_support_nested_variables" >&6; } if test $am_cv_make_support_nested_variables = yes; then AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' @@ -3035,6 +3432,15 @@ AM_BACKSLASH='\' + + + + + + + + + ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -3043,11 +3449,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_CC+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else @@ -3055,11 +3462,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -3070,11 +3481,11 @@ fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +printf "%s\n" "$CC" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -3083,11 +3494,12 @@ ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_CC+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else @@ -3095,11 +3507,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -3110,11 +3526,11 @@ fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +printf "%s\n" "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_CC" = x; then @@ -3122,8 +3538,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC @@ -3136,11 +3552,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_CC+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else @@ -3148,11 +3565,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -3163,11 +3584,11 @@ fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +printf "%s\n" "$CC" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -3176,11 +3597,12 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_CC+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else @@ -3189,15 +3611,19 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -3213,18 +3639,18 @@ # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" + ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +printf "%s\n" "$CC" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -3235,11 +3661,12 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_CC+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else @@ -3247,11 +3674,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -3262,11 +3693,11 @@ fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +printf "%s\n" "$CC" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -3279,11 +3710,12 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_CC+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else @@ -3291,11 +3723,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -3306,11 +3742,11 @@ fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +printf "%s\n" "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -3322,34 +3758,138 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +fi + +fi +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args. +set dummy ${ac_tool_prefix}clang; ac_word=$2 +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_CC+y} +then : + printf %s "(cached) " >&6 +else $as_nop + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}clang" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +printf "%s\n" "$CC" >&6; } +else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_CC"; then + ac_ct_CC=$CC + # Extract the first word of "clang", so it can be a program name with args. +set dummy clang; ac_word=$2 +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_CC+y} +then : + printf %s "(cached) " >&6 +else $as_nop + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="clang" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +printf "%s\n" "$ac_ct_CC" >&6; } +else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } +fi + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi +else + CC="$ac_cv_prog_CC" fi fi -test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. -$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 +printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 -for ac_option in --version -v -V -qversion; do +for ac_option in --version -v -V -qversion -version; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 +printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then @@ -3359,7 +3899,7 @@ cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done @@ -3367,7 +3907,7 @@ /* end confdefs.h. */ int -main () +main (void) { ; @@ -3379,9 +3919,9 @@ # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 -$as_echo_n "checking whether the C compiler works... " >&6; } -ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +printf %s "checking whether the C compiler works... " >&6; } +ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" @@ -3402,11 +3942,12 @@ *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 +printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, @@ -3423,7 +3964,7 @@ # certainly right. break;; *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi @@ -3439,44 +3980,46 @@ done test "$ac_cv_exeext" = no && ac_cv_exeext= -else +else $as_nop ac_file='' fi -if test -z "$ac_file"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -$as_echo "$as_me: failed program was:" >&5 +if test -z "$ac_file" +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } +printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "C compiler cannot create executables See \`config.log' for more details" "$LINENO" 5; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 -$as_echo_n "checking for C compiler default output file name... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 -$as_echo "$ac_file" >&6; } +else $as_nop + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +printf %s "checking for C compiler default output file name... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +printf "%s\n" "$ac_file" >&6; } ac_exeext=$ac_cv_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 -$as_echo_n "checking for suffix of executables... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 +printf %s "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 +printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with @@ -3490,15 +4033,15 @@ * ) break;; esac done -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +else $as_nop + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of executables: cannot compile and link See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest conftest$ac_cv_exeext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 -$as_echo "$ac_cv_exeext" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 +printf "%s\n" "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext @@ -3507,7 +4050,7 @@ /* end confdefs.h. */ #include int -main () +main (void) { FILE *f = fopen ("conftest.out", "w"); return ferror (f) || fclose (f) != 0; @@ -3519,8 +4062,8 @@ ac_clean_files="$ac_clean_files conftest.out" # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 -$as_echo_n "checking whether we are cross compiling... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +printf %s "checking whether we are cross compiling... " >&6; } if test "$cross_compiling" != yes; then { { ac_try="$ac_link" case "(($ac_try" in @@ -3528,10 +4071,10 @@ *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 +printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if { ac_try='./conftest$ac_cv_exeext' { { case "(($ac_try" in @@ -3539,39 +4082,40 @@ *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 +printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run C compiled programs. + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details" "$LINENO" 5; } fi fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 -$as_echo "$cross_compiling" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +printf "%s\n" "$cross_compiling" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 -$as_echo_n "checking for suffix of object files... " >&6; } -if ${ac_cv_objext+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 +printf %s "checking for suffix of object files... " >&6; } +if test ${ac_cv_objext+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int -main () +main (void) { ; @@ -3585,11 +4129,12 @@ *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 +printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in @@ -3598,31 +4143,32 @@ break;; esac done -else - $as_echo "$as_me: failed program was:" >&5 +else $as_nop + printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of object files: cannot compile See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 -$as_echo "$ac_cv_objext" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 +printf "%s\n" "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 -$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if ${ac_cv_c_compiler_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5 +printf %s "checking whether the compiler supports GNU C... " >&6; } +if test ${ac_cv_c_compiler_gnu+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int -main () +main (void) { #ifndef __GNUC__ choke me @@ -3632,29 +4178,33 @@ return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ac_compiler_gnu=yes -else +else $as_nop ac_compiler_gnu=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 -$as_echo "$ac_cv_c_compiler_gnu" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 +printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; } +ac_compiler_gnu=$ac_cv_c_compiler_gnu + if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi -ac_test_CFLAGS=${CFLAGS+set} +ac_test_CFLAGS=${CFLAGS+y} ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 -$as_echo_n "checking whether $CC accepts -g... " >&6; } -if ${ac_cv_prog_cc_g+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 +printf %s "checking whether $CC accepts -g... " >&6; } +if test ${ac_cv_prog_cc_g+y} +then : + printf %s "(cached) " >&6 +else $as_nop ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no @@ -3663,57 +4213,60 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ac_cv_prog_cc_g=yes -else +else $as_nop CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : -else +else $as_nop ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ac_cv_prog_cc_g=yes fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 -$as_echo "$ac_cv_prog_cc_g" >&6; } -if test "$ac_test_CFLAGS" = set; then +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 +printf "%s\n" "$ac_cv_prog_cc_g" >&6; } +if test $ac_test_CFLAGS; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then @@ -3728,94 +4281,144 @@ CFLAGS= fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 -$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if ${ac_cv_prog_cc_c89+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_prog_cc_c89=no +ac_prog_cc_stdc=no +if test x$ac_prog_cc_stdc = xno +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5 +printf %s "checking for $CC option to enable C11 features... " >&6; } +if test ${ac_cv_prog_cc_c11+y} +then : + printf %s "(cached) " >&6 +else $as_nop + ac_cv_prog_cc_c11=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -struct stat; -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; +$ac_c_conftest_c11_program +_ACEOF +for ac_arg in '' -std=gnu11 +do + CC="$ac_save_CC $ac_arg" + if ac_fn_c_try_compile "$LINENO" +then : + ac_cv_prog_cc_c11=$ac_arg +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam + test "x$ac_cv_prog_cc_c11" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC +fi -/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters - inside strings and character constants. */ -#define FOO(x) 'x' -int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; +if test "x$ac_cv_prog_cc_c11" = xno +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +printf "%s\n" "unsupported" >&6; } +else $as_nop + if test "x$ac_cv_prog_cc_c11" = x +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +printf "%s\n" "none needed" >&6; } +else $as_nop + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5 +printf "%s\n" "$ac_cv_prog_cc_c11" >&6; } + CC="$CC $ac_cv_prog_cc_c11" +fi + ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11 + ac_prog_cc_stdc=c11 +fi +fi +if test x$ac_prog_cc_stdc = xno +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5 +printf %s "checking for $CC option to enable C99 features... " >&6; } +if test ${ac_cv_prog_cc_c99+y} +then : + printf %s "(cached) " >&6 +else $as_nop + ac_cv_prog_cc_c99=no +ac_save_CC=$CC +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_c_conftest_c99_program +_ACEOF +for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99= +do + CC="$ac_save_CC $ac_arg" + if ac_fn_c_try_compile "$LINENO" +then : + ac_cv_prog_cc_c99=$ac_arg +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam + test "x$ac_cv_prog_cc_c99" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC +fi -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} +if test "x$ac_cv_prog_cc_c99" = xno +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +printf "%s\n" "unsupported" >&6; } +else $as_nop + if test "x$ac_cv_prog_cc_c99" = x +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +printf "%s\n" "none needed" >&6; } +else $as_nop + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5 +printf "%s\n" "$ac_cv_prog_cc_c99" >&6; } + CC="$CC $ac_cv_prog_cc_c99" +fi + ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99 + ac_prog_cc_stdc=c99 +fi +fi +if test x$ac_prog_cc_stdc = xno +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5 +printf %s "checking for $CC option to enable C89 features... " >&6; } +if test ${ac_cv_prog_cc_c89+y} +then : + printf %s "(cached) " >&6 +else $as_nop + ac_cv_prog_cc_c89=no +ac_save_CC=$CC +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_c_conftest_c89_program _ACEOF -for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ - -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO"; then : + if ac_fn_c_try_compile "$LINENO" +then : ac_cv_prog_cc_c89=$ac_arg fi -rm -f core conftest.err conftest.$ac_objext +rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC - fi -# AC_CACHE_VAL -case "x$ac_cv_prog_cc_c89" in - x) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -$as_echo "none needed" >&6; } ;; - xno) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -$as_echo "unsupported" >&6; } ;; - *) - CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 -$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; -esac -if test "x$ac_cv_prog_cc_c89" != xno; then : +if test "x$ac_cv_prog_cc_c89" = xno +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +printf "%s\n" "unsupported" >&6; } +else $as_nop + if test "x$ac_cv_prog_cc_c89" = x +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +printf "%s\n" "none needed" >&6; } +else $as_nop + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 +printf "%s\n" "$ac_cv_prog_cc_c89" >&6; } + CC="$CC $ac_cv_prog_cc_c89" +fi + ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89 + ac_prog_cc_stdc=c89 +fi fi ac_ext=c @@ -3824,21 +4427,23 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -ac_ext=c + + ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 -$as_echo_n "checking whether $CC understands -c and -o together... " >&6; } -if ${am_cv_prog_cc_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 +printf %s "checking whether $CC understands -c and -o together... " >&6; } +if test ${am_cv_prog_cc_c_o+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int -main () +main (void) { ; @@ -3866,8 +4471,8 @@ rm -f core conftest* unset am_i fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 -$as_echo "$am_cv_prog_cc_c_o" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 +printf "%s\n" "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. @@ -3886,8 +4491,8 @@ ac_config_commands="$ac_config_commands depfiles" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5 -$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5 +printf %s "checking whether ${MAKE-make} supports the include directive... " >&6; } cat > confinc.mk << 'END' am__doit: @echo this is the am__doit target >confinc.out @@ -3923,11 +4528,12 @@ fi done rm -f confinc.* confmf.* -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5 -$as_echo "${_am_result}" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5 +printf "%s\n" "${_am_result}" >&6; } # Check whether --enable-dependency-tracking was given. -if test "${enable_dependency_tracking+set}" = set; then : +if test ${enable_dependency_tracking+y} +then : enableval=$enable_dependency_tracking; fi @@ -3948,11 +4554,12 @@ depcc="$CC" am_compiler_list= -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 -$as_echo_n "checking dependency style of $depcc... " >&6; } -if ${am_cv_CC_dependencies_compiler_type+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +printf %s "checking dependency style of $depcc... " >&6; } +if test ${am_cv_CC_dependencies_compiler_type+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For @@ -4059,8 +4666,8 @@ fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 -$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 +printf "%s\n" "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if @@ -4080,13 +4687,13 @@ case `pwd` in *\ * | *\ *) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 -$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 +printf "%s\n" "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; esac -macro_version='2.4.6.42-b88ce' +macro_version='2.4.6.42-b88ce-dirty' macro_revision='2.4.6.42' @@ -4101,28 +4708,32 @@ + ltmain=$ac_aux_dir/ltmain.sh -# Make sure we can run config.sub. -$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || - as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 -$as_echo_n "checking build system type... " >&6; } -if ${ac_cv_build+:} false; then : - $as_echo_n "(cached) " >&6 -else + + + # Make sure we can run config.sub. +$SHELL "${ac_aux_dir}config.sub" sun4 >/dev/null 2>&1 || + as_fn_error $? "cannot run $SHELL ${ac_aux_dir}config.sub" "$LINENO" 5 + +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 +printf %s "checking build system type... " >&6; } +if test ${ac_cv_build+y} +then : + printf %s "(cached) " >&6 +else $as_nop ac_build_alias=$build_alias test "x$ac_build_alias" = x && - ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` + ac_build_alias=`$SHELL "${ac_aux_dir}config.guess"` test "x$ac_build_alias" = x && as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 -ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 +ac_cv_build=`$SHELL "${ac_aux_dir}config.sub" $ac_build_alias` || + as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $ac_build_alias failed" "$LINENO" 5 fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 -$as_echo "$ac_cv_build" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 +printf "%s\n" "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; @@ -4141,21 +4752,22 @@ case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 -$as_echo_n "checking host system type... " >&6; } -if ${ac_cv_host+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 +printf %s "checking host system type... " >&6; } +if test ${ac_cv_host+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else - ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 + ac_cv_host=`$SHELL "${ac_aux_dir}config.sub" $host_alias` || + as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $host_alias failed" "$LINENO" 5 fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 -$as_echo "$ac_cv_host" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 +printf "%s\n" "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; @@ -4195,8 +4807,8 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 -$as_echo_n "checking how to print strings... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 +printf %s "checking how to print strings... " >&6; } # Test print first, because it will be a builtin if present. if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then @@ -4222,12 +4834,12 @@ } case $ECHO in - printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 -$as_echo "printf" >&6; } ;; - print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 -$as_echo "print -r" >&6; } ;; - *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 -$as_echo "cat" >&6; } ;; + printf*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: printf" >&5 +printf "%s\n" "printf" >&6; } ;; + print*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 +printf "%s\n" "print -r" >&6; } ;; + *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cat" >&5 +printf "%s\n" "cat" >&6; } ;; esac @@ -4243,11 +4855,12 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 -$as_echo_n "checking for a sed that does not truncate output... " >&6; } -if ${ac_cv_path_SED+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 +printf %s "checking for a sed that does not truncate output... " >&6; } +if test ${ac_cv_path_SED+y} +then : + printf %s "(cached) " >&6 +else $as_nop ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ for ac_i in 1 2 3 4 5 6 7; do ac_script="$ac_script$as_nl$ac_script" @@ -4261,10 +4874,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + for ac_prog in sed gsed + do for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" + ac_path_SED="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_SED" || continue # Check for GNU ac_path_SED and select it if it is found. # Check for GNU $ac_path_SED @@ -4273,13 +4891,13 @@ ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; *) ac_count=0 - $as_echo_n 0123456789 >"conftest.in" + printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - $as_echo '' >> "conftest.nl" + printf "%s\n" '' >> "conftest.nl" "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val @@ -4307,8 +4925,8 @@ fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 -$as_echo "$ac_cv_path_SED" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 +printf "%s\n" "$ac_cv_path_SED" >&6; } SED="$ac_cv_path_SED" rm -f conftest.sed @@ -4325,11 +4943,12 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 -$as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if ${ac_cv_path_GREP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +printf %s "checking for grep that handles long lines and -e... " >&6; } +if test ${ac_cv_path_GREP+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -z "$GREP"; then ac_path_GREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST @@ -4337,10 +4956,15 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + for ac_prog in grep ggrep + do for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + ac_path_GREP="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_GREP" || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP @@ -4349,13 +4973,13 @@ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; *) ac_count=0 - $as_echo_n 0123456789 >"conftest.in" + printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - $as_echo 'GREP' >> "conftest.nl" + printf "%s\n" 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val @@ -4383,16 +5007,17 @@ fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 -$as_echo "$ac_cv_path_GREP" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +printf "%s\n" "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 -$as_echo_n "checking for egrep... " >&6; } -if ${ac_cv_path_EGREP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +printf %s "checking for egrep... " >&6; } +if test ${ac_cv_path_EGREP+y} +then : + printf %s "(cached) " >&6 +else $as_nop if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else @@ -4403,10 +5028,15 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + for ac_prog in egrep + do for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_EGREP" || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP @@ -4415,13 +5045,13 @@ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; *) ac_count=0 - $as_echo_n 0123456789 >"conftest.in" + printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - $as_echo 'EGREP' >> "conftest.nl" + printf "%s\n" 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val @@ -4450,16 +5080,17 @@ fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 -$as_echo "$ac_cv_path_EGREP" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +printf "%s\n" "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 -$as_echo_n "checking for fgrep... " >&6; } -if ${ac_cv_path_FGREP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 +printf %s "checking for fgrep... " >&6; } +if test ${ac_cv_path_FGREP+y} +then : + printf %s "(cached) " >&6 +else $as_nop if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 then ac_cv_path_FGREP="$GREP -F" else @@ -4470,10 +5101,15 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in fgrep; do + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + for ac_prog in fgrep + do for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext" + ac_path_FGREP="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_FGREP" || continue # Check for GNU ac_path_FGREP and select it if it is found. # Check for GNU $ac_path_FGREP @@ -4482,13 +5118,13 @@ ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; *) ac_count=0 - $as_echo_n 0123456789 >"conftest.in" + printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - $as_echo 'FGREP' >> "conftest.nl" + printf "%s\n" 'FGREP' >> "conftest.nl" "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val @@ -4517,8 +5153,8 @@ fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 -$as_echo "$ac_cv_path_FGREP" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 +printf "%s\n" "$ac_cv_path_FGREP" >&6; } FGREP="$ac_cv_path_FGREP" @@ -4543,17 +5179,18 @@ # Check whether --with-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then : +if test ${with_gnu_ld+y} +then : withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes -else +else $as_nop with_gnu_ld=no fi ac_prog=ld if test yes = "$GCC"; then # Check if gcc -print-prog-name=ld gives a path. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 -$as_echo_n "checking for ld used by $CC... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +printf %s "checking for ld used by $CC... " >&6; } case $host in *-*-mingw*) # gcc leaves a trailing carriage return, which upsets mingw @@ -4582,15 +5219,16 @@ ;; esac elif test yes = "$with_gnu_ld"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 -$as_echo_n "checking for GNU ld... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +printf %s "checking for GNU ld... " >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 -$as_echo_n "checking for non-GNU ld... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +printf %s "checking for non-GNU ld... " >&6; } fi -if ${lt_cv_path_LD+:} false; then : - $as_echo_n "(cached) " >&6 -else +if test ${lt_cv_path_LD+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -z "$LD"; then lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do @@ -4619,18 +5257,19 @@ LD=$lt_cv_path_LD if test -n "$LD"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 -$as_echo "$LD" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 +printf "%s\n" "$LD" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 -$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } -if ${lt_cv_prog_gnu_ld+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +printf %s "checking if the linker ($LD) is GNU ld... " >&6; } +if test ${lt_cv_prog_gnu_ld+y} +then : + printf %s "(cached) " >&6 +else $as_nop # I'd rather use --version here, but apparently some GNU lds only accept -v. case `$LD -v 2>&1 &5 -$as_echo "$lt_cv_prog_gnu_ld" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5 +printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld @@ -4653,11 +5292,12 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 -$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } -if ${lt_cv_path_NM+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 +printf %s "checking for BSD- or MS-compatible name lister (nm)... " >&6; } +if test ${lt_cv_path_NM+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$NM"; then # Let the user override the test. lt_cv_path_NM=$NM @@ -4707,8 +5347,8 @@ : ${lt_cv_path_NM=no} fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 -$as_echo "$lt_cv_path_NM" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 +printf "%s\n" "$lt_cv_path_NM" >&6; } if test no != "$lt_cv_path_NM"; then NM=$lt_cv_path_NM else @@ -4721,11 +5361,12 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_DUMPBIN+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_DUMPBIN+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$DUMPBIN"; then ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test. else @@ -4733,11 +5374,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -4748,11 +5393,11 @@ fi DUMPBIN=$ac_cv_prog_DUMPBIN if test -n "$DUMPBIN"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 -$as_echo "$DUMPBIN" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 +printf "%s\n" "$DUMPBIN" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -4765,11 +5410,12 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_DUMPBIN+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_DUMPBIN"; then ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test. else @@ -4777,11 +5423,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -4792,11 +5442,11 @@ fi ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN if test -n "$ac_ct_DUMPBIN"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 -$as_echo "$ac_ct_DUMPBIN" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 +printf "%s\n" "$ac_ct_DUMPBIN" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -4808,8 +5458,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DUMPBIN=$ac_ct_DUMPBIN @@ -4837,11 +5487,12 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 -$as_echo_n "checking the name lister ($NM) interface... " >&6; } -if ${lt_cv_nm_interface+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 +printf %s "checking the name lister ($NM) interface... " >&6; } +if test ${lt_cv_nm_interface+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) @@ -4857,26 +5508,27 @@ fi rm -f conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 -$as_echo "$lt_cv_nm_interface" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 +printf "%s\n" "$lt_cv_nm_interface" >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 -$as_echo_n "checking whether ln -s works... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 +printf %s "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 -$as_echo "no, using $LN_S" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 +printf "%s\n" "no, using $LN_S" >&6; } fi # find the maximum length of command line arguments -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 -$as_echo_n "checking the maximum length of command line arguments... " >&6; } -if ${lt_cv_sys_max_cmd_len+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 +printf %s "checking the maximum length of command line arguments... " >&6; } +if test ${lt_cv_sys_max_cmd_len+y} +then : + printf %s "(cached) " >&6 +else $as_nop i=0 teststring=ABCD @@ -5003,11 +5655,11 @@ fi if test -n "$lt_cv_sys_max_cmd_len"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 -$as_echo "$lt_cv_sys_max_cmd_len" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 +printf "%s\n" "$lt_cv_sys_max_cmd_len" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 -$as_echo "none" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none" >&5 +printf "%s\n" "none" >&6; } fi max_cmd_len=$lt_cv_sys_max_cmd_len @@ -5051,11 +5703,12 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 -$as_echo_n "checking how to convert $build file names to $host format... " >&6; } -if ${lt_cv_to_host_file_cmd+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 +printf %s "checking how to convert $build file names to $host format... " >&6; } +if test ${lt_cv_to_host_file_cmd+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $host in *-*-mingw* ) case $build in @@ -5091,18 +5744,19 @@ fi to_host_file_cmd=$lt_cv_to_host_file_cmd -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 -$as_echo "$lt_cv_to_host_file_cmd" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 +printf "%s\n" "$lt_cv_to_host_file_cmd" >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 -$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; } -if ${lt_cv_to_tool_file_cmd+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 +printf %s "checking how to convert $build file names to toolchain format... " >&6; } +if test ${lt_cv_to_tool_file_cmd+y} +then : + printf %s "(cached) " >&6 +else $as_nop #assume ordinary cross tools, or native build. lt_cv_to_tool_file_cmd=func_convert_file_noop case $host in @@ -5118,22 +5772,23 @@ fi to_tool_file_cmd=$lt_cv_to_tool_file_cmd -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 -$as_echo "$lt_cv_to_tool_file_cmd" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 +printf "%s\n" "$lt_cv_to_tool_file_cmd" >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 -$as_echo_n "checking for $LD option to reload object files... " >&6; } -if ${lt_cv_ld_reload_flag+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 +printf %s "checking for $LD option to reload object files... " >&6; } +if test ${lt_cv_ld_reload_flag+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_ld_reload_flag='-r' fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 -$as_echo "$lt_cv_ld_reload_flag" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 +printf "%s\n" "$lt_cv_ld_reload_flag" >&6; } reload_flag=$lt_cv_ld_reload_flag case $reload_flag in "" | " "*) ;; @@ -5166,11 +5821,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. set dummy ${ac_tool_prefix}objdump; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OBJDUMP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_OBJDUMP+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$OBJDUMP"; then ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. else @@ -5178,11 +5834,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -5193,11 +5853,11 @@ fi OBJDUMP=$ac_cv_prog_OBJDUMP if test -n "$OBJDUMP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 -$as_echo "$OBJDUMP" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 +printf "%s\n" "$OBJDUMP" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -5206,11 +5866,12 @@ ac_ct_OBJDUMP=$OBJDUMP # Extract the first word of "objdump", so it can be a program name with args. set dummy objdump; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_OBJDUMP+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_OBJDUMP"; then ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. else @@ -5218,11 +5879,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OBJDUMP="objdump" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -5233,11 +5898,11 @@ fi ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP if test -n "$ac_ct_OBJDUMP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 -$as_echo "$ac_ct_OBJDUMP" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 +printf "%s\n" "$ac_ct_OBJDUMP" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_OBJDUMP" = x; then @@ -5245,8 +5910,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OBJDUMP=$ac_ct_OBJDUMP @@ -5265,11 +5930,12 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 -$as_echo_n "checking how to recognize dependent libraries... " >&6; } -if ${lt_cv_deplibs_check_method+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 +printf %s "checking how to recognize dependent libraries... " >&6; } +if test ${lt_cv_deplibs_check_method+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_file_magic_cmd='$MAGIC_CMD' lt_cv_file_magic_test_file= lt_cv_deplibs_check_method='unknown' @@ -5465,8 +6131,8 @@ esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 -$as_echo "$lt_cv_deplibs_check_method" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 +printf "%s\n" "$lt_cv_deplibs_check_method" >&6; } file_magic_glob= want_nocaseglob=no @@ -5510,11 +6176,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. set dummy ${ac_tool_prefix}dlltool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_DLLTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_DLLTOOL+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$DLLTOOL"; then ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. else @@ -5522,11 +6189,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -5537,11 +6208,11 @@ fi DLLTOOL=$ac_cv_prog_DLLTOOL if test -n "$DLLTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 -$as_echo "$DLLTOOL" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 +printf "%s\n" "$DLLTOOL" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -5550,11 +6221,12 @@ ac_ct_DLLTOOL=$DLLTOOL # Extract the first word of "dlltool", so it can be a program name with args. set dummy dlltool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_DLLTOOL+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_DLLTOOL"; then ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. else @@ -5562,11 +6234,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DLLTOOL="dlltool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -5577,11 +6253,11 @@ fi ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL if test -n "$ac_ct_DLLTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 -$as_echo "$ac_ct_DLLTOOL" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 +printf "%s\n" "$ac_ct_DLLTOOL" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_DLLTOOL" = x; then @@ -5589,8 +6265,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DLLTOOL=$ac_ct_DLLTOOL @@ -5610,11 +6286,12 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 -$as_echo_n "checking how to associate runtime and link libraries... " >&6; } -if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 +printf %s "checking how to associate runtime and link libraries... " >&6; } +if test ${lt_cv_sharedlib_from_linklib_cmd+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_sharedlib_from_linklib_cmd='unknown' case $host_os in @@ -5637,8 +6314,8 @@ esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 -$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 +printf "%s\n" "$lt_cv_sharedlib_from_linklib_cmd" >&6; } sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO @@ -5654,11 +6331,12 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AR+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_AR+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$AR"; then ac_cv_prog_AR="$AR" # Let the user override the test. else @@ -5666,11 +6344,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_AR="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -5681,11 +6363,11 @@ fi AR=$ac_cv_prog_AR if test -n "$AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 -$as_echo "$AR" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +printf "%s\n" "$AR" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -5698,11 +6380,12 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_AR+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_AR+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_AR"; then ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. else @@ -5710,11 +6393,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_AR="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -5725,11 +6412,11 @@ fi ac_ct_AR=$ac_cv_prog_ac_ct_AR if test -n "$ac_ct_AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 -$as_echo "$ac_ct_AR" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 +printf "%s\n" "$ac_ct_AR" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -5741,8 +6428,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac AR=$ac_ct_AR @@ -5778,30 +6465,32 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 -$as_echo_n "checking for archiver @FILE support... " >&6; } -if ${lt_cv_ar_at_file+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 +printf %s "checking for archiver @FILE support... " >&6; } +if test ${lt_cv_ar_at_file+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_ar_at_file=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : echo conftest.$ac_objext > conftest.lst lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 (eval $lt_ar_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test 0 -eq "$ac_status"; then # Ensure the archiver fails upon bogus file names. @@ -5809,7 +6498,7 @@ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 (eval $lt_ar_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test 0 -ne "$ac_status"; then lt_cv_ar_at_file=@ @@ -5818,11 +6507,11 @@ rm -f conftest.* libconftest.a fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 -$as_echo "$lt_cv_ar_at_file" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 +printf "%s\n" "$lt_cv_ar_at_file" >&6; } if test no = "$lt_cv_ar_at_file"; then archiver_list_spec= @@ -5839,11 +6528,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_STRIP+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else @@ -5851,11 +6541,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -5866,11 +6560,11 @@ fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 -$as_echo "$STRIP" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +printf "%s\n" "$STRIP" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -5879,11 +6573,12 @@ ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_STRIP+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else @@ -5891,11 +6586,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -5906,11 +6605,11 @@ fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 -$as_echo "$ac_ct_STRIP" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +printf "%s\n" "$ac_ct_STRIP" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then @@ -5918,8 +6617,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP @@ -5938,11 +6637,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_RANLIB+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else @@ -5950,11 +6650,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -5965,11 +6669,11 @@ fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 -$as_echo "$RANLIB" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 +printf "%s\n" "$RANLIB" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -5978,11 +6682,12 @@ ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_RANLIB+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else @@ -5990,11 +6695,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_RANLIB="ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -6005,11 +6714,11 @@ fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 -$as_echo "$ac_ct_RANLIB" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 +printf "%s\n" "$ac_ct_RANLIB" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_RANLIB" = x; then @@ -6017,8 +6726,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac RANLIB=$ac_ct_RANLIB @@ -6107,11 +6816,12 @@ # Check for command to grab the raw symbol name followed by C symbol from nm. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 -$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } -if ${lt_cv_sys_global_symbol_pipe+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 +printf %s "checking command to parse $NM output from $compiler object... " >&6; } +if test ${lt_cv_sys_global_symbol_pipe+y} +then : + printf %s "(cached) " >&6 +else $as_nop # These are sane defaults that work on at least a few old systems. # [They come from Ultrix. What could be older than Ultrix?!! ;)] @@ -6263,14 +6973,14 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then # Now try to grab the symbols. nlist=conftest.nm if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then @@ -6339,7 +7049,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s conftest$ac_exeext; then pipe_works=yes fi @@ -6374,11 +7084,11 @@ lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 -$as_echo "failed" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5 +printf "%s\n" "failed" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 -$as_echo "ok" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ok" >&5 +printf "%s\n" "ok" >&6; } fi # Response file support. @@ -6424,13 +7134,14 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 -$as_echo_n "checking for sysroot... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 +printf %s "checking for sysroot... " >&6; } # Check whether --with-sysroot was given. -if test "${with_sysroot+set}" = set; then : +if test ${with_sysroot+y} +then : withval=$with_sysroot; -else +else $as_nop with_sysroot=no fi @@ -6448,24 +7159,25 @@ no|'') ;; #( *) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 -$as_echo "$with_sysroot" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 +printf "%s\n" "$with_sysroot" >&6; } as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 ;; esac - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 -$as_echo "${lt_sysroot:-no}" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 +printf "%s\n" "${lt_sysroot:-no}" >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 -$as_echo_n "checking for a working dd... " >&6; } -if ${ac_cv_path_lt_DD+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 +printf %s "checking for a working dd... " >&6; } +if test ${ac_cv_path_lt_DD+y} +then : + printf %s "(cached) " >&6 +else $as_nop printf 0123456789abcdef0123456789abcdef >conftest.i cat conftest.i conftest.i >conftest2.i : ${lt_DD:=$DD} @@ -6476,10 +7188,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in dd; do + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + for ac_prog in dd + do for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext" + ac_path_lt_DD="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_lt_DD" || continue if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then cmp -s conftest.i conftest.out \ @@ -6499,15 +7216,16 @@ rm -f conftest.i conftest2.i conftest.out fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 -$as_echo "$ac_cv_path_lt_DD" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 +printf "%s\n" "$ac_cv_path_lt_DD" >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 -$as_echo_n "checking how to truncate binary pipes... " >&6; } -if ${lt_cv_truncate_bin+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 +printf %s "checking how to truncate binary pipes... " >&6; } +if test ${lt_cv_truncate_bin+y} +then : + printf %s "(cached) " >&6 +else $as_nop printf 0123456789abcdef0123456789abcdef >conftest.i cat conftest.i conftest.i >conftest2.i lt_cv_truncate_bin= @@ -6518,8 +7236,8 @@ rm -f conftest.i conftest2.i conftest.out test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 -$as_echo "$lt_cv_truncate_bin" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 +printf "%s\n" "$lt_cv_truncate_bin" >&6; } @@ -6542,7 +7260,8 @@ } # Check whether --enable-libtool-lock was given. -if test "${enable_libtool_lock+set}" = set; then : +if test ${enable_libtool_lock+y} +then : enableval=$enable_libtool_lock; fi @@ -6558,7 +7277,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) @@ -6578,7 +7297,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then if test yes = "$lt_cv_prog_gnu_ld"; then case `/usr/bin/file conftest.$ac_objext` in @@ -6616,7 +7335,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then emul=elf case `/usr/bin/file conftest.$ac_objext` in @@ -6657,7 +7376,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *32-bit*) @@ -6720,11 +7439,12 @@ # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -belf" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 -$as_echo_n "checking whether the C compiler needs -belf... " >&6; } -if ${lt_cv_cc_needs_belf+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 +printf %s "checking whether the C compiler needs -belf... " >&6; } +if test ${lt_cv_cc_needs_belf+y} +then : + printf %s "(cached) " >&6 +else $as_nop ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -6735,19 +7455,20 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : lt_cv_cc_needs_belf=yes -else +else $as_nop lt_cv_cc_needs_belf=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -6756,8 +7477,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 -$as_echo "$lt_cv_cc_needs_belf" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 +printf "%s\n" "$lt_cv_cc_needs_belf" >&6; } if test yes != "$lt_cv_cc_needs_belf"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS=$SAVE_CFLAGS @@ -6770,7 +7491,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *64-bit*) @@ -6807,11 +7528,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. set dummy ${ac_tool_prefix}mt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_MANIFEST_TOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_MANIFEST_TOOL+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$MANIFEST_TOOL"; then ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test. else @@ -6819,11 +7541,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -6834,11 +7560,11 @@ fi MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL if test -n "$MANIFEST_TOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 -$as_echo "$MANIFEST_TOOL" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 +printf "%s\n" "$MANIFEST_TOOL" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -6847,11 +7573,12 @@ ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL # Extract the first word of "mt", so it can be a program name with args. set dummy mt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_MANIFEST_TOOL+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_MANIFEST_TOOL"; then ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test. else @@ -6859,11 +7586,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -6874,11 +7605,11 @@ fi ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL if test -n "$ac_ct_MANIFEST_TOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 -$as_echo "$ac_ct_MANIFEST_TOOL" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 +printf "%s\n" "$ac_ct_MANIFEST_TOOL" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_MANIFEST_TOOL" = x; then @@ -6886,8 +7617,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL @@ -6897,11 +7628,12 @@ fi test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 -$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } -if ${lt_cv_path_mainfest_tool+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 +printf %s "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } +if test ${lt_cv_path_mainfest_tool+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_path_mainfest_tool=no echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out @@ -6911,8 +7643,8 @@ fi rm -f conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 -$as_echo "$lt_cv_path_mainfest_tool" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 +printf "%s\n" "$lt_cv_path_mainfest_tool" >&6; } if test yes != "$lt_cv_path_mainfest_tool"; then MANIFEST_TOOL=: fi @@ -6927,11 +7659,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_DSYMUTIL+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_DSYMUTIL+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$DSYMUTIL"; then ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test. else @@ -6939,11 +7672,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -6954,11 +7691,11 @@ fi DSYMUTIL=$ac_cv_prog_DSYMUTIL if test -n "$DSYMUTIL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 -$as_echo "$DSYMUTIL" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 +printf "%s\n" "$DSYMUTIL" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -6967,11 +7704,12 @@ ac_ct_DSYMUTIL=$DSYMUTIL # Extract the first word of "dsymutil", so it can be a program name with args. set dummy dsymutil; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_DSYMUTIL+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_DSYMUTIL"; then ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test. else @@ -6979,11 +7717,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -6994,11 +7736,11 @@ fi ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL if test -n "$ac_ct_DSYMUTIL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 -$as_echo "$ac_ct_DSYMUTIL" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 +printf "%s\n" "$ac_ct_DSYMUTIL" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_DSYMUTIL" = x; then @@ -7006,8 +7748,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DSYMUTIL=$ac_ct_DSYMUTIL @@ -7019,11 +7761,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. set dummy ${ac_tool_prefix}nmedit; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_NMEDIT+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_NMEDIT+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$NMEDIT"; then ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test. else @@ -7031,11 +7774,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -7046,11 +7793,11 @@ fi NMEDIT=$ac_cv_prog_NMEDIT if test -n "$NMEDIT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 -$as_echo "$NMEDIT" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 +printf "%s\n" "$NMEDIT" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -7059,11 +7806,12 @@ ac_ct_NMEDIT=$NMEDIT # Extract the first word of "nmedit", so it can be a program name with args. set dummy nmedit; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_NMEDIT+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_NMEDIT"; then ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test. else @@ -7071,11 +7819,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_NMEDIT="nmedit" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -7086,11 +7838,11 @@ fi ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT if test -n "$ac_ct_NMEDIT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 -$as_echo "$ac_ct_NMEDIT" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 +printf "%s\n" "$ac_ct_NMEDIT" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_NMEDIT" = x; then @@ -7098,8 +7850,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac NMEDIT=$ac_ct_NMEDIT @@ -7111,11 +7863,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. set dummy ${ac_tool_prefix}lipo; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_LIPO+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_LIPO+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$LIPO"; then ac_cv_prog_LIPO="$LIPO" # Let the user override the test. else @@ -7123,11 +7876,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_LIPO="${ac_tool_prefix}lipo" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -7138,11 +7895,11 @@ fi LIPO=$ac_cv_prog_LIPO if test -n "$LIPO"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 -$as_echo "$LIPO" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 +printf "%s\n" "$LIPO" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -7151,11 +7908,12 @@ ac_ct_LIPO=$LIPO # Extract the first word of "lipo", so it can be a program name with args. set dummy lipo; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_LIPO+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_LIPO+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_LIPO"; then ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test. else @@ -7163,11 +7921,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_LIPO="lipo" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -7178,11 +7940,11 @@ fi ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO if test -n "$ac_ct_LIPO"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 -$as_echo "$ac_ct_LIPO" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 +printf "%s\n" "$ac_ct_LIPO" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_LIPO" = x; then @@ -7190,8 +7952,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac LIPO=$ac_ct_LIPO @@ -7203,11 +7965,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. set dummy ${ac_tool_prefix}otool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_OTOOL+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$OTOOL"; then ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test. else @@ -7215,11 +7978,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_OTOOL="${ac_tool_prefix}otool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -7230,11 +7997,11 @@ fi OTOOL=$ac_cv_prog_OTOOL if test -n "$OTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 -$as_echo "$OTOOL" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 +printf "%s\n" "$OTOOL" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -7243,11 +8010,12 @@ ac_ct_OTOOL=$OTOOL # Extract the first word of "otool", so it can be a program name with args. set dummy otool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_OTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_OTOOL+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_OTOOL"; then ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test. else @@ -7255,11 +8023,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OTOOL="otool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -7270,11 +8042,11 @@ fi ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL if test -n "$ac_ct_OTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 -$as_echo "$ac_ct_OTOOL" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 +printf "%s\n" "$ac_ct_OTOOL" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_OTOOL" = x; then @@ -7282,8 +8054,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL=$ac_ct_OTOOL @@ -7295,11 +8067,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. set dummy ${ac_tool_prefix}otool64; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OTOOL64+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_OTOOL64+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$OTOOL64"; then ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test. else @@ -7307,11 +8080,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -7322,11 +8099,11 @@ fi OTOOL64=$ac_cv_prog_OTOOL64 if test -n "$OTOOL64"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 -$as_echo "$OTOOL64" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 +printf "%s\n" "$OTOOL64" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -7335,11 +8112,12 @@ ac_ct_OTOOL64=$OTOOL64 # Extract the first word of "otool64", so it can be a program name with args. set dummy otool64; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_ac_ct_OTOOL64+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$ac_ct_OTOOL64"; then ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test. else @@ -7347,11 +8125,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OTOOL64="otool64" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -7362,11 +8144,11 @@ fi ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 if test -n "$ac_ct_OTOOL64"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 -$as_echo "$ac_ct_OTOOL64" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 +printf "%s\n" "$ac_ct_OTOOL64" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_ct_OTOOL64" = x; then @@ -7374,8 +8156,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL64=$ac_ct_OTOOL64 @@ -7410,11 +8192,12 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 -$as_echo_n "checking for -single_module linker flag... " >&6; } -if ${lt_cv_apple_cc_single_mod+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 +printf %s "checking for -single_module linker flag... " >&6; } +if test ${lt_cv_apple_cc_single_mod+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_apple_cc_single_mod=no if test -z "$LT_MULTI_MODULE"; then # By default we will add the -single_module flag. You can override @@ -7443,14 +8226,15 @@ rm -f conftest.* fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 -$as_echo "$lt_cv_apple_cc_single_mod" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 +printf "%s\n" "$lt_cv_apple_cc_single_mod" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 -$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } -if ${lt_cv_ld_exported_symbols_list+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 +printf %s "checking for -exported_symbols_list linker flag... " >&6; } +if test ${lt_cv_ld_exported_symbols_list+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym @@ -7459,31 +8243,33 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : lt_cv_ld_exported_symbols_list=yes -else +else $as_nop lt_cv_ld_exported_symbols_list=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 -$as_echo "$lt_cv_ld_exported_symbols_list" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 +printf "%s\n" "$lt_cv_ld_exported_symbols_list" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 -$as_echo_n "checking for -force_load linker flag... " >&6; } -if ${lt_cv_ld_force_load+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 +printf %s "checking for -force_load linker flag... " >&6; } +if test ${lt_cv_ld_force_load+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_ld_force_load=no cat > conftest.c << _LT_EOF int forced_loaded() { return 2;} @@ -7511,8 +8297,8 @@ rm -rf conftest.dSYM fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 -$as_echo "$lt_cv_ld_force_load" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 +printf "%s\n" "$lt_cv_ld_force_load" >&6; } case $host_os in rhapsody* | darwin1.[012]) _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; @@ -7583,286 +8369,43 @@ esac } -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 -$as_echo_n "checking how to run the C preprocessor... " >&6; } -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if ${ac_cv_prog_CPP+:} false; then : - $as_echo_n "(cached) " >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes +ac_header= ac_cache= +for ac_item in $ac_header_c_list do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - -else - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue -else - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 -$as_echo "$CPP" >&6; } -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - -else - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue -else - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - + if test $ac_cache; then + ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default" + if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then + printf "%s\n" "#define $ac_item 1" >> confdefs.h + fi + ac_header= ac_cache= + elif test $ac_header; then + ac_cache=$ac_item + else + ac_header=$ac_item + fi done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details" "$LINENO" 5; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 -$as_echo_n "checking for ANSI C header files... " >&6; } -if ${ac_cv_header_stdc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdc=yes -else - ac_cv_header_stdc=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : -else - ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 -$as_echo "$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then -$as_echo "#define STDC_HEADERS 1" >>confdefs.h -fi +if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes +then : -# On IRIX 5.3, sys/types and inttypes.h are conflicting. -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF +printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h fi - -done - - -for ac_header in dlfcn.h -do : - ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default +ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default " -if test "x$ac_cv_header_dlfcn_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_DLFCN_H 1 -_ACEOF +if test "x$ac_cv_header_dlfcn_h" = xyes +then : + printf "%s\n" "#define HAVE_DLFCN_H 1" >>confdefs.h fi -done - @@ -7878,7 +8421,8 @@ # Check whether --enable-shared was given. -if test "${enable_shared+set}" = set; then : +if test ${enable_shared+y} +then : enableval=$enable_shared; p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; @@ -7896,7 +8440,7 @@ IFS=$lt_save_ifs ;; esac -else +else $as_nop enable_shared=yes fi @@ -7909,7 +8453,8 @@ # Check whether --enable-static was given. -if test "${enable_static+set}" = set; then : +if test ${enable_static+y} +then : enableval=$enable_static; p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; @@ -7927,7 +8472,7 @@ IFS=$lt_save_ifs ;; esac -else +else $as_nop enable_static=yes fi @@ -7941,7 +8486,8 @@ # Check whether --with-pic was given. -if test "${with_pic+set}" = set; then : +if test ${with_pic+y} +then : withval=$with_pic; lt_p=${PACKAGE-default} case $withval in yes|no) pic_mode=$withval ;; @@ -7958,7 +8504,7 @@ IFS=$lt_save_ifs ;; esac -else +else $as_nop pic_mode=default fi @@ -7970,7 +8516,8 @@ # Check whether --enable-fast-install was given. -if test "${enable_fast_install+set}" = set; then : +if test ${enable_fast_install+y} +then : enableval=$enable_fast_install; p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; @@ -7988,7 +8535,7 @@ IFS=$lt_save_ifs ;; esac -else +else $as_nop enable_fast_install=yes fi @@ -8002,11 +8549,12 @@ shared_archive_member_spec= case $host,$enable_shared in power*-*-aix[5-9]*,yes) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 -$as_echo_n "checking which variant of shared library versioning to provide... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 +printf %s "checking which variant of shared library versioning to provide... " >&6; } # Check whether --with-aix-soname was given. -if test "${with_aix_soname+set}" = set; then : +if test ${with_aix_soname+y} +then : withval=$with_aix_soname; case $withval in aix|svr4|both) ;; @@ -8015,18 +8563,19 @@ ;; esac lt_cv_with_aix_soname=$with_aix_soname -else - if ${lt_cv_with_aix_soname+:} false; then : - $as_echo_n "(cached) " >&6 -else +else $as_nop + if test ${lt_cv_with_aix_soname+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_with_aix_soname=aix fi with_aix_soname=$lt_cv_with_aix_soname fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 -$as_echo "$with_aix_soname" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 +printf "%s\n" "$with_aix_soname" >&6; } if test aix != "$with_aix_soname"; then # For the AIX way of multilib, we name the shared archive member # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', @@ -8108,11 +8657,12 @@ setopt NO_GLOB_SUBST fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 -$as_echo_n "checking for objdir... " >&6; } -if ${lt_cv_objdir+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 +printf %s "checking for objdir... " >&6; } +if test ${lt_cv_objdir+y} +then : + printf %s "(cached) " >&6 +else $as_nop rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null if test -d .libs; then @@ -8123,17 +8673,15 @@ fi rmdir .libs 2>/dev/null fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 -$as_echo "$lt_cv_objdir" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 +printf "%s\n" "$lt_cv_objdir" >&6; } objdir=$lt_cv_objdir -cat >>confdefs.h <<_ACEOF -#define LT_OBJDIR "$lt_cv_objdir/" -_ACEOF +printf "%s\n" "#define LT_OBJDIR \"$lt_cv_objdir/\"" >>confdefs.h @@ -8179,11 +8727,12 @@ case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 -$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } -if ${lt_cv_path_MAGIC_CMD+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 +printf %s "checking for ${ac_tool_prefix}file... " >&6; } +if test ${lt_cv_path_MAGIC_CMD+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $MAGIC_CMD in [\\/*] | ?:[\\/]*) lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. @@ -8232,11 +8781,11 @@ MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 -$as_echo "$MAGIC_CMD" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +printf "%s\n" "$MAGIC_CMD" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -8245,11 +8794,12 @@ if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 -$as_echo_n "checking for file... " >&6; } -if ${lt_cv_path_MAGIC_CMD+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for file" >&5 +printf %s "checking for file... " >&6; } +if test ${lt_cv_path_MAGIC_CMD+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $MAGIC_CMD in [\\/*] | ?:[\\/]*) lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. @@ -8298,11 +8848,11 @@ MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 -$as_echo "$MAGIC_CMD" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +printf "%s\n" "$MAGIC_CMD" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -8387,11 +8937,12 @@ lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } -if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +printf %s "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } +if test ${lt_cv_prog_compiler_rtti_exceptions+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_prog_compiler_rtti_exceptions=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext @@ -8422,8 +8973,8 @@ $RM conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 -$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +printf "%s\n" "$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" @@ -8780,26 +9331,28 @@ ;; esac -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 -$as_echo_n "checking for $compiler option to produce PIC... " >&6; } -if ${lt_cv_prog_compiler_pic+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +printf %s "checking for $compiler option to produce PIC... " >&6; } +if test ${lt_cv_prog_compiler_pic+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_prog_compiler_pic=$lt_prog_compiler_pic fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 -$as_echo "$lt_cv_prog_compiler_pic" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 +printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; } lt_prog_compiler_pic=$lt_cv_prog_compiler_pic # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 -$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } -if ${lt_cv_prog_compiler_pic_works+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 +printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } +if test ${lt_cv_prog_compiler_pic_works+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_prog_compiler_pic_works=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext @@ -8830,8 +9383,8 @@ $RM conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 -$as_echo "$lt_cv_prog_compiler_pic_works" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 +printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; } if test yes = "$lt_cv_prog_compiler_pic_works"; then case $lt_prog_compiler_pic in @@ -8859,11 +9412,12 @@ # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 -$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } -if ${lt_cv_prog_compiler_static_works+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 +printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } +if test ${lt_cv_prog_compiler_static_works+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_prog_compiler_static_works=no save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS $lt_tmp_static_flag" @@ -8887,8 +9441,8 @@ LDFLAGS=$save_LDFLAGS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 -$as_echo "$lt_cv_prog_compiler_static_works" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 +printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; } if test yes = "$lt_cv_prog_compiler_static_works"; then : @@ -8902,11 +9456,12 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 -$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if ${lt_cv_prog_compiler_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if test ${lt_cv_prog_compiler_c_o+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_prog_compiler_c_o=no $RM -r conftest 2>/dev/null mkdir conftest @@ -8949,19 +9504,20 @@ $RM conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 -$as_echo "$lt_cv_prog_compiler_c_o" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 -$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if ${lt_cv_prog_compiler_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if test ${lt_cv_prog_compiler_c_o+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_prog_compiler_c_o=no $RM -r conftest 2>/dev/null mkdir conftest @@ -9004,8 +9560,8 @@ $RM conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 -$as_echo "$lt_cv_prog_compiler_c_o" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; } @@ -9013,19 +9569,19 @@ hard_links=nottested if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then # do not overwrite the value of need_locks provided by the user - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 -$as_echo_n "checking if we can lock with hard links... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +printf %s "checking if we can lock with hard links... " >&6; } hard_links=yes $RM conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 -$as_echo "$hard_links" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +printf "%s\n" "$hard_links" >&6; } if test no = "$hard_links"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 -$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 +printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} need_locks=warn fi else @@ -9037,8 +9593,8 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } runpath_var= allow_undefined_flag= @@ -9594,21 +10150,23 @@ if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else - if ${lt_cv_aix_libpath_+:} false; then : - $as_echo_n "(cached) " >&6 -else + if test ${lt_cv_aix_libpath_+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { @@ -9623,7 +10181,7 @@ lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=/usr/lib:/lib @@ -9647,21 +10205,23 @@ if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else - if ${lt_cv_aix_libpath_+:} false; then : - $as_echo_n "(cached) " >&6 -else + if test ${lt_cv_aix_libpath_+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { @@ -9676,7 +10236,7 @@ lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=/usr/lib:/lib @@ -9927,11 +10487,12 @@ # Older versions of the 11.00 compiler do not understand -b yet # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 -$as_echo_n "checking if $CC understands -b... " >&6; } -if ${lt_cv_prog_compiler__b+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 +printf %s "checking if $CC understands -b... " >&6; } +if test ${lt_cv_prog_compiler__b+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_prog_compiler__b=no save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -b" @@ -9955,8 +10516,8 @@ LDFLAGS=$save_LDFLAGS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 -$as_echo "$lt_cv_prog_compiler__b" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 +printf "%s\n" "$lt_cv_prog_compiler__b" >&6; } if test yes = "$lt_cv_prog_compiler__b"; then archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' @@ -9996,28 +10557,30 @@ # work, assume that -exports_file does not work either and # implicitly export all symbols. # This should be the same for all languages, so no per-tag cache variable. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 -$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; } -if ${lt_cv_irix_exported_symbol+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 +printf %s "checking whether the $host_os linker accepts -exported_symbol... " >&6; } +if test ${lt_cv_irix_exported_symbol+y} +then : + printf %s "(cached) " >&6 +else $as_nop save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int foo (void) { return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : lt_cv_irix_exported_symbol=yes -else +else $as_nop lt_cv_irix_exported_symbol=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 -$as_echo "$lt_cv_irix_exported_symbol" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 +printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; } if test yes = "$lt_cv_irix_exported_symbol"; then archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi @@ -10298,8 +10861,8 @@ fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 -$as_echo "$ld_shlibs" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 +printf "%s\n" "$ld_shlibs" >&6; } test no = "$ld_shlibs" && can_build_shared=no with_gnu_ld=$with_gnu_ld @@ -10335,18 +10898,19 @@ # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 -$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } -if ${lt_cv_archive_cmds_need_lc+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +printf %s "checking whether -lc should be explicitly linked in... " >&6; } +if test ${lt_cv_archive_cmds_need_lc+y} +then : + printf %s "(cached) " >&6 +else $as_nop $RM conftest* echo "$lt_simple_compile_test_code" > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } 2>conftest.err; then soname=conftest lib=conftest @@ -10364,7 +10928,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then lt_cv_archive_cmds_need_lc=no @@ -10378,8 +10942,8 @@ $RM conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 -$as_echo "$lt_cv_archive_cmds_need_lc" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 +printf "%s\n" "$lt_cv_archive_cmds_need_lc" >&6; } archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc ;; esac @@ -10538,8 +11102,8 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 -$as_echo_n "checking dynamic linker characteristics... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +printf %s "checking dynamic linker characteristics... " >&6; } if test yes = "$GCC"; then case $host_os in @@ -11100,9 +11664,10 @@ shlibpath_overrides_runpath=no # Some binutils ld are patched to set DT_RUNPATH - if ${lt_cv_shlibpath_overrides_runpath+:} false; then : - $as_echo_n "(cached) " >&6 -else + if test ${lt_cv_shlibpath_overrides_runpath+y} +then : + printf %s "(cached) " >&6 +else $as_nop lt_cv_shlibpath_overrides_runpath=no save_LDFLAGS=$LDFLAGS save_libdir=$libdir @@ -11112,19 +11677,21 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : +if ac_fn_c_try_link "$LINENO" +then : + if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null +then : lt_cv_shlibpath_overrides_runpath=yes fi fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS libdir=$save_libdir @@ -11356,8 +11923,8 @@ dynamic_linker=no ;; esac -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 -$as_echo "$dynamic_linker" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +printf "%s\n" "$dynamic_linker" >&6; } test no = "$dynamic_linker" && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" @@ -11478,8 +12045,8 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 -$as_echo_n "checking how to hardcode library paths into programs... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +printf %s "checking how to hardcode library paths into programs... " >&6; } hardcode_action= if test -n "$hardcode_libdir_flag_spec" || test -n "$runpath_var" || @@ -11503,8 +12070,8 @@ # directories. hardcode_action=unsupported fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 -$as_echo "$hardcode_action" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 +printf "%s\n" "$hardcode_action" >&6; } if test relink = "$hardcode_action" || test yes = "$inherit_rpath"; then @@ -11548,11 +12115,12 @@ darwin*) # if libdl is installed we need to link against it - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 -$as_echo_n "checking for dlopen in -ldl... " >&6; } -if ${ac_cv_lib_dl_dlopen+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +printf %s "checking for dlopen in -ldl... " >&6; } +if test ${ac_cv_lib_dl_dlopen+y} +then : + printf %s "(cached) " >&6 +else $as_nop ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -11561,32 +12129,31 @@ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif char dlopen (); int -main () +main (void) { return dlopen (); ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ac_cv_lib_dl_dlopen=yes -else +else $as_nop ac_cv_lib_dl_dlopen=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 -$as_echo "$ac_cv_lib_dl_dlopen" >&6; } -if test "x$ac_cv_lib_dl_dlopen" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes +then : lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl -else +else $as_nop lt_cv_dlopen=dyld lt_cv_dlopen_libs= @@ -11606,14 +12173,16 @@ *) ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" -if test "x$ac_cv_func_shl_load" = xyes; then : +if test "x$ac_cv_func_shl_load" = xyes +then : lt_cv_dlopen=shl_load -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 -$as_echo_n "checking for shl_load in -ldld... " >&6; } -if ${ac_cv_lib_dld_shl_load+:} false; then : - $as_echo_n "(cached) " >&6 -else +else $as_nop + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +printf %s "checking for shl_load in -ldld... " >&6; } +if test ${ac_cv_lib_dld_shl_load+y} +then : + printf %s "(cached) " >&6 +else $as_nop ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -11622,41 +12191,42 @@ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif char shl_load (); int -main () +main (void) { return shl_load (); ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ac_cv_lib_dld_shl_load=yes -else +else $as_nop ac_cv_lib_dld_shl_load=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 -$as_echo "$ac_cv_lib_dld_shl_load" >&6; } -if test "x$ac_cv_lib_dld_shl_load" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +printf "%s\n" "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes +then : lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld -else +else $as_nop ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" -if test "x$ac_cv_func_dlopen" = xyes; then : +if test "x$ac_cv_func_dlopen" = xyes +then : lt_cv_dlopen=dlopen -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 -$as_echo_n "checking for dlopen in -ldl... " >&6; } -if ${ac_cv_lib_dl_dlopen+:} false; then : - $as_echo_n "(cached) " >&6 -else +else $as_nop + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +printf %s "checking for dlopen in -ldl... " >&6; } +if test ${ac_cv_lib_dl_dlopen+y} +then : + printf %s "(cached) " >&6 +else $as_nop ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -11665,37 +12235,37 @@ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif char dlopen (); int -main () +main (void) { return dlopen (); ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ac_cv_lib_dl_dlopen=yes -else +else $as_nop ac_cv_lib_dl_dlopen=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 -$as_echo "$ac_cv_lib_dl_dlopen" >&6; } -if test "x$ac_cv_lib_dl_dlopen" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes +then : lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 -$as_echo_n "checking for dlopen in -lsvld... " >&6; } -if ${ac_cv_lib_svld_dlopen+:} false; then : - $as_echo_n "(cached) " >&6 -else +else $as_nop + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +printf %s "checking for dlopen in -lsvld... " >&6; } +if test ${ac_cv_lib_svld_dlopen+y} +then : + printf %s "(cached) " >&6 +else $as_nop ac_check_lib_save_LIBS=$LIBS LIBS="-lsvld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -11704,37 +12274,37 @@ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif char dlopen (); int -main () +main (void) { return dlopen (); ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ac_cv_lib_svld_dlopen=yes -else +else $as_nop ac_cv_lib_svld_dlopen=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 -$as_echo "$ac_cv_lib_svld_dlopen" >&6; } -if test "x$ac_cv_lib_svld_dlopen" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +printf "%s\n" "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes +then : lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 -$as_echo_n "checking for dld_link in -ldld... " >&6; } -if ${ac_cv_lib_dld_dld_link+:} false; then : - $as_echo_n "(cached) " >&6 -else +else $as_nop + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +printf %s "checking for dld_link in -ldld... " >&6; } +if test ${ac_cv_lib_dld_dld_link+y} +then : + printf %s "(cached) " >&6 +else $as_nop ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -11743,30 +12313,29 @@ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif char dld_link (); int -main () +main (void) { return dld_link (); ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ac_cv_lib_dld_dld_link=yes -else +else $as_nop ac_cv_lib_dld_dld_link=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 -$as_echo "$ac_cv_lib_dld_dld_link" >&6; } -if test "x$ac_cv_lib_dld_dld_link" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +printf "%s\n" "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes +then : lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld fi @@ -11805,11 +12374,12 @@ save_LIBS=$LIBS LIBS="$lt_cv_dlopen_libs $LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 -$as_echo_n "checking whether a program can dlopen itself... " >&6; } -if ${lt_cv_dlopen_self+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +printf %s "checking whether a program can dlopen itself... " >&6; } +if test ${lt_cv_dlopen_self+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test yes = "$cross_compiling"; then : lt_cv_dlopen_self=cross else @@ -11888,7 +12458,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? @@ -11906,16 +12476,17 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 -$as_echo "$lt_cv_dlopen_self" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +printf "%s\n" "$lt_cv_dlopen_self" >&6; } if test yes = "$lt_cv_dlopen_self"; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 -$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } -if ${lt_cv_dlopen_self_static+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +printf %s "checking whether a statically linked program can dlopen itself... " >&6; } +if test ${lt_cv_dlopen_self_static+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test yes = "$cross_compiling"; then : lt_cv_dlopen_self_static=cross else @@ -11994,7 +12565,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? @@ -12012,8 +12583,8 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 -$as_echo "$lt_cv_dlopen_self_static" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +printf "%s\n" "$lt_cv_dlopen_self_static" >&6; } fi CPPFLAGS=$save_CPPFLAGS @@ -12051,40 +12622,40 @@ striplib= old_striplib= -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 -$as_echo_n "checking whether stripping libraries is possible... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +printf %s "checking whether stripping libraries is possible... " >&6; } if test -z "$STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } else if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then old_striplib="$STRIP --strip-debug" striplib="$STRIP --strip-unneeded" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } else case $host_os in darwin*) # FIXME - insert some real tests, host_os isn't really good enough striplib="$STRIP -x" old_striplib="$STRIP -S" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } ;; freebsd*) if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then old_striplib="$STRIP --strip-debug" striplib="$STRIP --strip-unneeded" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi ;; *) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } ;; esac fi @@ -12102,13 +12673,13 @@ # Report what library types will actually be built - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 -$as_echo_n "checking if libtool supports shared libraries... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 -$as_echo "$can_build_shared" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 +printf %s "checking if libtool supports shared libraries... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 +printf "%s\n" "$can_build_shared" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 -$as_echo_n "checking whether to build shared libraries... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 +printf %s "checking whether to build shared libraries... " >&6; } test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and @@ -12132,15 +12703,15 @@ fi ;; esac - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 -$as_echo "$enable_shared" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 +printf "%s\n" "$enable_shared" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 -$as_echo_n "checking whether to build static libraries... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 +printf %s "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. test yes = "$enable_shared" || enable_static=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 -$as_echo "$enable_static" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 +printf "%s\n" "$enable_static" >&6; } @@ -12185,9 +12756,10 @@ # $is_release = (.git directory does not exist) - if test -d ${srcdir}/.git; then : + if test -d ${srcdir}/.git +then : ax_is_release=no -else +else $as_nop ax_is_release=yes fi @@ -12213,27 +12785,31 @@ ax_compiler_flags_is_release=$ax_is_release # Check whether --enable-compile-warnings was given. -if test "${enable_compile_warnings+set}" = set; then : +if test ${enable_compile_warnings+y} +then : enableval=$enable_compile_warnings; -else - if test "$ax_compiler_flags_is_release" = "yes"; then : +else $as_nop + if test "$ax_compiler_flags_is_release" = "yes" +then : enable_compile_warnings="yes" -else +else $as_nop enable_compile_warnings="error" fi fi # Check whether --enable-Werror was given. -if test "${enable_Werror+set}" = set; then : +if test ${enable_Werror+y} +then : enableval=$enable_Werror; -else +else $as_nop enable_Werror=maybe fi # Return the user's chosen warning level if test "$enable_Werror" = "no" -a \ - "$enable_compile_warnings" = "error"; then : + "$enable_compile_warnings" = "error" +then : enable_compile_warnings="yes" @@ -12267,30 +12843,32 @@ #error "no C++" #endif int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ax_compiler_cxx=yes; -else +else $as_nop ax_compiler_cxx=no; fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext # Always pass -Werror=unknown-warning-option to get Clang to fail on bad # flags, otherwise they are always appended to the warn_cflags variable, and # Clang warns on them for every compilation unit. # If this is passed to GCC, it will explode, so the flag must be enabled # conditionally. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Werror=unknown-warning-option" >&5 -$as_echo_n "checking whether C compiler accepts -Werror=unknown-warning-option... " >&6; } -if ${ax_cv_check_cflags___Werror_unknown_warning_option+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Werror=unknown-warning-option" >&5 +printf %s "checking whether C compiler accepts -Werror=unknown-warning-option... " >&6; } +if test ${ax_cv_check_cflags___Werror_unknown_warning_option+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS -Werror=unknown-warning-option" @@ -12298,28 +12876,30 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ax_cv_check_cflags___Werror_unknown_warning_option=yes -else +else $as_nop ax_cv_check_cflags___Werror_unknown_warning_option=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Werror_unknown_warning_option" >&5 -$as_echo "$ax_cv_check_cflags___Werror_unknown_warning_option" >&6; } -if test "x$ax_cv_check_cflags___Werror_unknown_warning_option" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Werror_unknown_warning_option" >&5 +printf "%s\n" "$ax_cv_check_cflags___Werror_unknown_warning_option" >&6; } +if test "x$ax_cv_check_cflags___Werror_unknown_warning_option" = xyes +then : ax_compiler_flags_test="-Werror=unknown-warning-option" -else +else $as_nop ax_compiler_flags_test="" @@ -12327,11 +12907,12 @@ # Check that -Wno-suggest-attribute=format is supported - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Wno-suggest-attribute=format" >&5 -$as_echo_n "checking whether C compiler accepts -Wno-suggest-attribute=format... " >&6; } -if ${ax_cv_check_cflags___Wno_suggest_attribute_format+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Wno-suggest-attribute=format" >&5 +printf %s "checking whether C compiler accepts -Wno-suggest-attribute=format... " >&6; } +if test ${ax_cv_check_cflags___Wno_suggest_attribute_format+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS -Wno-suggest-attribute=format" @@ -12339,28 +12920,30 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ax_cv_check_cflags___Wno_suggest_attribute_format=yes -else +else $as_nop ax_cv_check_cflags___Wno_suggest_attribute_format=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Wno_suggest_attribute_format" >&5 -$as_echo "$ax_cv_check_cflags___Wno_suggest_attribute_format" >&6; } -if test "x$ax_cv_check_cflags___Wno_suggest_attribute_format" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Wno_suggest_attribute_format" >&5 +printf "%s\n" "$ax_cv_check_cflags___Wno_suggest_attribute_format" >&6; } +if test "x$ax_cv_check_cflags___Wno_suggest_attribute_format" = xyes +then : ax_compiler_no_suggest_attribute_flags="-Wno-suggest-attribute=format" -else +else $as_nop ax_compiler_no_suggest_attribute_flags="" @@ -12373,12 +12956,13 @@ for flag in -fno-strict-aliasing ; do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -12386,65 +12970,69 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi done - if test "$ax_enable_compile_warnings" != "no"; then : + if test "$ax_enable_compile_warnings" != "no" +then : if test "$ax_compiler_cxx" = "no" ; then # C-only flags. Warn in C++ @@ -12453,12 +13041,13 @@ for flag in -Wnested-externs -Wmissing-prototypes -Wstrict-prototypes -Wdeclaration-after-statement -Wimplicit-function-declaration -Wold-style-definition -Wjump-misses-init ; do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -12466,58 +13055,61 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -12531,12 +13123,13 @@ for flag in -Wall -Wextra -Wundef -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wredundant-decls -Wno-unused-parameter -Wno-missing-field-initializers -Wformat=2 -Wcast-align -Wformat-nonliteral -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Winline -Wpacked -Wmissing-format-attribute -Wmissing-noreturn -Winit-self -Wredundant-decls -Wmissing-include-dirs -Wunused-but-set-variable -Warray-bounds -Wreturn-type -Wswitch-enum -Wswitch-default -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wrestrict -Wnull-dereference -Wdouble-promotion ; do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -12544,58 +13137,61 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -12603,7 +13199,8 @@ fi - if test "$ax_enable_compile_warnings" = "error"; then : + if test "$ax_enable_compile_warnings" = "error" +then : # "error" flags; -Werror has to be appended unconditionally because # it's not possible to test for @@ -12611,33 +13208,34 @@ # suggest-attribute=format is disabled because it gives too many false # positives -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" -Werror "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains -Werror"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains -Werror"; } >&5 (: WARN_CFLAGS already contains -Werror) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " -Werror" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=-Werror - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi @@ -12648,12 +13246,13 @@ for flag in $ax_compiler_no_suggest_attribute_flags ; do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -12661,58 +13260,61 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -12735,13 +13337,14 @@ -for flag in -Wno-error=$($as_echo $flag | $SED 's/^-Wno-//'); do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else +for flag in -Wno-error=$(printf "%s\n" $flag | $SED 's/^-Wno-//'); do + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -12749,58 +13352,61 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -12841,11 +13447,12 @@ # and Clang warns on them for every compilation unit. # If this is passed to GCC, it will explode, so the flag must be enabled # conditionally. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Werror=unknown-warning-option" >&5 -$as_echo_n "checking whether C compiler accepts -Werror=unknown-warning-option... " >&6; } -if ${ax_cv_check_cflags___Werror_unknown_warning_option+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Werror=unknown-warning-option" >&5 +printf %s "checking whether C compiler accepts -Werror=unknown-warning-option... " >&6; } +if test ${ax_cv_check_cflags___Werror_unknown_warning_option+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS -Werror=unknown-warning-option" @@ -12853,39 +13460,42 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ax_cv_check_cflags___Werror_unknown_warning_option=yes -else +else $as_nop ax_cv_check_cflags___Werror_unknown_warning_option=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Werror_unknown_warning_option" >&5 -$as_echo "$ax_cv_check_cflags___Werror_unknown_warning_option" >&6; } -if test "x$ax_cv_check_cflags___Werror_unknown_warning_option" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Werror_unknown_warning_option" >&5 +printf "%s\n" "$ax_cv_check_cflags___Werror_unknown_warning_option" >&6; } +if test "x$ax_cv_check_cflags___Werror_unknown_warning_option" = xyes +then : ax_compiler_flags_test="-Werror=unknown-warning-option" -else +else $as_nop ax_compiler_flags_test="" fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--as-needed" >&5 -$as_echo_n "checking whether the linker accepts -Wl,--as-needed... " >&6; } -if ${ax_cv_check_ldflags___Wl___as_needed+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--as-needed" >&5 +printf %s "checking whether the linker accepts -Wl,--as-needed... " >&6; } +if test ${ax_cv_check_ldflags___Wl___as_needed+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,--as-needed" @@ -12893,37 +13503,40 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ax_cv_check_ldflags___Wl___as_needed=yes -else +else $as_nop ax_cv_check_ldflags___Wl___as_needed=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___as_needed" >&5 -$as_echo "$ax_cv_check_ldflags___Wl___as_needed" >&6; } -if test "x$ax_cv_check_ldflags___Wl___as_needed" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___as_needed" >&5 +printf "%s\n" "$ax_cv_check_ldflags___Wl___as_needed" >&6; } +if test "x$ax_cv_check_ldflags___Wl___as_needed" = xyes +then : for flag in -Wl,--as-needed; do - as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 -$as_echo_n "checking whether the linker accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +printf %s "checking whether the linker accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" @@ -12931,74 +13544,78 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${AM_LDFLAGS+:} false; then : +if test ${AM_LDFLAGS+y} +then : case " $AM_LDFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 (: AM_LDFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append AM_LDFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop AM_LDFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi done -else +else $as_nop : fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-z,relro" >&5 -$as_echo_n "checking whether the linker accepts -Wl,-z,relro... " >&6; } -if ${ax_cv_check_ldflags___Wl__z_relro+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-z,relro" >&5 +printf %s "checking whether the linker accepts -Wl,-z,relro... " >&6; } +if test ${ax_cv_check_ldflags___Wl__z_relro+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,-z,relro" @@ -13006,37 +13623,40 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ax_cv_check_ldflags___Wl__z_relro=yes -else +else $as_nop ax_cv_check_ldflags___Wl__z_relro=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__z_relro" >&5 -$as_echo "$ax_cv_check_ldflags___Wl__z_relro" >&6; } -if test "x$ax_cv_check_ldflags___Wl__z_relro" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__z_relro" >&5 +printf "%s\n" "$ax_cv_check_ldflags___Wl__z_relro" >&6; } +if test "x$ax_cv_check_ldflags___Wl__z_relro" = xyes +then : for flag in -Wl,-z,relro; do - as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 -$as_echo_n "checking whether the linker accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +printf %s "checking whether the linker accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" @@ -13044,74 +13664,78 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${AM_LDFLAGS+:} false; then : +if test ${AM_LDFLAGS+y} +then : case " $AM_LDFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 (: AM_LDFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append AM_LDFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop AM_LDFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi done -else +else $as_nop : fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-z,now" >&5 -$as_echo_n "checking whether the linker accepts -Wl,-z,now... " >&6; } -if ${ax_cv_check_ldflags___Wl__z_now+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-z,now" >&5 +printf %s "checking whether the linker accepts -Wl,-z,now... " >&6; } +if test ${ax_cv_check_ldflags___Wl__z_now+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,-z,now" @@ -13119,37 +13743,40 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ax_cv_check_ldflags___Wl__z_now=yes -else +else $as_nop ax_cv_check_ldflags___Wl__z_now=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__z_now" >&5 -$as_echo "$ax_cv_check_ldflags___Wl__z_now" >&6; } -if test "x$ax_cv_check_ldflags___Wl__z_now" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__z_now" >&5 +printf "%s\n" "$ax_cv_check_ldflags___Wl__z_now" >&6; } +if test "x$ax_cv_check_ldflags___Wl__z_now" = xyes +then : for flag in -Wl,-z,now; do - as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 -$as_echo_n "checking whether the linker accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +printf %s "checking whether the linker accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" @@ -13157,74 +13784,78 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${AM_LDFLAGS+:} false; then : +if test ${AM_LDFLAGS+y} +then : case " $AM_LDFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 (: AM_LDFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append AM_LDFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop AM_LDFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi done -else +else $as_nop : fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-z,noexecstack" >&5 -$as_echo_n "checking whether the linker accepts -Wl,-z,noexecstack... " >&6; } -if ${ax_cv_check_ldflags___Wl__z_noexecstack+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-z,noexecstack" >&5 +printf %s "checking whether the linker accepts -Wl,-z,noexecstack... " >&6; } +if test ${ax_cv_check_ldflags___Wl__z_noexecstack+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,-z,noexecstack" @@ -13232,37 +13863,40 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ax_cv_check_ldflags___Wl__z_noexecstack=yes -else +else $as_nop ax_cv_check_ldflags___Wl__z_noexecstack=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__z_noexecstack" >&5 -$as_echo "$ax_cv_check_ldflags___Wl__z_noexecstack" >&6; } -if test "x$ax_cv_check_ldflags___Wl__z_noexecstack" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__z_noexecstack" >&5 +printf "%s\n" "$ax_cv_check_ldflags___Wl__z_noexecstack" >&6; } +if test "x$ax_cv_check_ldflags___Wl__z_noexecstack" = xyes +then : for flag in -Wl,-z,noexecstack; do - as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 -$as_echo_n "checking whether the linker accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +printf %s "checking whether the linker accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" @@ -13270,77 +13904,81 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${AM_LDFLAGS+:} false; then : +if test ${AM_LDFLAGS+y} +then : case " $AM_LDFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 (: AM_LDFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append AM_LDFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop AM_LDFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi done -else +else $as_nop : fi # textonly, retpolineplt not yet # macOS and cygwin linker do not have --as-needed - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--no-as-needed" >&5 -$as_echo_n "checking whether the linker accepts -Wl,--no-as-needed... " >&6; } -if ${ax_cv_check_ldflags___Wl___no_as_needed+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--no-as-needed" >&5 +printf %s "checking whether the linker accepts -Wl,--no-as-needed... " >&6; } +if test ${ax_cv_check_ldflags___Wl___no_as_needed+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,--no-as-needed" @@ -13348,29 +13986,31 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ax_cv_check_ldflags___Wl___no_as_needed=yes -else +else $as_nop ax_cv_check_ldflags___Wl___no_as_needed=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___no_as_needed" >&5 -$as_echo "$ax_cv_check_ldflags___Wl___no_as_needed" >&6; } -if test "x$ax_cv_check_ldflags___Wl___no_as_needed" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___no_as_needed" >&5 +printf "%s\n" "$ax_cv_check_ldflags___Wl___no_as_needed" >&6; } +if test "x$ax_cv_check_ldflags___Wl___no_as_needed" = xyes +then : ax_compiler_flags_as_needed_option="-Wl,--no-as-needed" -else +else $as_nop ax_compiler_flags_as_needed_option="" @@ -13379,11 +14019,12 @@ # macOS linker speaks with a different accent ax_compiler_flags_fatal_warnings_option="" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--fatal-warnings" >&5 -$as_echo_n "checking whether the linker accepts -Wl,--fatal-warnings... " >&6; } -if ${ax_cv_check_ldflags___Wl___fatal_warnings+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--fatal-warnings" >&5 +printf %s "checking whether the linker accepts -Wl,--fatal-warnings... " >&6; } +if test ${ax_cv_check_ldflags___Wl___fatal_warnings+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,--fatal-warnings" @@ -13391,37 +14032,40 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ax_cv_check_ldflags___Wl___fatal_warnings=yes -else +else $as_nop ax_cv_check_ldflags___Wl___fatal_warnings=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___fatal_warnings" >&5 -$as_echo "$ax_cv_check_ldflags___Wl___fatal_warnings" >&6; } -if test "x$ax_cv_check_ldflags___Wl___fatal_warnings" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___fatal_warnings" >&5 +printf "%s\n" "$ax_cv_check_ldflags___Wl___fatal_warnings" >&6; } +if test "x$ax_cv_check_ldflags___Wl___fatal_warnings" = xyes +then : ax_compiler_flags_fatal_warnings_option="-Wl,--fatal-warnings" -else +else $as_nop : fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-fatal_warnings" >&5 -$as_echo_n "checking whether the linker accepts -Wl,-fatal_warnings... " >&6; } -if ${ax_cv_check_ldflags___Wl__fatal_warnings+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-fatal_warnings" >&5 +printf %s "checking whether the linker accepts -Wl,-fatal_warnings... " >&6; } +if test ${ax_cv_check_ldflags___Wl__fatal_warnings+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,-fatal_warnings" @@ -13429,29 +14073,31 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : ax_cv_check_ldflags___Wl__fatal_warnings=yes -else +else $as_nop ax_cv_check_ldflags___Wl__fatal_warnings=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__fatal_warnings" >&5 -$as_echo "$ax_cv_check_ldflags___Wl__fatal_warnings" >&6; } -if test "x$ax_cv_check_ldflags___Wl__fatal_warnings" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__fatal_warnings" >&5 +printf "%s\n" "$ax_cv_check_ldflags___Wl__fatal_warnings" >&6; } +if test "x$ax_cv_check_ldflags___Wl__fatal_warnings" = xyes +then : ax_compiler_flags_fatal_warnings_option="-Wl,-fatal_warnings" -else +else $as_nop : fi @@ -13462,12 +14108,13 @@ for flag in $ax_compiler_flags_as_needed_option ; do - as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 -$as_echo_n "checking whether the linker accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +printf %s "checking whether the linker accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" @@ -13475,66 +14122,70 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_LDFLAGS+:} false; then : +if test ${WARN_LDFLAGS+y} +then : case " $WARN_LDFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS already contains \$flag"; } >&5 (: WARN_LDFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_LDFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_LDFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi done - if test "$ax_enable_compile_warnings" != "no"; then : + if test "$ax_enable_compile_warnings" != "no" +then : # "yes" flags @@ -13542,12 +14193,13 @@ for flag in ; do - as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 -$as_echo_n "checking whether the linker accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +printf %s "checking whether the linker accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" @@ -13555,59 +14207,62 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_LDFLAGS+:} false; then : +if test ${WARN_LDFLAGS+y} +then : case " $WARN_LDFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS already contains \$flag"; } >&5 (: WARN_LDFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_LDFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_LDFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -13615,7 +14270,8 @@ fi - if test "$ax_enable_compile_warnings" = "error"; then : + if test "$ax_enable_compile_warnings" = "error" +then : # "error" flags; -Werror has to be appended unconditionally because # it's not possible to test for @@ -13627,12 +14283,13 @@ for flag in $ax_compiler_flags_fatal_warnings_option ; do - as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 -$as_echo_n "checking whether the linker accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +printf %s "checking whether the linker accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$LDFLAGS LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" @@ -13640,59 +14297,62 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_link "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_LDFLAGS+:} false; then : +if test ${WARN_LDFLAGS+y} +then : case " $WARN_LDFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS already contains \$flag"; } >&5 (: WARN_LDFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_LDFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_LDFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -13713,106 +14373,111 @@ # Base flags -if ${WARN_SCANNERFLAGS+:} false; then : +if test ${WARN_SCANNERFLAGS+y} +then : case " $WARN_SCANNERFLAGS " in #( *" "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS already contains "; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS already contains "; } >&5 (: WARN_SCANNERFLAGS already contains ) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_SCANNERFLAGS " " - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_SCANNERFLAGS= - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi - if test "$ax_enable_compile_warnings" != "no"; then : + if test "$ax_enable_compile_warnings" != "no" +then : # "yes" flags -if ${WARN_SCANNERFLAGS+:} false; then : +if test ${WARN_SCANNERFLAGS+y} +then : case " $WARN_SCANNERFLAGS " in #( *" --warn-all "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS already contains --warn-all "; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS already contains --warn-all "; } >&5 (: WARN_SCANNERFLAGS already contains --warn-all ) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_SCANNERFLAGS " --warn-all " - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_SCANNERFLAGS= --warn-all - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi fi - if test "$ax_enable_compile_warnings" = "error"; then : + if test "$ax_enable_compile_warnings" = "error" +then : # "error" flags -if ${WARN_SCANNERFLAGS+:} false; then : +if test ${WARN_SCANNERFLAGS+y} +then : case " $WARN_SCANNERFLAGS " in #( *" --warn-error "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS already contains --warn-error "; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS already contains --warn-error "; } >&5 (: WARN_SCANNERFLAGS already contains --warn-error ) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_SCANNERFLAGS " --warn-error " - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_SCANNERFLAGS= --warn-error - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi @@ -13850,30 +14515,32 @@ #error "no C++" #endif int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ax_compiler_cxx=yes; -else +else $as_nop ax_compiler_cxx=no; fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext # Always pass -Werror=unknown-warning-option to get Clang to fail on bad # flags, otherwise they are always appended to the warn_cflags variable, and # Clang warns on them for every compilation unit. # If this is passed to GCC, it will explode, so the flag must be enabled # conditionally. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Werror=unknown-warning-option" >&5 -$as_echo_n "checking whether C compiler accepts -Werror=unknown-warning-option... " >&6; } -if ${ax_cv_check_cflags___Werror_unknown_warning_option+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Werror=unknown-warning-option" >&5 +printf %s "checking whether C compiler accepts -Werror=unknown-warning-option... " >&6; } +if test ${ax_cv_check_cflags___Werror_unknown_warning_option+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS -Werror=unknown-warning-option" @@ -13881,28 +14548,30 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ax_cv_check_cflags___Werror_unknown_warning_option=yes -else +else $as_nop ax_cv_check_cflags___Werror_unknown_warning_option=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Werror_unknown_warning_option" >&5 -$as_echo "$ax_cv_check_cflags___Werror_unknown_warning_option" >&6; } -if test "x$ax_cv_check_cflags___Werror_unknown_warning_option" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Werror_unknown_warning_option" >&5 +printf "%s\n" "$ax_cv_check_cflags___Werror_unknown_warning_option" >&6; } +if test "x$ax_cv_check_cflags___Werror_unknown_warning_option" = xyes +then : ax_compiler_flags_test="-Werror=unknown-warning-option" -else +else $as_nop ax_compiler_flags_test="" @@ -13910,11 +14579,12 @@ # Check that -Wno-suggest-attribute=format is supported - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Wno-suggest-attribute=format" >&5 -$as_echo_n "checking whether C compiler accepts -Wno-suggest-attribute=format... " >&6; } -if ${ax_cv_check_cflags___Wno_suggest_attribute_format+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Wno-suggest-attribute=format" >&5 +printf %s "checking whether C compiler accepts -Wno-suggest-attribute=format... " >&6; } +if test ${ax_cv_check_cflags___Wno_suggest_attribute_format+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS -Wno-suggest-attribute=format" @@ -13922,28 +14592,30 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : ax_cv_check_cflags___Wno_suggest_attribute_format=yes -else +else $as_nop ax_cv_check_cflags___Wno_suggest_attribute_format=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Wno_suggest_attribute_format" >&5 -$as_echo "$ax_cv_check_cflags___Wno_suggest_attribute_format" >&6; } -if test "x$ax_cv_check_cflags___Wno_suggest_attribute_format" = xyes; then : +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Wno_suggest_attribute_format" >&5 +printf "%s\n" "$ax_cv_check_cflags___Wno_suggest_attribute_format" >&6; } +if test "x$ax_cv_check_cflags___Wno_suggest_attribute_format" = xyes +then : ax_compiler_no_suggest_attribute_flags="-Wno-suggest-attribute=format" -else +else $as_nop ax_compiler_no_suggest_attribute_flags="" @@ -13956,12 +14628,13 @@ for flag in -fno-strict-aliasing ; do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -13969,65 +14642,69 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi done - if test "$ax_enable_compile_warnings" != "no"; then : + if test "$ax_enable_compile_warnings" != "no" +then : if test "$ax_compiler_cxx" = "no" ; then # C-only flags. Warn in C++ @@ -14036,12 +14713,13 @@ for flag in -Wnested-externs -Wmissing-prototypes -Wstrict-prototypes -Wdeclaration-after-statement -Wimplicit-function-declaration -Wold-style-definition -Wjump-misses-init ; do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -14049,58 +14727,61 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -14114,12 +14795,13 @@ for flag in -Wall -Wextra -Wundef -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wredundant-decls -Wno-unused-parameter -Wno-missing-field-initializers -Wformat=2 -Wcast-align -Wformat-nonliteral -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Winline -Wpacked -Wmissing-format-attribute -Wmissing-noreturn -Winit-self -Wredundant-decls -Wmissing-include-dirs -Wunused-but-set-variable -Warray-bounds -Wreturn-type -Wswitch-enum -Wswitch-default -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wrestrict -Wnull-dereference -Wdouble-promotion ${DISABLED_WARNINGS} ; do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -14127,58 +14809,61 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -14186,7 +14871,8 @@ fi - if test "$ax_enable_compile_warnings" = "error"; then : + if test "$ax_enable_compile_warnings" = "error" +then : # "error" flags; -Werror has to be appended unconditionally because # it's not possible to test for @@ -14194,33 +14880,34 @@ # suggest-attribute=format is disabled because it gives too many false # positives -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" -Werror "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains -Werror"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains -Werror"; } >&5 (: WARN_CFLAGS already contains -Werror) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " -Werror" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=-Werror - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi @@ -14231,12 +14918,13 @@ for flag in $ax_compiler_no_suggest_attribute_flags ; do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -14244,58 +14932,61 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -14318,13 +15009,14 @@ -for flag in -Wno-error=$($as_echo $flag | $SED 's/^-Wno-//'); do - as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 -$as_echo_n "checking whether C compiler accepts $flag... " >&6; } -if eval \${$as_CACHEVAR+:} false; then : - $as_echo_n "(cached) " >&6 -else +for flag in -Wno-error=$(printf "%s\n" $flag | $SED 's/^-Wno-//'); do + as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +printf %s "checking whether C compiler accepts $flag... " >&6; } +if eval test \${$as_CACHEVAR+y} +then : + printf %s "(cached) " >&6 +else $as_nop ax_check_save_flags=$CFLAGS CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" @@ -14332,58 +15024,61 @@ /* end confdefs.h. */ int -main () +main (void) { ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO" +then : eval "$as_CACHEVAR=yes" -else +else $as_nop eval "$as_CACHEVAR=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS=$ax_check_save_flags fi eval ac_res=\$$as_CACHEVAR - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes" +then : -if ${WARN_CFLAGS+:} false; then : +if test ${WARN_CFLAGS+y} +then : case " $WARN_CFLAGS " in #( *" $flag "*) : - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 (: WARN_CFLAGS already contains $flag) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; #( *) : as_fn_append WARN_CFLAGS " $flag" - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } ;; esac -else +else $as_nop WARN_CFLAGS=$flag - { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } fi -else +else $as_nop : fi @@ -14411,24 +15106,24 @@ fi MBIM_MAJOR_VERSION=1 -MBIM_MINOR_VERSION=22 -MBIM_MICRO_VERSION=0 -MBIM_VERSION=1.22.0 +MBIM_MINOR_VERSION=24 +MBIM_MICRO_VERSION=8 +MBIM_VERSION=1.24.8 -MBIM_GLIB_LT_CURRENT=8 -MBIM_GLIB_LT_REVISION=2 -MBIM_GLIB_LT_AGE=4 +MBIM_GLIB_LT_CURRENT=9 +MBIM_GLIB_LT_REVISION=0 +MBIM_GLIB_LT_AGE=5 -GLIB_MIN_VERSION=2.36 +GLIB_MIN_VERSION=2.48 -GLIB_BUILD_SYMBOLS="-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_36 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_36 -DGLIB_DISABLE_DEPRECATION_WARNINGS" +GLIB_BUILD_SYMBOLS="-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_48 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_48 -DGLIB_DISABLE_DEPRECATION_WARNINGS" @@ -14441,11 +15136,12 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_PKG_CONFIG+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_path_PKG_CONFIG+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. @@ -14455,11 +15151,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -14471,11 +15171,11 @@ fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 -$as_echo "$PKG_CONFIG" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 +printf "%s\n" "$PKG_CONFIG" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -14484,11 +15184,12 @@ ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_path_ac_pt_PKG_CONFIG+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. @@ -14498,11 +15199,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -14514,11 +15219,11 @@ fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 -$as_echo "$ac_pt_PKG_CONFIG" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 +printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then @@ -14526,8 +15231,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG @@ -14539,30 +15244,30 @@ fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 -$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 +printf %s "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } PKG_CONFIG="" fi fi pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MBIM_COMMON" >&5 -$as_echo_n "checking for MBIM_COMMON... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for MBIM_COMMON" >&5 +printf %s "checking for MBIM_COMMON... " >&6; } if test -n "$MBIM_COMMON_CFLAGS"; then pkg_cv_MBIM_COMMON_CFLAGS="$MBIM_COMMON_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_MIN_VERSION") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_MBIM_COMMON_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_MIN_VERSION" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes @@ -14576,10 +15281,10 @@ pkg_cv_MBIM_COMMON_LIBS="$MBIM_COMMON_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_MIN_VERSION") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_MBIM_COMMON_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_MIN_VERSION" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes @@ -14593,8 +15298,8 @@ if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -14620,10 +15325,10 @@ and MBIM_COMMON_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. @@ -14637,8 +15342,8 @@ else MBIM_COMMON_CFLAGS=$pkg_cv_MBIM_COMMON_CFLAGS MBIM_COMMON_LIBS=$pkg_cv_MBIM_COMMON_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } fi MBIM_COMMON_CFLAGS="$MBIM_COMMON_CFLAGS $GLIB_BUILD_SYMBOLS" @@ -14647,14 +15352,14 @@ pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBMBIM_GLIB" >&5 -$as_echo_n "checking for LIBMBIM_GLIB... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for LIBMBIM_GLIB" >&5 +printf %s "checking for LIBMBIM_GLIB... " >&6; } if test -n "$LIBMBIM_GLIB_CFLAGS"; then pkg_cv_LIBMBIM_GLIB_CFLAGS="$LIBMBIM_GLIB_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION gobject-2.0 gio-2.0 gio-unix-2.0\""; } >&5 @@ -14663,7 +15368,7 @@ gio-2.0 gio-unix-2.0") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LIBMBIM_GLIB_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 @@ -14680,7 +15385,7 @@ pkg_cv_LIBMBIM_GLIB_LIBS="$LIBMBIM_GLIB_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION gobject-2.0 gio-2.0 gio-unix-2.0\""; } >&5 @@ -14689,7 +15394,7 @@ gio-2.0 gio-unix-2.0") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LIBMBIM_GLIB_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 @@ -14706,8 +15411,8 @@ if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -14742,10 +15447,10 @@ and LIBMBIM_GLIB_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. @@ -14759,8 +15464,8 @@ else LIBMBIM_GLIB_CFLAGS=$pkg_cv_LIBMBIM_GLIB_CFLAGS LIBMBIM_GLIB_LIBS=$pkg_cv_LIBMBIM_GLIB_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } fi LIBMBIM_GLIB_CFLAGS="$LIBMBIM_GLIB_CFLAGS $GLIB_BUILD_SYMBOLS" @@ -14769,21 +15474,21 @@ pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MBIMCLI" >&5 -$as_echo_n "checking for MBIMCLI... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for MBIMCLI" >&5 +printf %s "checking for MBIMCLI... " >&6; } if test -n "$MBIMCLI_CFLAGS"; then pkg_cv_MBIMCLI_CFLAGS="$MBIMCLI_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION gobject-2.0 gio-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 gio-2.0") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_MBIMCLI_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 @@ -14799,14 +15504,14 @@ pkg_cv_MBIMCLI_LIBS="$MBIMCLI_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION gobject-2.0 gio-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 gio-2.0") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_MBIMCLI_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 @@ -14822,8 +15527,8 @@ if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -14855,10 +15560,10 @@ and MBIMCLI_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. @@ -14872,8 +15577,8 @@ else MBIMCLI_CFLAGS=$pkg_cv_MBIMCLI_CFLAGS MBIMCLI_LIBS=$pkg_cv_MBIMCLI_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } fi MBIMCLI_CFLAGS="$MBIMCLI_CFLAGS $GLIB_BUILD_SYMBOLS" @@ -14882,21 +15587,21 @@ pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MBIMPROXY" >&5 -$as_echo_n "checking for MBIMPROXY... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for MBIMPROXY" >&5 +printf %s "checking for MBIMPROXY... " >&6; } if test -n "$MBIMPROXY_CFLAGS"; then pkg_cv_MBIMPROXY_CFLAGS="$MBIMPROXY_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION gobject-2.0 gio-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 gio-2.0") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_MBIMPROXY_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 @@ -14912,14 +15617,14 @@ pkg_cv_MBIMPROXY_LIBS="$MBIMPROXY_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_MIN_VERSION gobject-2.0 gio-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 gio-2.0") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_MBIMPROXY_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_MIN_VERSION gobject-2.0 @@ -14935,8 +15640,8 @@ if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -14968,10 +15673,10 @@ and MBIMPROXY_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. @@ -14985,8 +15690,8 @@ else MBIMPROXY_CFLAGS=$pkg_cv_MBIMPROXY_CFLAGS MBIMPROXY_LIBS=$pkg_cv_MBIMPROXY_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } fi MBIMPROXY_CFLAGS="$MBIMPROXY_CFLAGS $GLIB_BUILD_SYMBOLS" @@ -15005,11 +15710,12 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_PYTHON+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_path_PYTHON+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $PYTHON in [\\/]* | ?:[\\/]*) ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path. @@ -15019,11 +15725,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_path_PYTHON="$as_dir$ac_word$ac_exec_ext" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -15035,11 +15745,11 @@ fi PYTHON=$ac_cv_path_PYTHON if test -n "$PYTHON"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5 -$as_echo "$PYTHON" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5 +printf "%s\n" "$PYTHON" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -15056,15 +15766,16 @@ else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5 -$as_echo_n "checking for $am_display_PYTHON version... " >&6; } -if ${am_cv_python_version+:} false; then : - $as_echo_n "(cached) " >&6 -else - am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"` + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5 +printf %s "checking for $am_display_PYTHON version... " >&6; } +if test ${am_cv_python_version+y} +then : + printf %s "(cached) " >&6 +else $as_nop + am_cv_python_version=`$PYTHON -c "import sys; print('%u.%u' % sys.version_info[:2])"` fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5 -$as_echo "$am_cv_python_version" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5 +printf "%s\n" "$am_cv_python_version" >&6; } PYTHON_VERSION=$am_cv_python_version @@ -15075,15 +15786,16 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5 -$as_echo_n "checking for $am_display_PYTHON platform... " >&6; } -if ${am_cv_python_platform+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5 +printf %s "checking for $am_display_PYTHON platform... " >&6; } +if test ${am_cv_python_platform+y} +then : + printf %s "(cached) " >&6 +else $as_nop am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"` fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5 -$as_echo "$am_cv_python_platform" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5 +printf "%s\n" "$am_cv_python_platform" >&6; } PYTHON_PLATFORM=$am_cv_python_platform @@ -15108,11 +15820,12 @@ pass" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5 -$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; } -if ${am_cv_python_pythondir+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5 +printf %s "checking for $am_display_PYTHON script directory... " >&6; } +if test ${am_cv_python_pythondir+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test "x$prefix" = xNONE then am_py_prefix=$ac_default_prefix @@ -15143,8 +15856,8 @@ esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5 -$as_echo "$am_cv_python_pythondir" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5 +printf "%s\n" "$am_cv_python_pythondir" >&6; } pythondir=$am_cv_python_pythondir @@ -15152,11 +15865,12 @@ pkgpythondir=\${pythondir}/$PACKAGE - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5 -$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; } -if ${am_cv_python_pyexecdir+:} false; then : - $as_echo_n "(cached) " >&6 -else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5 +printf %s "checking for $am_display_PYTHON extension module directory... " >&6; } +if test ${am_cv_python_pyexecdir+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test "x$exec_prefix" = xNONE then am_py_exec_prefix=$am_py_prefix @@ -15187,8 +15901,8 @@ esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5 -$as_echo "$am_cv_python_pyexecdir" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5 +printf "%s\n" "$am_cv_python_pyexecdir" >&6; } pyexecdir=$am_cv_python_pyexecdir @@ -15201,44 +15915,42 @@ -GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0` - - gtk_doc_requires="gtk-doc >= 1.0" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gtk-doc" >&5 -$as_echo_n "checking for gtk-doc... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gtk-doc" >&5 +printf %s "checking for gtk-doc... " >&6; } if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$gtk_doc_requires\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$gtk_doc_requires\""; } >&5 ($PKG_CONFIG --exists --print-errors "$gtk_doc_requires") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then have_gtk_doc=yes else have_gtk_doc=no fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_gtk_doc" >&5 -$as_echo "$have_gtk_doc" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_gtk_doc" >&5 +printf "%s\n" "$have_gtk_doc" >&6; } if test "$have_gtk_doc" = "no"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: You will not be able to create source packages with 'make dist' because $gtk_doc_requires is not found." >&5 -$as_echo "$as_me: WARNING: +printf "%s\n" "$as_me: WARNING: You will not be able to create source packages with 'make dist' because $gtk_doc_requires is not found." >&2;} fi # Extract the first word of "gtkdoc-check", so it can be a program name with args. set dummy gtkdoc-check; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_GTKDOC_CHECK+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_prog_GTKDOC_CHECK+y} +then : + printf %s "(cached) " >&6 +else $as_nop if test -n "$GTKDOC_CHECK"; then ac_cv_prog_GTKDOC_CHECK="$GTKDOC_CHECK" # Let the user override the test. else @@ -15246,11 +15958,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_GTKDOC_CHECK="gtkdoc-check.test" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -15261,21 +15977,22 @@ fi GTKDOC_CHECK=$ac_cv_prog_GTKDOC_CHECK if test -n "$GTKDOC_CHECK"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK" >&5 -$as_echo "$GTKDOC_CHECK" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK" >&5 +printf "%s\n" "$GTKDOC_CHECK" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi # Extract the first word of "gtkdoc-check", so it can be a program name with args. set dummy gtkdoc-check; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_GTKDOC_CHECK_PATH+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_path_GTKDOC_CHECK_PATH+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $GTKDOC_CHECK_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_CHECK_PATH="$GTKDOC_CHECK_PATH" # Let the user override the test with a path. @@ -15285,11 +16002,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_GTKDOC_CHECK_PATH="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_path_GTKDOC_CHECK_PATH="$as_dir$ac_word$ac_exec_ext" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -15301,11 +16022,11 @@ fi GTKDOC_CHECK_PATH=$ac_cv_path_GTKDOC_CHECK_PATH if test -n "$GTKDOC_CHECK_PATH"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK_PATH" >&5 -$as_echo "$GTKDOC_CHECK_PATH" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK_PATH" >&5 +printf "%s\n" "$GTKDOC_CHECK_PATH" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -15313,11 +16034,12 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_GTKDOC_REBASE+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_path_GTKDOC_REBASE+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $GTKDOC_REBASE in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_REBASE="$GTKDOC_REBASE" # Let the user override the test with a path. @@ -15327,11 +16049,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_GTKDOC_REBASE="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_path_GTKDOC_REBASE="$as_dir$ac_word$ac_exec_ext" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -15343,11 +16069,11 @@ fi GTKDOC_REBASE=$ac_cv_path_GTKDOC_REBASE if test -n "$GTKDOC_REBASE"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_REBASE" >&5 -$as_echo "$GTKDOC_REBASE" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_REBASE" >&5 +printf "%s\n" "$GTKDOC_REBASE" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -15357,11 +16083,12 @@ # Extract the first word of "gtkdoc-mkpdf", so it can be a program name with args. set dummy gtkdoc-mkpdf; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_GTKDOC_MKPDF+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_path_GTKDOC_MKPDF+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $GTKDOC_MKPDF in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_MKPDF="$GTKDOC_MKPDF" # Let the user override the test with a path. @@ -15371,11 +16098,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_GTKDOC_MKPDF="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_path_GTKDOC_MKPDF="$as_dir$ac_word$ac_exec_ext" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -15387,20 +16118,21 @@ fi GTKDOC_MKPDF=$ac_cv_path_GTKDOC_MKPDF if test -n "$GTKDOC_MKPDF"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_MKPDF" >&5 -$as_echo "$GTKDOC_MKPDF" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_MKPDF" >&5 +printf "%s\n" "$GTKDOC_MKPDF" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi # Check whether --with-html-dir was given. -if test "${with_html_dir+set}" = set; then : +if test ${with_html_dir+y} +then : withval=$with_html_dir; -else +else $as_nop with_html_dir='${datadir}/gtk-doc/html' fi @@ -15408,17 +16140,18 @@ # Check whether --enable-gtk-doc was given. -if test "${enable_gtk_doc+set}" = set; then : +if test ${enable_gtk_doc+y} +then : enableval=$enable_gtk_doc; -else +else $as_nop enable_gtk_doc=no fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build gtk-doc documentation" >&5 -$as_echo_n "checking whether to build gtk-doc documentation... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_gtk_doc" >&5 -$as_echo "$enable_gtk_doc" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build gtk-doc documentation" >&5 +printf %s "checking whether to build gtk-doc documentation... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_gtk_doc" >&5 +printf "%s\n" "$enable_gtk_doc" >&6; } if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then as_fn_error $? " @@ -15430,17 +16163,17 @@ if test "x$PACKAGE_NAME" != "xglib"; then pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTKDOC_DEPS" >&5 -$as_echo_n "checking for GTKDOC_DEPS... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GTKDOC_DEPS" >&5 +printf %s "checking for GTKDOC_DEPS... " >&6; } if test -n "$GTKDOC_DEPS_CFLAGS"; then pkg_cv_GTKDOC_DEPS_CFLAGS="$GTKDOC_DEPS_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTKDOC_DEPS_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes @@ -15454,10 +16187,10 @@ pkg_cv_GTKDOC_DEPS_LIBS="$GTKDOC_DEPS_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTKDOC_DEPS_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes @@ -15471,8 +16204,8 @@ if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -15489,29 +16222,31 @@ : elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } : else GTKDOC_DEPS_CFLAGS=$pkg_cv_GTKDOC_DEPS_CFLAGS GTKDOC_DEPS_LIBS=$pkg_cv_GTKDOC_DEPS_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } fi fi # Check whether --enable-gtk-doc-html was given. -if test "${enable_gtk_doc_html+set}" = set; then : +if test ${enable_gtk_doc_html+y} +then : enableval=$enable_gtk_doc_html; -else +else $as_nop enable_gtk_doc_html=yes fi # Check whether --enable-gtk-doc-pdf was given. -if test "${enable_gtk_doc_pdf+set}" = set; then : +if test ${enable_gtk_doc_pdf+y} +then : enableval=$enable_gtk_doc_pdf; -else +else $as_nop enable_gtk_doc_pdf=no fi @@ -15575,24 +16310,119 @@ + + + + # Check whether --enable-introspection was given. +if test ${enable_introspection+y} +then : + enableval=$enable_introspection; +else $as_nop + enable_introspection=auto +fi + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gobject-introspection" >&5 +printf %s "checking for gobject-introspection... " >&6; } + + case $enable_introspection in #( + no) : + found_introspection="no (disabled, use --enable-introspection to enable)" + ;; #( + yes) : + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + : +else + as_fn_error $? "gobject-introspection-1.0 is not installed" "$LINENO" 5 +fi + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 0.9.6\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 0.9.6") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + found_introspection=yes +else + as_fn_error $? "You need to have gobject-introspection >= 0.9.6 installed to build libmbim" "$LINENO" 5 +fi + ;; #( + auto) : + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 0.9.6\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 0.9.6") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + found_introspection=yes +else + found_introspection=no +fi + enable_introspection=$found_introspection + ;; #( + *) : + as_fn_error $? "invalid argument passed to --enable-introspection, should be one of [no/auto/yes]" "$LINENO" 5 + ;; +esac + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $found_introspection" >&5 +printf "%s\n" "$found_introspection" >&6; } + + INTROSPECTION_SCANNER= + INTROSPECTION_COMPILER= + INTROSPECTION_GENERATE= + INTROSPECTION_GIRDIR= + INTROSPECTION_TYPELIBDIR= + if test "x$found_introspection" = "xyes"; then + INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` + INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` + INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` + INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0` + INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)" + INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` + INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` + INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection + fi + + + + + + + + + + if test "x$found_introspection" = "xyes"; then + HAVE_INTROSPECTION_TRUE= + HAVE_INTROSPECTION_FALSE='#' +else + HAVE_INTROSPECTION_TRUE='#' + HAVE_INTROSPECTION_FALSE= +fi + + + + # MBIM username MBIM_USERNAME="root" # Check whether --enable-mbim-username was given. -if test "${enable_mbim_username+set}" = set; then : +if test ${enable_mbim_username+y} +then : enableval=$enable_mbim_username; fi if test -n "$enable_mbim_username" ; then MBIM_USERNAME_ENABLED=yes -$as_echo "#define MBIM_USERNAME_ENABLED 1" >>confdefs.h +printf "%s\n" "#define MBIM_USERNAME_ENABLED 1" >>confdefs.h MBIM_USERNAME="$enable_mbim_username" -cat >>confdefs.h <<_ACEOF -#define MBIM_USERNAME "$MBIM_USERNAME" -_ACEOF +printf "%s\n" "#define MBIM_USERNAME \"$MBIM_USERNAME\"" >>confdefs.h else MBIM_USERNAME_ENABLED=no @@ -15612,17 +16442,17 @@ pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GUDEV" >&5 -$as_echo_n "checking for GUDEV... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GUDEV" >&5 +printf %s "checking for GUDEV... " >&6; } if test -n "$GUDEV_CFLAGS"; then pkg_cv_GUDEV_CFLAGS="$GUDEV_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gudev-1.0 >= \$GUDEV_VERSION\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gudev-1.0 >= \$GUDEV_VERSION\""; } >&5 ($PKG_CONFIG --exists --print-errors "gudev-1.0 >= $GUDEV_VERSION") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GUDEV_CFLAGS=`$PKG_CONFIG --cflags "gudev-1.0 >= $GUDEV_VERSION" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes @@ -15636,10 +16466,10 @@ pkg_cv_GUDEV_LIBS="$GUDEV_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gudev-1.0 >= \$GUDEV_VERSION\""; } >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gudev-1.0 >= \$GUDEV_VERSION\""; } >&5 ($PKG_CONFIG --exists --print-errors "gudev-1.0 >= $GUDEV_VERSION") 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GUDEV_LIBS=`$PKG_CONFIG --libs "gudev-1.0 >= $GUDEV_VERSION" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes @@ -15653,8 +16483,8 @@ if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -15671,22 +16501,23 @@ have_gudev=no elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } have_gudev=no else GUDEV_CFLAGS=$pkg_cv_GUDEV_CFLAGS GUDEV_LIBS=$pkg_cv_GUDEV_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } have_gudev=yes fi # Check whether --with-udev was given. -if test "${with_udev+set}" = set; then : +if test ${with_udev+y} +then : withval=$with_udev; -else +else $as_nop with_udev=auto fi @@ -15705,7 +16536,7 @@ as_fn_error $? "Couldn't find gudev >= $GUDEV_VERSION. Install it, or otherwise configure using --without-udev to disable udev support." "$LINENO" 5 else -$as_echo "#define WITH_UDEV 1" >>confdefs.h +printf "%s\n" "#define WITH_UDEV 1" >>confdefs.h @@ -15719,7 +16550,8 @@ # udev base directory # Check whether --with-udev-base-dir was given. -if test "${with_udev_base_dir+set}" = set; then : +if test ${with_udev_base_dir+y} +then : withval=$with_udev_base_dir; fi @@ -15732,11 +16564,12 @@ # Extract the first word of "help2man", so it can be a program name with args. set dummy help2man; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_HELP2MAN+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_path_HELP2MAN+y} +then : + printf %s "(cached) " >&6 +else $as_nop case $HELP2MAN in [\\/]* | ?:[\\/]*) ac_cv_path_HELP2MAN="$HELP2MAN" # Let the user override the test with a path. @@ -15746,11 +16579,15 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_HELP2MAN="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_path_HELP2MAN="$as_dir$ac_word$ac_exec_ext" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done @@ -15763,11 +16600,11 @@ fi HELP2MAN=$ac_cv_path_HELP2MAN if test -n "$HELP2MAN"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HELP2MAN" >&5 -$as_echo "$HELP2MAN" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $HELP2MAN" >&5 +printf "%s\n" "$HELP2MAN" >&6; } else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } fi @@ -15780,7 +16617,7 @@ fi -ac_config_files="$ac_config_files Makefile build-aux/Makefile build-aux/templates/Makefile build-aux/mbim-codegen/Makefile data/Makefile data/pkg-config/Makefile data/pkg-config/mbim-glib.pc src/Makefile src/common/Makefile src/common/test/Makefile src/libmbim-glib/Makefile src/libmbim-glib/mbim-version.h src/libmbim-glib/generated/Makefile src/libmbim-glib/test/Makefile src/mbimcli/Makefile src/mbim-proxy/Makefile utils/Makefile docs/Makefile docs/reference/Makefile docs/reference/libmbim-glib/Makefile docs/reference/libmbim-glib/version.xml docs/man/Makefile" +ac_config_files="$ac_config_files Makefile build-aux/Makefile build-aux/templates/Makefile build-aux/mbim-codegen/Makefile data/Makefile data/pkg-config/Makefile data/pkg-config/mbim-glib.pc src/Makefile src/common/Makefile src/common/test/Makefile src/libmbim-glib/Makefile src/libmbim-glib/mbim-version.h src/libmbim-glib/generated/Makefile src/libmbim-glib/test/Makefile src/mbimcli/Makefile src/mbim-proxy/Makefile utils/Makefile examples/Makefile examples/simple-tester-python/Makefile docs/Makefile docs/reference/Makefile docs/reference/libmbim-glib/Makefile docs/reference/libmbim-glib/version.xml docs/man/Makefile" if test "x$MBIM_USERNAME_ENABLED" = "xyes"; then @@ -15815,8 +16652,8 @@ case $ac_val in #( *${as_nl}*) case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( @@ -15846,15 +16683,15 @@ /^ac_cv_env_/b end t clear :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/ t end s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ :end' >>confcache if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then if test "x$cache_file" != "x/dev/null"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 -$as_echo "$as_me: updating cache $cache_file" >&6;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +printf "%s\n" "$as_me: updating cache $cache_file" >&6;} if test ! -f "$cache_file" || test -h "$cache_file"; then cat confcache >"$cache_file" else @@ -15868,8 +16705,8 @@ fi fi else - { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 -$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +printf "%s\n" "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache @@ -15886,7 +16723,7 @@ for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' - ac_i=`$as_echo "$ac_i" | sed "$ac_script"` + ac_i=`printf "%s\n" "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" @@ -15897,14 +16734,14 @@ LTLIBOBJS=$ac_ltlibobjs -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 -$as_echo_n "checking that generated files are newer than configure... " >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 +printf %s "checking that generated files are newer than configure... " >&6; } if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 -$as_echo "done" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5 +printf "%s\n" "done" >&6; } if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' @@ -15949,6 +16786,10 @@ as_fn_error $? "conditional \"GTK_DOC_USE_REBASE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${HAVE_INTROSPECTION_TRUE}" && test -z "${HAVE_INTROSPECTION_FALSE}"; then + as_fn_error $? "conditional \"HAVE_INTROSPECTION\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MBIM_USERNAME_ENABLED_TRUE}" && test -z "${MBIM_USERNAME_ENABLED_FALSE}"; then as_fn_error $? "conditional \"MBIM_USERNAME_ENABLED\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -15962,8 +16803,8 @@ ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 -$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 +printf "%s\n" "$as_me: creating $CONFIG_STATUS" >&6;} as_write_fail=0 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL @@ -15986,14 +16827,16 @@ # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : +as_nop=: +if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 +then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST -else +else $as_nop case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( @@ -16003,46 +16846,46 @@ fi + +# Reset variables that may have inherited troublesome values from +# the environment. + +# IFS needs to be set, to space, tab, and newline, in precisely that order. +# (If _AS_PATH_WALK were called with IFS unset, it would have the +# side effect of setting IFS to empty, thus disabling word splitting.) +# Quoting is to prevent editors from complaining about space-tab. as_nl=' ' export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi +IFS=" "" $as_nl" + +PS1='$ ' +PS2='> ' +PS4='+ ' + +# Ensure predictable behavior from utilities with locale-dependent output. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# We cannot yet rely on "unset" to work, but we need these variables +# to be unset--not just set to an empty or harmless value--now, to +# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct +# also avoids known problems related to "unset" and subshell syntax +# in other old shells (e.g. bash 2.01 and pdksh 5.2.14). +for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH +do eval test \${$as_var+y} \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done + +# Ensure that fds 0, 1, and 2 are open. +if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi +if (exec 3>&2) ; then :; else exec 2>/dev/null; fi # The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then +if ${PATH_SEPARATOR+false} :; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || @@ -16051,13 +16894,6 @@ fi -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( @@ -16066,8 +16902,12 @@ for as_dir in $PATH do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + test -r "$as_dir$0" && as_myself=$as_dir$0 && break done IFS=$as_save_IFS @@ -16079,30 +16919,10 @@ as_myself=$0 fi if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH # as_fn_error STATUS ERROR [LINENO LOG_FD] @@ -16115,13 +16935,14 @@ as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi - $as_echo "$as_me: error: $2" >&2 + printf "%s\n" "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error + # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. @@ -16148,18 +16969,20 @@ { eval $1=; unset $1;} } as_unset=as_fn_unset + # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null +then : eval 'as_fn_append () { eval $1+=\$2 }' -else +else $as_nop as_fn_append () { eval $1=\$$1\$2 @@ -16171,12 +16994,13 @@ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null +then : eval 'as_fn_arith () { as_val=$(( $* )) }' -else +else $as_nop as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` @@ -16207,7 +17031,7 @@ $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | +printf "%s\n" X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q @@ -16229,6 +17053,10 @@ as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits + +# Determine whether it's possible to make 'echo' print without a newline. +# These variables are no longer used directly by Autoconf, but are AC_SUBSTed +# for compatibility with existing Makefiles. ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) @@ -16242,6 +17070,12 @@ ECHO_N='-n';; esac +# For backward compatibility with old third-party macros, we provide +# the shell variables $as_echo and $as_echo_n. New code should use +# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively. +as_echo='printf %s\n' +as_echo_n='printf %s' + rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file @@ -16283,7 +17117,7 @@ as_dirs= while :; do case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" @@ -16292,7 +17126,7 @@ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | +printf "%s\n" X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -16354,8 +17188,8 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libmbim $as_me 1.22.0, which was -generated by GNU Autoconf 2.69. Invocation command line was +This file was extended by libmbim $as_me 1.24.8, which was +generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -16417,14 +17251,16 @@ Report bugs to ." _ACEOF +ac_cs_config=`printf "%s\n" "$ac_configure_args" | sed "$ac_safe_unquote"` +ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\''/g"` cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" +ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -libmbim config.status 1.22.0 -configured by $0, generated by GNU Autoconf 2.69, +libmbim config.status 1.24.8 +configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" -Copyright (C) 2012 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." @@ -16464,15 +17300,15 @@ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; + printf "%s\n" "$ac_cs_version"; exit ;; --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; + printf "%s\n" "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; '') as_fn_error $? "missing file argument" ;; esac as_fn_append CONFIG_FILES " '$ac_optarg'" @@ -16480,7 +17316,7 @@ --header | --heade | --head | --hea ) $ac_shift case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; @@ -16489,7 +17325,7 @@ as_fn_error $? "ambiguous option: \`$1' Try \`$0 --help' for more information.";; --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; + printf "%s\n" "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; @@ -16517,7 +17353,7 @@ if \$ac_cs_recheck; then set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift - \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 + \printf "%s\n" "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' export CONFIG_SHELL exec "\$@" @@ -16531,7 +17367,7 @@ sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX - $as_echo "$ac_log" + printf "%s\n" "$ac_log" } >&5 _ACEOF @@ -16852,6 +17688,8 @@ "src/mbimcli/Makefile") CONFIG_FILES="$CONFIG_FILES src/mbimcli/Makefile" ;; "src/mbim-proxy/Makefile") CONFIG_FILES="$CONFIG_FILES src/mbim-proxy/Makefile" ;; "utils/Makefile") CONFIG_FILES="$CONFIG_FILES utils/Makefile" ;; + "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;; + "examples/simple-tester-python/Makefile") CONFIG_FILES="$CONFIG_FILES examples/simple-tester-python/Makefile" ;; "docs/Makefile") CONFIG_FILES="$CONFIG_FILES docs/Makefile" ;; "docs/reference/Makefile") CONFIG_FILES="$CONFIG_FILES docs/reference/Makefile" ;; "docs/reference/libmbim-glib/Makefile") CONFIG_FILES="$CONFIG_FILES docs/reference/libmbim-glib/Makefile" ;; @@ -16869,9 +17707,9 @@ # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands + test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files + test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers + test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree @@ -17207,7 +18045,7 @@ esac || as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" done @@ -17215,17 +18053,17 @@ # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +printf "%s\n" "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. case $configure_input in #( *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | + ac_sed_conf_input=`printf "%s\n" "$configure_input" | sed 's/[\\\\&|]/\\\\&/g'`;; #( *) ac_sed_conf_input=$configure_input;; esac @@ -17242,7 +18080,7 @@ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | +printf "%s\n" X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -17266,9 +18104,9 @@ case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; @@ -17330,8 +18168,8 @@ case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_datarootdir_hack=' @@ -17375,9 +18213,9 @@ { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&2;} rm -f "$ac_tmp/stdin" @@ -17393,20 +18231,20 @@ # if test x"$ac_file" != x-; then { - $as_echo "/* $configure_input */" \ + printf "%s\n" "/* $configure_input */" >&1 \ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" } >"$ac_tmp/config.h" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +printf "%s\n" "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" mv "$ac_tmp/config.h" "$ac_file" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 fi else - $as_echo "/* $configure_input */" \ + printf "%s\n" "/* $configure_input */" >&1 \ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ || as_fn_error $? "could not create -" "$LINENO" 5 fi @@ -17426,7 +18264,7 @@ X"$_am_arg" : 'X\(//\)[^/]' \| \ X"$_am_arg" : 'X\(//\)$' \| \ X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$_am_arg" | +printf "%s\n" X"$_am_arg" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -17446,8 +18284,8 @@ s/.*/./; q'`/stamp-h$_am_stamp_count ;; - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} + :C) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +printf "%s\n" "$as_me: executing $ac_file commands" >&6;} ;; esac @@ -17473,7 +18311,7 @@ for am_mf do # Strip MF so we end up with the name of the file. - am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'` + am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile which includes # dependency-tracking related rules and includes. # Grep'ing the whole file directly is not great: AIX grep has a line @@ -17485,7 +18323,7 @@ X"$am_mf" : 'X\(//\)[^/]' \| \ X"$am_mf" : 'X\(//\)$' \| \ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$am_mf" | +printf "%s\n" X"$am_mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -17507,7 +18345,7 @@ $as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \ X"$am_mf" : 'X\(//\)$' \| \ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$am_mf" | +printf "%s\n" X/"$am_mf" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q @@ -17532,10 +18370,12 @@ (exit $ac_status); } || am_rc=$? done if test $am_rc -ne 0; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "Something went wrong bootstrapping makefile fragments - for automatic dependency tracking. Try re-running configure with the + for automatic dependency tracking. If GNU make was not used, consider + re-running the configure script with MAKE=\"gmake\" (or whatever is + necessary). You can also try re-running configure with the '--disable-dependency-tracking' option to at least be able to build the package (albeit without support for automatic dependency tracking). See \`config.log' for more details" "$LINENO" 5; } @@ -18077,6 +18917,7 @@ esac + ltmain=$ac_aux_dir/ltmain.sh @@ -18126,8 +18967,8 @@ $ac_cs_success || as_fn_exit 1 fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 -$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 +printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi @@ -18136,19 +18977,21 @@ ============================================== Build: - compiler: ${CC} - cflags: ${CFLAGS} - ldflags: ${LDFLAGS} - warn cflags: ${WARN_CFLAGS} - warn ldflags: ${WARN_LDFLAGS} - Maintainer mode: ${USE_MAINTAINER_MODE} - Documentation: ${enable_gtk_doc} + compiler: ${CC} + cflags: ${CFLAGS} + ldflags: ${LDFLAGS} + warn cflags: ${WARN_CFLAGS} + warn ldflags: ${WARN_LDFLAGS} + Maintainer mode: ${USE_MAINTAINER_MODE} + Documentation: ${enable_gtk_doc} + gobject introspection: ${found_introspection} System paths: - prefix: ${prefix} - udev base directory: ${UDEV_BASE_DIR} + prefix: ${prefix} + udev base directory: ${UDEV_BASE_DIR} Features: - udev support: ${with_udev} - MBIM username: ${MBIM_USERNAME_ENABLED} (${MBIM_USERNAME}) + udev support: ${with_udev} + MBIM username: ${MBIM_USERNAME_ENABLED} (${MBIM_USERNAME}) " + diff -Nru libmbim-1.22.0/configure.ac libmbim-1.24.8/configure.ac --- libmbim-1.22.0/configure.ac 2020-01-15 23:08:36.000000000 +0800 +++ libmbim-1.24.8/configure.ac 2021-06-02 22:05:42.000000000 +0800 @@ -3,8 +3,8 @@ dnl The libmbim version number m4_define([mbim_major_version], [1]) -m4_define([mbim_minor_version], [22]) -m4_define([mbim_micro_version], [0]) +m4_define([mbim_minor_version], [24]) +m4_define([mbim_micro_version], [8]) m4_define([mbim_version], [mbim_major_version.mbim_minor_version.mbim_micro_version]) @@ -16,9 +16,9 @@ dnl with old code), increment a. dnl If the interface has changed in an incompatible way (that is, dnl functions have changed or been removed), then zero a. -m4_define([mbim_glib_lt_current], [8]) -m4_define([mbim_glib_lt_revision], [2]) -m4_define([mbim_glib_lt_age], [4]) +m4_define([mbim_glib_lt_current], [9]) +m4_define([mbim_glib_lt_revision], [0]) +m4_define([mbim_glib_lt_age], [5]) AC_INIT([libmbim], [mbim_version], [libmbim-devel@lists.freedesktop.org]) @@ -89,9 +89,9 @@ AC_SUBST(MBIM_GLIB_LT_AGE) dnl Required dependency versions -GLIB_MIN_VERSION=2.36 +GLIB_MIN_VERSION=2.48 -GLIB_BUILD_SYMBOLS="-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_36 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_36 -DGLIB_DISABLE_DEPRECATION_WARNINGS" +GLIB_BUILD_SYMBOLS="-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_48 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_48 -DGLIB_DISABLE_DEPRECATION_WARNINGS" dnl General dependencies for common PKG_CHECK_MODULES(MBIM_COMMON, @@ -130,12 +130,12 @@ AM_PATH_PYTHON([], [], [PYTHON=python]) -GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0` -AC_SUBST(GLIB_MKENUMS) - dnl Documentation GTK_DOC_CHECK(1.0) +dnl GObject Introspection +GOBJECT_INTROSPECTION_CHECK([0.9.6]) + # MBIM username MBIM_USERNAME="root" AC_ARG_ENABLE(mbim-username, @@ -213,6 +213,8 @@ src/mbimcli/Makefile src/mbim-proxy/Makefile utils/Makefile + examples/Makefile + examples/simple-tester-python/Makefile docs/Makefile docs/reference/Makefile docs/reference/libmbim-glib/Makefile @@ -230,19 +232,20 @@ ============================================== Build: - compiler: ${CC} - cflags: ${CFLAGS} - ldflags: ${LDFLAGS} - warn cflags: ${WARN_CFLAGS} - warn ldflags: ${WARN_LDFLAGS} - Maintainer mode: ${USE_MAINTAINER_MODE} - Documentation: ${enable_gtk_doc} + compiler: ${CC} + cflags: ${CFLAGS} + ldflags: ${LDFLAGS} + warn cflags: ${WARN_CFLAGS} + warn ldflags: ${WARN_LDFLAGS} + Maintainer mode: ${USE_MAINTAINER_MODE} + Documentation: ${enable_gtk_doc} + gobject introspection: ${found_introspection} System paths: - prefix: ${prefix} - udev base directory: ${UDEV_BASE_DIR} + prefix: ${prefix} + udev base directory: ${UDEV_BASE_DIR} Features: - udev support: ${with_udev} - MBIM username: ${MBIM_USERNAME_ENABLED} (${MBIM_USERNAME}) + udev support: ${with_udev} + MBIM username: ${MBIM_USERNAME_ENABLED} (${MBIM_USERNAME}) " diff -Nru libmbim-1.22.0/data/Makefile.in libmbim-1.24.8/data/Makefile.in --- libmbim-1.22.0/data/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/data/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -90,9 +90,10 @@ subdir = data ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -193,7 +194,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -207,7 +207,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -224,6 +223,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -333,6 +340,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/data/mbim-service-atds.json libmbim-1.24.8/data/mbim-service-atds.json --- libmbim-1.22.0/data/mbim-service-atds.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-atds.json 2020-07-10 16:12:29.000000000 +0800 @@ -7,6 +7,7 @@ { "name" : "Signal", "service" : "ATDS", "type" : "Command", + "since" : "1.16", "query" : [], "response" : [ // 0-31: dBm = -113 + (2*rssi) @@ -65,6 +66,7 @@ { "name" : "Location", "service" : "ATDS", "type" : "Command", + "since" : "1.16", "query" : [], "response" : [ { "name" : "Lac", "format" : "guint32" }, @@ -76,6 +78,7 @@ // ********************************************************************************* { "name" : "MbimAtdsProvider", "type" : "Struct", + "since" : "1.16", "contents" : [ { "name" : "ProviderId", "format" : "string" }, { "name" : "ProviderState", @@ -94,6 +97,7 @@ { "name" : "Operators", "service" : "ATDS", "type" : "Command", + "since" : "1.16", "query" : [], "response" : [ { "name" : "ProvidersCount", "format" : "guint32" }, @@ -106,6 +110,7 @@ { "name" : "RAT", "service" : "ATDS", "type" : "Command", + "since" : "1.16", "set" : [ { "name" : "Mode", "format" : "guint32", "public-format" : "MbimAtdsRatMode" } ], @@ -118,6 +123,7 @@ { "name" : "Register State", "service" : "ATDS", "type" : "Command", + "since" : "1.16", "query" : [], "response" : [ { "name" : "NwError", "format" : "guint32", diff -Nru libmbim-1.22.0/data/mbim-service-auth.json libmbim-1.24.8/data/mbim-service-auth.json --- libmbim-1.22.0/data/mbim-service-auth.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-auth.json 2020-07-10 16:12:29.000000000 +0800 @@ -1,13 +1,14 @@ [ - // ********************************************************************************* - { "type" : "Service", - "name" : "Auth" }, + // ********************************************************************************* + { "type" : "Service", + "name" : "Auth" }, // ********************************************************************************* { "name" : "Aka", "service" : "Auth", "type" : "Command", + "since" : "1.4", "query" : [ { "name" : "Rand", "format" : "byte-array", "array-size" : "16" }, @@ -33,6 +34,7 @@ { "name" : "Akap", "service" : "Auth", "type" : "Command", + "since" : "1.4", "query" : [ { "name" : "Rand", "format" : "byte-array", "array-size" : "16" }, @@ -60,6 +62,7 @@ { "name" : "Sim", "service" : "Auth", "type" : "Command", + "since" : "1.4", "query" : [ { "name" : "Rand1", "format" : "byte-array", "array-size" : "16" }, diff -Nru libmbim-1.22.0/data/mbim-service-basic-connect.json libmbim-1.24.8/data/mbim-service-basic-connect.json --- libmbim-1.22.0/data/mbim-service-basic-connect.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-basic-connect.json 2020-07-10 16:12:29.000000000 +0800 @@ -8,6 +8,7 @@ { "name" : "Device Caps", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "query" : [], "response" : [ { "name" : "DeviceType", "format" : "guint32", @@ -46,25 +47,28 @@ "max-size" : "60" } ] }, // ********************************************************************************* - { "name" : "Subscriber Ready Status", - "service" : "Basic Connect", - "type" : "Command", - "query" : [], - "response" : [ { "name" : "ReadyState", - "format" : "guint32", - "public-format" : "MbimSubscriberReadyState" }, - { "name" : "SubscriberId", - "format" : "string" }, - { "name" : "SimIccId", - "format" : "string" }, - { "name" : "ReadyInfo", - "format" : "guint32", - "public-format" : "MbimReadyInfoFlag" }, - { "name" : "TelephoneNumbersCount", - "format" : "guint32" }, - { "name" : "TelephoneNumbers", - "format" : "string-array", - "array-size-field" : "TelephoneNumbersCount" } ], + { "name" : "Subscriber Ready Status", + "service" : "Basic Connect", + "type" : "Command", + "since-ex" : { "query" : "1.0", + "response" : "1.0", + "notification" : "1.8" }, + "query" : [], + "response" : [ { "name" : "ReadyState", + "format" : "guint32", + "public-format" : "MbimSubscriberReadyState" }, + { "name" : "SubscriberId", + "format" : "string" }, + { "name" : "SimIccId", + "format" : "string" }, + { "name" : "ReadyInfo", + "format" : "guint32", + "public-format" : "MbimReadyInfoFlag" }, + { "name" : "TelephoneNumbersCount", + "format" : "guint32" }, + { "name" : "TelephoneNumbers", + "format" : "string-array", + "array-size-field" : "TelephoneNumbersCount" } ], "notification" : [ { "name" : "ReadyState", "format" : "guint32", "public-format" : "MbimSubscriberReadyState" }, @@ -85,6 +89,7 @@ { "name" : "Radio State", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "set" : [ { "name" : "RadioState", "format" : "guint32", "public-format" : "MbimRadioSwitchState" } ], @@ -106,6 +111,7 @@ { "name" : "Pin", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "set" : [ { "name" : "PinType", "format" : "guint32", "public-format" : "MbimPinType" }, @@ -129,6 +135,7 @@ // ********************************************************************************* { "name" : "MbimPinDesc", "type" : "Struct", + "since" : "1.0", "contents" : [ { "name" : "PinMode", "format" : "guint32", "public-format" : "MbimPinMode" }, @@ -143,6 +150,7 @@ { "name" : "Pin List", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "query" : [], "response" : [ { "name" : "PinDescPin1", "format" : "struct", @@ -178,6 +186,7 @@ // ********************************************************************************* { "name" : "MbimProvider", "type" : "Struct", + "since" : "1.2", "contents" : [ { "name" : "ProviderId", "format" : "string" }, { "name" : "ProviderState", @@ -196,6 +205,7 @@ { "name" : "Home Provider", "service" : "Basic Connect", "type" : "Command", + "since" : "1.2", "set" : [ { "name" : "Provider", "format" : "struct" , "struct-type" : "MbimProvider" } ], @@ -205,22 +215,26 @@ "struct-type" : "MbimProvider" } ] }, // ********************************************************************************* - { "name" : "Preferred Providers", - "service" : "Basic Connect", - "type" : "Command", - "set" : [ { "name" : "ProvidersCount", - "format" : "guint32" }, - { "name" : "Providers", - "format" : "ref-struct-array" , - "struct-type" : "MbimProvider", - "array-size-field" : "ProvidersCount" } ], - "query" : [], - "response" : [ { "name" : "ProvidersCount", - "format" : "guint32" }, - { "name" : "Providers", - "format" : "ref-struct-array" , - "struct-type" : "MbimProvider", - "array-size-field" : "ProvidersCount" } ], + { "name" : "Preferred Providers", + "service" : "Basic Connect", + "type" : "Command", + "since-ex" : { "set" : "1.2", + "query" : "1.2", + "response" : "1.2", + "notification" : "1.8" }, + "set" : [ { "name" : "ProvidersCount", + "format" : "guint32" }, + { "name" : "Providers", + "format" : "ref-struct-array" , + "struct-type" : "MbimProvider", + "array-size-field" : "ProvidersCount" } ], + "query" : [], + "response" : [ { "name" : "ProvidersCount", + "format" : "guint32" }, + { "name" : "Providers", + "format" : "ref-struct-array" , + "struct-type" : "MbimProvider", + "array-size-field" : "ProvidersCount" } ], "notification" : [ { "name" : "ProvidersCount", "format" : "guint32" }, { "name" : "Providers", @@ -232,6 +246,7 @@ { "name" : "Visible Providers", "service" : "Basic Connect", "type" : "Command", + "since" : "1.2", "query" : [ { "name" : "Action", "format": "guint32", "public-format" : "MbimVisibleProvidersAction" } ], @@ -246,6 +261,7 @@ { "name" : "Register State", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "set" : [ { "name" : "ProviderId", "format" : "string" }, { "name" : "RegisterAction", @@ -308,6 +324,7 @@ { "name" : "Signal State", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "set" : [ { "name" : "SignalStrengthInterval", "format" : "guint32" }, { "name" : "RssiThreshold", @@ -341,6 +358,7 @@ { "name" : "Packet Service", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "set" : [ { "name" : "PacketServiceAction", "format" : "guint32", "public-format" : "MbimPacketServiceAction" } ], @@ -374,6 +392,7 @@ { "name" : "Connect", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "set" : [ { "name" : "SessionId", "format" : "guint32" }, { "name" : "ActivationCommand", @@ -445,6 +464,7 @@ // ********************************************************************************* { "name" : "MbimProvisionedContextElement", "type" : "Struct", + "since" : "1.0", "contents" : [ { "name" : "ContextId", "format" : "guint32" }, { "name" : "ContextType", @@ -465,6 +485,7 @@ { "name" : "Provisioned Contexts", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "set" : [ { "name" : "ContextId", "format" : "guint32" }, { "name" : "ContextType", @@ -502,6 +523,7 @@ { "name" : "Service Activation", "service" : "Basic Connect", "type" : "Command", + "since" : "1.2", "set" : [ { "name" : "Buffer", "format" : "unsized-byte-array" } ], "response" : [ { "name" : "NwError", @@ -513,6 +535,7 @@ // ********************************************************************************* { "name" : "MbimIPv4Element", "type" : "Struct", + "since" : "1.0", "contents" : [ { "name" : "OnLinkPrefixLength", "format" : "guint32" }, { "name" : "IPv4Address", @@ -520,6 +543,7 @@ { "name" : "MbimIPv6Element", "type" : "Struct", + "since" : "1.0", "contents" : [ { "name" : "OnLinkPrefixLength", "format" : "guint32" }, { "name" : "IPv6Address", @@ -528,6 +552,7 @@ { "name" : "IP Configuration", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "query" : [ { "name" : "SessionId", "format" : "guint32" }, { "name" : "IPv4ConfigurationAvailable", @@ -646,6 +671,7 @@ // ********************************************************************************* { "name" : "MbimDeviceServiceElement", "type" : "Struct", + "since" : "1.0", "contents" : [ { "name" : "DeviceServiceId", "format" : "uuid" }, { "name" : "DssPayload", @@ -661,6 +687,7 @@ { "name" : "Device Services", "service" : "Basic Connect", "type" : "Command", + "since" : "1.0", "query" : [], "response" : [ { "name" : "DeviceServicesCount", "format" : "guint32" }, @@ -674,6 +701,7 @@ // ********************************************************************************* { "name" : "MbimEventEntry", "type" : "Struct", + "since" : "1.4", "contents" : [ { "name" : "DeviceServiceId", "format" : "uuid" }, { "name" : "CidsCount", @@ -685,6 +713,7 @@ { "name" : "Device Service Subscribe List", "service" : "Basic Connect", "type" : "Command", + "since" : "1.8", "set" : [ { "name" : "EventsCount", "format" : "guint32" }, { "name" : "Events", @@ -702,6 +731,7 @@ { "name" : "Packet Statistics", "service" : "Basic Connect", "type" : "Command", + "since" : "1.4", "query" : [], "response" : [ { "name" : "InDiscards", "format" : "guint32" }, @@ -724,6 +754,7 @@ { "name" : "Network Idle Hint", "service" : "Basic Connect", "type" : "Command", + "since" : "1.4", "query" : [], "set" : [ { "name" : "State", "format" : "guint32", @@ -733,16 +764,20 @@ "public-format" : "MbimNetworkIdleHintState" } ] }, // ********************************************************************************* - { "name" : "Emergency Mode", - "service" : "Basic Connect", - "type" : "Command", - "query" : [], - "set" : [ { "name" : "State", - "format" : "guint32", - "public-format" : "MbimEmergencyModeState" } ], - "response" : [ { "name" : "State", - "format" : "guint32", - "public-format" : "MbimEmergencyModeState" } ], + { "name" : "Emergency Mode", + "service" : "Basic Connect", + "type" : "Command", + "since-ex" : { "set" : "1.4", + "query" : "1.4", + "response" : "1.4", + "notification" : "1.8" }, + "query" : [], + "set" : [ { "name" : "State", + "format" : "guint32", + "public-format" : "MbimEmergencyModeState" } ], + "response" : [ { "name" : "State", + "format" : "guint32", + "public-format" : "MbimEmergencyModeState" } ], "notification" : [ { "name" : "State", "format" : "guint32", "public-format" : "MbimEmergencyModeState" } ] }, @@ -750,6 +785,7 @@ // ********************************************************************************* { "name" : "MbimPacketFilter", "type" : "Struct", + "since" : "1.4", "contents" : [ { "name" : "FilterSize", "format" : "guint32" }, { "name" : "PacketFilter", @@ -762,6 +798,7 @@ { "name" : "IP Packet Filters", "service" : "Basic Connect", "type" : "Command", + "since" : "1.4", "query" : [ { "name" : "SessionId", "format" : "guint32" }, { "name" : "PacketFiltersCount", @@ -788,22 +825,26 @@ "array-size-field" : "PacketFiltersCount" } ] }, // ********************************************************************************* - { "name" : "Multicarrier Providers", - "service" : "Basic Connect", - "type" : "Command", - "set" : [ { "name" : "ProvidersCount", - "format" : "guint32" }, - { "name" : "Providers", - "format" : "ref-struct-array" , - "struct-type" : "MbimProvider", - "array-size-field" : "ProvidersCount" } ], - "query" : [], - "response" : [ { "name" : "ProvidersCount", - "format" : "guint32" }, - { "name" : "Providers", - "format" : "ref-struct-array" , - "struct-type" : "MbimProvider", - "array-size-field" : "ProvidersCount" } ], + { "name" : "Multicarrier Providers", + "service" : "Basic Connect", + "type" : "Command", + "since-ex" : { "set" : "1.4", + "query" : "1.4", + "response" : "1.4", + "notification" : "1.8" }, + "set" : [ { "name" : "ProvidersCount", + "format" : "guint32" }, + { "name" : "Providers", + "format" : "ref-struct-array" , + "struct-type" : "MbimProvider", + "array-size-field" : "ProvidersCount" } ], + "query" : [], + "response" : [ { "name" : "ProvidersCount", + "format" : "guint32" }, + { "name" : "Providers", + "format" : "ref-struct-array" , + "struct-type" : "MbimProvider", + "array-size-field" : "ProvidersCount" } ], "notification" : [ { "name" : "ProvidersCount", "format" : "guint32" }, { "name" : "Providers", diff -Nru libmbim-1.22.0/data/mbim-service-dss.json libmbim-1.24.8/data/mbim-service-dss.json --- libmbim-1.22.0/data/mbim-service-dss.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-dss.json 2020-07-10 16:12:29.000000000 +0800 @@ -8,6 +8,7 @@ { "name" : "Connect", "service" : "DSS", "type" : "Command", + "since" : "1.4", "set" : [ { "name" : "DeviceServiceId", "format" : "uuid" }, { "name" : "DssSessionId", diff -Nru libmbim-1.22.0/data/mbim-service-intel-firmware-update.json libmbim-1.24.8/data/mbim-service-intel-firmware-update.json --- libmbim-1.22.0/data/mbim-service-intel-firmware-update.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-intel-firmware-update.json 2020-07-10 16:12:29.000000000 +0800 @@ -4,8 +4,9 @@ "name" : "Intel Firmware Update" }, // ********************************************************************************* - { "name" : "Modem Reboot", - "service" : "Intel Firmware Update", - "type" : "Command", - "set" : [] } + { "name" : "Modem Reboot", + "service" : "Intel Firmware Update", + "type" : "Command", + "since" : "1.16", + "set" : [] } ] diff -Nru libmbim-1.22.0/data/mbim-service-ms-basic-connect-extensions.json libmbim-1.24.8/data/mbim-service-ms-basic-connect-extensions.json --- libmbim-1.22.0/data/mbim-service-ms-basic-connect-extensions.json 2019-09-04 23:48:29.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-ms-basic-connect-extensions.json 2021-06-02 19:05:37.000000000 +0800 @@ -6,6 +6,7 @@ // ********************************************************************************* { "name" : "MbimPcoValue", "type" : "Struct", + "since" : "1.18", "contents" : [ { "name" : "SessionId", "format" : "guint32" }, { "name" : "PcoDataSize", @@ -20,6 +21,7 @@ { "name" : "PCO", "service" : "Ms Basic Connect Extensions", "type" : "Command", + "since" : "1.18", "query" : [ { "name" : "PcoValue", "format" : "struct", "struct-type" : "MbimPcoValue" } ], @@ -34,6 +36,7 @@ { "name" : "MbimLteAttachConfiguration", "type" : "Struct", + "since" : "1.18", "contents" : [ { "name" : "IpType", "format" : "guint32", "public-format" : "MbimContextIpType" }, @@ -59,6 +62,7 @@ { "name" : "Lte Attach Configuration", "service" : "Ms Basic Connect Extensions", "type" : "Command", + "since" : "1.18", "set" : [ { "name" : "Operation", "format" : "guint32", "public-format" : "MbimLteAttachContextOperation" }, @@ -86,6 +90,7 @@ { "name" : "MbimLteAttachStatus", "type" : "Struct", + "since" : "1.18", "contents" : [ { "name" : "LteAttachState", "format" : "guint32", "public-format" : "MbimLteAttachState" }, @@ -108,6 +113,7 @@ { "name" : "Lte Attach Status", "service" : "Ms Basic Connect Extensions", "type" : "Command", + "since" : "1.18", "query" : [], "response" : [ { "name" : "LteAttachStatus", "format" : "struct", diff -Nru libmbim-1.22.0/data/mbim-service-ms-firmware-id.json libmbim-1.24.8/data/mbim-service-ms-firmware-id.json --- libmbim-1.22.0/data/mbim-service-ms-firmware-id.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-ms-firmware-id.json 2020-07-10 16:12:29.000000000 +0800 @@ -7,6 +7,7 @@ { "name" : "Get", "service" : "MS Firmware ID", "type" : "Command", + "since" : "1.8", "query" : [], "response" : [ { "name" : "FirmwareId", "format" : "uuid" } ] } diff -Nru libmbim-1.22.0/data/mbim-service-ms-host-shutdown.json libmbim-1.24.8/data/mbim-service-ms-host-shutdown.json --- libmbim-1.22.0/data/mbim-service-ms-host-shutdown.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-ms-host-shutdown.json 2020-07-10 16:12:29.000000000 +0800 @@ -7,5 +7,6 @@ { "name" : "Notify", "service" : "MS Host Shutdown", "type" : "Command", + "since" : "1.8", "set" : [] } ] diff -Nru libmbim-1.22.0/data/mbim-service-phonebook.json libmbim-1.24.8/data/mbim-service-phonebook.json --- libmbim-1.22.0/data/mbim-service-phonebook.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-phonebook.json 2020-07-10 16:12:29.000000000 +0800 @@ -1,40 +1,42 @@ [ - // ********************************************************************************* - { "type" : "Service", - "name" : "Phonebook" }, - - // ********************************************************************************* - { "name" : "Configuration", - "service" : "Phonebook", - "type" : "Command", - "query" : [], - "response" : [ { "name" : "State", - "format" : "guint32", - "public-format" : "MbimPhonebookState" }, - { "name" : "NumberOfEntries", - "format" : "guint32" }, - { "name" : "UsedEntries", - "format" : "guint32" }, - { "name" : "MaxNumberLength", - "format" : "guint32" }, - { "name" : "MaxName", - "format" : "guint32" } ], - "notification" : [ { "name" : "State", - "format" : "guint32", - "public-format" : "MbimPhonebookState" }, - { "name" : "NumberOfEntries", - "format" : "guint32" }, - { "name" : "UsedEntries", - "format" : "guint32" }, - { "name" : "MaxNumberLength", - "format" : "guint32" }, - { "name" : "MaxName", - "format" : "guint32" } ] }, + // ********************************************************************************* + { "type" : "Service", + "name" : "Phonebook" }, + + // ********************************************************************************* + { "name" : "Configuration", + "service" : "Phonebook", + "type" : "Command", + "since" : "1.4", + "query" : [], + "response" : [ { "name" : "State", + "format" : "guint32", + "public-format" : "MbimPhonebookState" }, + { "name" : "NumberOfEntries", + "format" : "guint32" }, + { "name" : "UsedEntries", + "format" : "guint32" }, + { "name" : "MaxNumberLength", + "format" : "guint32" }, + { "name" : "MaxName", + "format" : "guint32" } ], + "notification" : [ { "name" : "State", + "format" : "guint32", + "public-format" : "MbimPhonebookState" }, + { "name" : "NumberOfEntries", + "format" : "guint32" }, + { "name" : "UsedEntries", + "format" : "guint32" }, + { "name" : "MaxNumberLength", + "format" : "guint32" }, + { "name" : "MaxName", + "format" : "guint32" } ] }, - // ********************************************************************************* + // ********************************************************************************* { "name" : "MbimPhonebookEntry", "type" : "Struct", + "since" : "1.4", "contents" : [ { "name" : "EntryIndex", "format" : "guint32" }, { "name" : "Number", @@ -45,6 +47,7 @@ { "name" : "Read", "service" : "Phonebook", "type" : "Command", + "since" : "1.4", "query" : [ { "name" : "FilterFlag", "format" : "guint32", "public-format" : "MbimPhonebookFlag" }, @@ -57,11 +60,11 @@ "struct-type" : "MbimPhonebookEntry", "array-size-field" : "EntryCount" } ] }, - // ********************************************************************************* - + // ********************************************************************************* { "name" : "Delete", "service" : "Phonebook", "type" : "Command", + "since" : "1.4", "set" : [ { "name" : "FilterFlag", "format" : "guint32", "public-format" : "MbimPhonebookFlag" }, @@ -70,11 +73,11 @@ "response" : [] }, - // ********************************************************************************* - + // ********************************************************************************* { "name" : "Write", "service" : "Phonebook", "type" : "Command", + "since" : "1.4", "set" : [ { "name" : "SaveFlag", "format" : "guint32", "public-format" : "MbimPhonebookWriteFlag" }, diff -Nru libmbim-1.22.0/data/mbim-service-proxy-control.json libmbim-1.24.8/data/mbim-service-proxy-control.json --- libmbim-1.22.0/data/mbim-service-proxy-control.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-proxy-control.json 2020-07-10 16:12:29.000000000 +0800 @@ -8,6 +8,7 @@ { "name" : "Configuration", "service" : "Proxy Control", "type" : "Command", + "since" : "1.10", "set" : [ { "name" : "DevicePath", "format" : "string" }, { "name" : "Timeout", diff -Nru libmbim-1.22.0/data/mbim-service-qmi.json libmbim-1.24.8/data/mbim-service-qmi.json --- libmbim-1.22.0/data/mbim-service-qmi.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-qmi.json 2020-07-10 16:12:29.000000000 +0800 @@ -1,20 +1,23 @@ [ - // ********************************************************************************* - { "type" : "Service", - "name" : "QMI" }, + // ********************************************************************************* + { "type" : "Service", + "name" : "QMI" }, - // ********************************************************************************* - { "name" : "msg", - "service" : "QMI", - "type" : "Command", - "set" : [ { "name" : "QmiMsg", - "format" : "unsized-byte-array", - "pad-array" : "FALSE" } ], - "response" : [ { "name" : "QMUX", - "format" : "unsized-byte-array", - "pad-array" : "FALSE" } ], - "notification" : [ { "name" : "QMUX", - "format" : "unsized-byte-array", - "pad-array" : "FALSE" } ]} + // ********************************************************************************* + { "name" : "msg", + "service" : "QMI", + "type" : "Command", + "since-ex" : { "set" : "1.14", + "response" : "1.14", + "notification" : "1.18" }, + "set" : [ { "name" : "QmiMsg", + "format" : "unsized-byte-array", + "pad-array" : "FALSE" } ], + "response" : [ { "name" : "QMUX", + "format" : "unsized-byte-array", + "pad-array" : "FALSE" } ], + "notification" : [ { "name" : "QMUX", + "format" : "unsized-byte-array", + "pad-array" : "FALSE" } ]} ] diff -Nru libmbim-1.22.0/data/mbim-service-sms.json libmbim-1.24.8/data/mbim-service-sms.json --- libmbim-1.22.0/data/mbim-service-sms.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-sms.json 2020-07-10 16:12:29.000000000 +0800 @@ -1,181 +1,190 @@ [ - // ********************************************************************************* - { "type" : "Service", - "name" : "SMS" }, - - // ********************************************************************************* - { "name" : "Configuration", - "service" : "SMS", - "type" : "Command", - "set" : [ { "name" : "Format", - "format" : "guint32", - "public-format" : "MbimSmsFormat" }, - { "name" : "ScAddress", - "format" : "string" } ], - "query" : [], - "response" : [ { "name" : "SmsStorageState", - "format" : "guint32", - "public-format" : "MbimSmsStorageState" }, - { "name" : "Format", - "format" : "guint32", - "public-format" : "MbimSmsFormat" }, - { "name" : "MaxMessages", - "format" : "guint32" }, - { "name" : "CdmaShortMessageSize", - "format" : "guint32" }, - { "name" : "ScAddress", - "format" : "string" } ] }, - - // ********************************************************************************* - { "name" : "MbimSmsPduReadRecord", - "type" : "Struct", - "contents" : [ { "name" : "MessageIndex", - "format" : "guint32" }, - { "name" : "MessageStatus", - "format" : "guint32", - "public-format" : "MbimSmsStatus" }, - { "name" : "PduData", - "format" : "ref-byte-array" } ] }, - - { "name" : "MbimSmsCdmaReadRecord", - "type" : "Struct", - "contents" : [ { "name" : "MessageIndex", - "format" : "guint32" }, - { "name" : "MessageStatus", - "format" : "guint32", - "public-format" : "MbimSmsStatus" }, - { "name" : "Address", - "format" : "string" }, - { "name" : "Timestamp", - "format" : "string" }, - { "name" : "Encoding", - "format" : "guint32", - "public-format" : "MbimSmsCdmaEncoding" }, - { "name" : "Language", - "format" : "guint32", - "public-format" : "MbimSmsCdmaLanguage" }, - { "name" : "EncodedMessage", - "format" : "ref-byte-array" }, - { "name" : "EncodedMessageSizeInCharacters", - "format" : "guint32" } ] }, - - { "name" : "Read", - "service" : "SMS", - "type" : "Command", - "query" : [ { "name" : "Format", - "format" : "guint32", - "public-format" : "MbimSmsFormat" }, - { "name" : "Flag", - "format" : "guint32", - "public-format" : "MbimSmsFlag" }, - { "name" : "MessageIndex", - "format" : "guint32" } ], - "response" : [ { "name" : "Format", - "format" : "guint32", - "public-format" : "MbimSmsFormat" }, - { "name" : "MessagesCount", - "format" : "guint32" }, - { "name" : "PduMessages", - "format" : "ref-struct-array" , - "struct-type" : "MbimSmsPduReadRecord", - "array-size-field" : "MessagesCount", - "available-if" : { "field" : "Format", - "operation" : "==", - "value" : "MBIM_SMS_FORMAT_PDU" } }, - { "name" : "CdmaMessages", - "format" : "ref-struct-array" , - "struct-type" : "MbimSmsCdmaReadRecord", - "array-size-field" : "MessagesCount", - "available-if" : { "field" : "Format", - "operation" : "==", - "value" : "MBIM_SMS_FORMAT_CDMA" } } ], - "notification" : [ { "name" : "Format", - "format" : "guint32", - "public-format" : "MbimSmsFormat" }, - { "name" : "MessagesCount", - "format" : "guint32" }, - { "name" : "PduMessages", - "format" : "ref-struct-array" , - "struct-type" : "MbimSmsPduReadRecord", - "array-size-field" : "MessagesCount", - "available-if" : { "field" : "Format", - "operation" : "==", - "value" : "MBIM_SMS_FORMAT_PDU" } }, - { "name" : "CdmaMessages", - "format" : "ref-struct-array" , - "struct-type" : "MbimSmsCdmaReadRecord", - "array-size-field" : "MessagesCount", - "available-if" : { "field" : "Format", - "operation" : "==", - "value" : "MBIM_SMS_FORMAT_CDMA" } } ] }, - - // ********************************************************************************* - { "name" : "MbimSmsPduSendRecord", - "type" : "Struct", - "contents" : [ { "name" : "PduData", - "format" : "ref-byte-array" } ] }, - - { "name" : "MbimSmsCdmaSendRecord", - "type" : "Struct", - "contents" : [ { "name" : "Encoding", - "format" : "guint32", - "public-format" : "MbimSmsCdmaEncoding" }, - { "name" : "Language", - "format" : "guint32", - "public-format" : "MbimSmsCdmaLanguage" }, - { "name" : "Address", - "format" : "string" }, - { "name" : "EncodedMessage", - "format" : "ref-byte-array" }, - { "name" : "EncodedMessageSizeInCharacters", - "format" : "guint32" } ] }, - - { "name" : "Send", - "service" : "SMS", - "type" : "Command", - "set" : [ { "name" : "Format", - "format" : "guint32", - "public-format" : "MbimSmsFormat" }, - { "name" : "PduMessage", - "format" : "struct", - "struct-type" : "MbimSmsPduSendRecord", - "available-if" : { "field" : "Format", - "operation" : "==", - "value" : "MBIM_SMS_FORMAT_PDU" } }, - { "name" : "CdmaMessage", - "format" : "struct", - "struct-type" : "MbimSmsCdmaSendRecord", - "available-if" : { "field" : "Format", - "operation" : "==", - "value" : "MBIM_SMS_FORMAT_CDMA" } } ], - "response" : [ { "name" : "MessageReference", - "format" : "guint32" } ] }, - - // ********************************************************************************* - { "name" : "Delete", - "service" : "SMS", - "type" : "Command", - "set" : [ { "name" : "Flag", - "format" : "guint32", - "public-format" : "MbimSmsFlag" }, - { "name" : "MessageIndex", - "format" : "guint32" } ], - "response" : [] }, - - // ********************************************************************************* - { "name" : "Message Store Status", - "service" : "SMS", - "type" : "Command", - "query" : [], - "response" : [ { "name" : "Flag", - "format" : "guint32", - "public-format" : "MbimSmsStatusFlag" }, - { "name" : "MessageIndex", - "format" : "guint32" } ], - "notification" : [ { "name" : "Flag", - "format" : "guint32", - "public-format" : "MbimSmsStatusFlag" }, - { "name" : "MessageIndex", - "format" : "guint32" } ] } + // ********************************************************************************* + { "type" : "Service", + "name" : "SMS" }, + + // ********************************************************************************* + { "name" : "Configuration", + "service" : "SMS", + "type" : "Command", + "since" : "1.4", + "set" : [ { "name" : "Format", + "format" : "guint32", + "public-format" : "MbimSmsFormat" }, + { "name" : "ScAddress", + "format" : "string" } ], + "query" : [], + "response" : [ { "name" : "SmsStorageState", + "format" : "guint32", + "public-format" : "MbimSmsStorageState" }, + { "name" : "Format", + "format" : "guint32", + "public-format" : "MbimSmsFormat" }, + { "name" : "MaxMessages", + "format" : "guint32" }, + { "name" : "CdmaShortMessageSize", + "format" : "guint32" }, + { "name" : "ScAddress", + "format" : "string" } ] }, + + // ********************************************************************************* + { "name" : "MbimSmsPduReadRecord", + "type" : "Struct", + "since" : "1.4", + "contents" : [ { "name" : "MessageIndex", + "format" : "guint32" }, + { "name" : "MessageStatus", + "format" : "guint32", + "public-format" : "MbimSmsStatus" }, + { "name" : "PduData", + "format" : "ref-byte-array" } ] }, + + { "name" : "MbimSmsCdmaReadRecord", + "type" : "Struct", + "since" : "1.4", + "contents" : [ { "name" : "MessageIndex", + "format" : "guint32" }, + { "name" : "MessageStatus", + "format" : "guint32", + "public-format" : "MbimSmsStatus" }, + { "name" : "Address", + "format" : "string" }, + { "name" : "Timestamp", + "format" : "string" }, + { "name" : "Encoding", + "format" : "guint32", + "public-format" : "MbimSmsCdmaEncoding" }, + { "name" : "Language", + "format" : "guint32", + "public-format" : "MbimSmsCdmaLanguage" }, + { "name" : "EncodedMessage", + "format" : "ref-byte-array" }, + { "name" : "EncodedMessageSizeInCharacters", + "format" : "guint32" } ] }, + + { "name" : "Read", + "service" : "SMS", + "type" : "Command", + "since" : "1.4", + "query" : [ { "name" : "Format", + "format" : "guint32", + "public-format" : "MbimSmsFormat" }, + { "name" : "Flag", + "format" : "guint32", + "public-format" : "MbimSmsFlag" }, + { "name" : "MessageIndex", + "format" : "guint32" } ], + "response" : [ { "name" : "Format", + "format" : "guint32", + "public-format" : "MbimSmsFormat" }, + { "name" : "MessagesCount", + "format" : "guint32" }, + { "name" : "PduMessages", + "format" : "ref-struct-array" , + "struct-type" : "MbimSmsPduReadRecord", + "array-size-field" : "MessagesCount", + "available-if" : { "field" : "Format", + "operation" : "==", + "value" : "MBIM_SMS_FORMAT_PDU" } }, + { "name" : "CdmaMessages", + "format" : "ref-struct-array" , + "struct-type" : "MbimSmsCdmaReadRecord", + "array-size-field" : "MessagesCount", + "available-if" : { "field" : "Format", + "operation" : "==", + "value" : "MBIM_SMS_FORMAT_CDMA" } } ], + "notification" : [ { "name" : "Format", + "format" : "guint32", + "public-format" : "MbimSmsFormat" }, + { "name" : "MessagesCount", + "format" : "guint32" }, + { "name" : "PduMessages", + "format" : "ref-struct-array" , + "struct-type" : "MbimSmsPduReadRecord", + "array-size-field" : "MessagesCount", + "available-if" : { "field" : "Format", + "operation" : "==", + "value" : "MBIM_SMS_FORMAT_PDU" } }, + { "name" : "CdmaMessages", + "format" : "ref-struct-array" , + "struct-type" : "MbimSmsCdmaReadRecord", + "array-size-field" : "MessagesCount", + "available-if" : { "field" : "Format", + "operation" : "==", + "value" : "MBIM_SMS_FORMAT_CDMA" } } ] }, + + // ********************************************************************************* + { "name" : "MbimSmsPduSendRecord", + "type" : "Struct", + "since" : "1.4", + "contents" : [ { "name" : "PduData", + "format" : "ref-byte-array" } ] }, + + { "name" : "MbimSmsCdmaSendRecord", + "type" : "Struct", + "since" : "1.4", + "contents" : [ { "name" : "Encoding", + "format" : "guint32", + "public-format" : "MbimSmsCdmaEncoding" }, + { "name" : "Language", + "format" : "guint32", + "public-format" : "MbimSmsCdmaLanguage" }, + { "name" : "Address", + "format" : "string" }, + { "name" : "EncodedMessage", + "format" : "ref-byte-array" }, + { "name" : "EncodedMessageSizeInCharacters", + "format" : "guint32" } ] }, + + { "name" : "Send", + "service" : "SMS", + "type" : "Command", + "since" : "1.4", + "set" : [ { "name" : "Format", + "format" : "guint32", + "public-format" : "MbimSmsFormat" }, + { "name" : "PduMessage", + "format" : "struct", + "struct-type" : "MbimSmsPduSendRecord", + "available-if" : { "field" : "Format", + "operation" : "==", + "value" : "MBIM_SMS_FORMAT_PDU" } }, + { "name" : "CdmaMessage", + "format" : "struct", + "struct-type" : "MbimSmsCdmaSendRecord", + "available-if" : { "field" : "Format", + "operation" : "==", + "value" : "MBIM_SMS_FORMAT_CDMA" } } ], + "response" : [ { "name" : "MessageReference", + "format" : "guint32" } ] }, + + // ********************************************************************************* + { "name" : "Delete", + "service" : "SMS", + "type" : "Command", + "since" : "1.4", + "set" : [ { "name" : "Flag", + "format" : "guint32", + "public-format" : "MbimSmsFlag" }, + { "name" : "MessageIndex", + "format" : "guint32" } ], + "response" : [] }, + + // ********************************************************************************* + { "name" : "Message Store Status", + "service" : "SMS", + "type" : "Command", + "since" : "1.4", + "query" : [], + "response" : [ { "name" : "Flag", + "format" : "guint32", + "public-format" : "MbimSmsStatusFlag" }, + { "name" : "MessageIndex", + "format" : "guint32" } ], + "notification" : [ { "name" : "Flag", + "format" : "guint32", + "public-format" : "MbimSmsStatusFlag" }, + { "name" : "MessageIndex", + "format" : "guint32" } ] } ] diff -Nru libmbim-1.22.0/data/mbim-service-stk.json libmbim-1.24.8/data/mbim-service-stk.json --- libmbim-1.22.0/data/mbim-service-stk.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-stk.json 2020-07-10 16:12:29.000000000 +0800 @@ -8,11 +8,11 @@ { "name" : "Pac", "service" : "STK", "type" : "Command", + "since" : "1.4", "query" : [], "set" : [ { "name" : "PacHostControl", "format" : "byte-array", "array-size" : "32" } ], - "response" : [ { "name" : "PacSupport", "format" : "byte-array", "array-size" : "256" } ], @@ -26,6 +26,7 @@ { "name" : "Terminal Response", "service" : "STK", "type" : "Command", + "since" : "1.4", "set" : [ { "name" : "Response", "format" : "ref-byte-array-no-offset" } ], "response" : [ { "name" : "ResultData", @@ -37,6 +38,7 @@ { "name" : "Envelope", "service" : "STK", "type" : "Command", + "since" : "1.4", "query" : [], "set" : [ { "name" : "Data", "format" : "unsized-byte-array" } ], diff -Nru libmbim-1.22.0/data/mbim-service-ussd.json libmbim-1.24.8/data/mbim-service-ussd.json --- libmbim-1.22.0/data/mbim-service-ussd.json 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/data/mbim-service-ussd.json 2020-07-10 16:12:29.000000000 +0800 @@ -1,38 +1,39 @@ [ - // ********************************************************************************* - { "type" : "Service", - "name" : "USSD" }, + // ********************************************************************************* + { "type" : "Service", + "name" : "USSD" }, - // ********************************************************************************* - { "name" : "", - "service" : "USSD", - "type" : "Command", - "set" : [ { "name" : "Action", - "format" : "guint32", - "public-format" : "MbimUssdAction" }, - { "name" : "DataCodingScheme", - "format" : "guint32" }, - { "name" : "Payload", - "format" : "ref-byte-array" } ], - "response" : [ { "name" : "Response", - "format" : "guint32", - "public-format" : "MbimUssdResponse" }, - { "name" : "SessionState", - "format" : "guint32", - "public-format" : "MbimUssdSessionState" }, - { "name" : "DataCodingScheme", - "format" : "guint32" }, - { "name" : "Payload", - "format" : "ref-byte-array" } ], - "notification" : [ { "name" : "Response", - "format" : "guint32", - "public-format" : "MbimUssdResponse" }, - { "name" : "SessionState", - "format" : "guint32", - "public-format" : "MbimUssdSessionState" }, - { "name" : "DataCodingScheme", - "format" : "guint32" }, - { "name" : "Payload", - "format" : "ref-byte-array" } ] } + // ********************************************************************************* + { "name" : "", + "service" : "USSD", + "type" : "Command", + "since" : "1.4", + "set" : [ { "name" : "Action", + "format" : "guint32", + "public-format" : "MbimUssdAction" }, + { "name" : "DataCodingScheme", + "format" : "guint32" }, + { "name" : "Payload", + "format" : "ref-byte-array" } ], + "response" : [ { "name" : "Response", + "format" : "guint32", + "public-format" : "MbimUssdResponse" }, + { "name" : "SessionState", + "format" : "guint32", + "public-format" : "MbimUssdSessionState" }, + { "name" : "DataCodingScheme", + "format" : "guint32" }, + { "name" : "Payload", + "format" : "ref-byte-array" } ], + "notification" : [ { "name" : "Response", + "format" : "guint32", + "public-format" : "MbimUssdResponse" }, + { "name" : "SessionState", + "format" : "guint32", + "public-format" : "MbimUssdSessionState" }, + { "name" : "DataCodingScheme", + "format" : "guint32" }, + { "name" : "Payload", + "format" : "ref-byte-array" } ] } ] diff -Nru libmbim-1.22.0/data/pkg-config/Makefile.in libmbim-1.24.8/data/pkg-config/Makefile.in --- libmbim-1.22.0/data/pkg-config/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/data/pkg-config/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -91,9 +91,10 @@ subdir = data/pkg-config ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -163,7 +164,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -177,7 +177,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -194,6 +193,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -303,6 +310,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/debian/changelog libmbim-1.24.8/debian/changelog --- libmbim-1.22.0/debian/changelog 2020-02-28 03:12:45.000000000 +0800 +++ libmbim-1.24.8/debian/changelog 2021-07-11 15:41:50.000000000 +0800 @@ -1,3 +1,82 @@ +libmbim (1.24.8-1~20.04.02) focal; urgency=medium + + * Backport to focal. (LP: #1934286) + * Add debian/libmbim-proxy.postinst: add a symlink to mbim-proxy for old release + * Add debian/libmbim-proxy.postrm: delete the symlink to mbim-proxy + + -- Jerry Lee Sun, 11 Jul 2021 15:41:50 +0800 + +libmbim (1.24.8-1) experimental; urgency=medium + + * New upstream version + + -- Sebastien Bacher Tue, 22 Jun 2021 12:18:09 +0200 + +libmbim (1.24.6-0.1) unstable; urgency=medium + + * Non-maintainer upload. + * New upstream version (bug fixes). + * Add upstream signing key. + + -- Martin Fri, 22 Jan 2021 16:38:20 +0000 + +libmbim (1.24.4-0.1) unstable; urgency=medium + + * Non-maintainer upload. + * New upstream version (bug fixes). + * debian/libmbim-glib4.symbols: Updated symbols for new release. + + -- Martin Sat, 03 Oct 2020 22:50:39 +0000 + +libmbim (1.24.2-0.1) unstable; urgency=medium + + * Non-maintainer upload. + * New upstream version (bug fixes). + * Fix reproducibility by removing superfluous Makefiles (Closes: #963603). + + -- Martin Wed, 15 Jul 2020 07:24:31 +0000 + +libmbim (1.24.0-0.1) unstable; urgency=medium + + * Non-maintainer upload. + * New upstream version. + + -- Martin Sun, 21 Jun 2020 10:38:28 +0000 + +libmbim (1.23.900-0.1) experimental; urgency=medium + + * Non-maintainer upload. + * Add package for GObject introspection (new upstream feature). + + -- Martin Mon, 08 Jun 2020 17:33:59 +0000 + +libmbim (1.22.0-2.2) unstable; urgency=medium + + * Non-maintainer upload. + * Bump debhelper to 12, no further changes + * Bump Standards-Version to 4.5.0 (no further changes) + * Move mbim-proxy to /usr/libexec (Closes: #954145) + * Do not build-depend on libgudev-dev package on non-linux architectures + * Add help2man to the build-dependencies to ensure that the manpages are + properly built (Closes: #952124) + * Move gtk-doc-tools and libglib2.0-doc to the B-D-I instead of the + build-dependencies, mark the with + * Add Build-Depends-Package to the symbols file to please lintian + * debian/control: Remove a duplication section, to please lintian + * Add a symlink for the documentation in /usr/share/doc and adjust the + docbase file. This fixes the doc-base-file-references-wrong-path lintian + warning + + -- Laurent Bigonville Thu, 30 Apr 2020 12:48:11 +0200 + +libmbim (1.22.0-2.1) unstable; urgency=medium + + * Non-maintainer upload. + * Update Vcs-* to salsa. + * Use Rules-Requires-Root: no + + -- Martin Thu, 30 Apr 2020 00:18:09 +0000 + libmbim (1.22.0-2) unstable; urgency=medium * Really add the build-depends on autoconf-archive diff -Nru libmbim-1.22.0/debian/compat libmbim-1.24.8/debian/compat --- libmbim-1.22.0/debian/compat 2020-02-27 17:31:57.000000000 +0800 +++ libmbim-1.24.8/debian/compat 1970-01-01 08:00:00.000000000 +0800 @@ -1 +0,0 @@ -10 diff -Nru libmbim-1.22.0/debian/control libmbim-1.24.8/debian/control --- libmbim-1.22.0/debian/control 2020-02-28 00:46:31.000000000 +0800 +++ libmbim-1.24.8/debian/control 2021-06-22 18:18:09.000000000 +0800 @@ -2,20 +2,23 @@ Section: libs Priority: optional Maintainer: Mathieu Trudel-Lapierre -Build-Depends: debhelper (>= 10.3), +Build-Depends: debhelper-compat (= 12), pkg-config, autoconf-archive, + gobject-introspection, + help2man, + libgirepository1.0-dev, libglib2.0-dev (>= 2.36), - libgudev-1.0-dev (>= 147), - gtk-doc-tools, - libglib2.0-doc -Standards-Version: 4.1.0 -Vcs-Git: https://anonscm.debian.org/git/collab-maint/libmbim.git -Vcs-Browser: https://anonscm.debian.org/git/collab-maint/libmbim.git + libgudev-1.0-dev (>= 147)[linux-any], +Build-Depends-Indep: gtk-doc-tools , + libglib2.0-doc +Standards-Version: 4.5.0 +Rules-Requires-Root: no +Vcs-Git: https://salsa.debian.org/debian/libmbim.git +Vcs-Browser: https://salsa.debian.org/debian/libmbim Homepage: https://www.freedesktop.org/wiki/Software/libmbim/ Package: libmbim-glib4 -Section: libs Architecture: any Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} @@ -28,7 +31,10 @@ Section: libdevel Architecture: any Multi-Arch: same -Depends: libmbim-glib4 (= ${binary:Version}), ${misc:Depends}, libglib2.0-dev +Depends: libmbim-glib4 (= ${binary:Version}), + ${misc:Depends}, + libglib2.0-dev, + gir1.2-mbim-1.0 (= ${binary:Version}), Suggests: libmbim-glib-doc Description: Header files for adding MBIM support to applications that use glib libmbim is a glib-based library for talking to WWAN modems and devices @@ -44,6 +50,7 @@ Multi-Arch: foreign Depends: ${misc:Depends} Suggests: devhelp +Build-Profiles: Description: API documentation for the MBIM protocol library libmbim is a glib-based library for talking to WWAN modems and devices which speak the Mobile Interface Broadband Model (MBIM) protocol. @@ -72,3 +79,16 @@ . This package contains the binary mbim-proxy used by libmbim to allow multiple clients to use the same MBIM port simultaneously. + +Package: gir1.2-mbim-1.0 +Section: introspection +Architecture: linux-any +Multi-Arch: same +Depends: ${gir:Depends}, + ${shlibs:Depends}, + ${misc:Depends} +Description: GObject introspection data for libmbim-glib + libmbim is a glib-based library for talking to WWAN modems and devices + which speak the Mobile Interface Broadband Model (MBIM) protocol. + . + This package contains introspection data for the libmbim-glib library. diff -Nru libmbim-1.22.0/debian/gbp.conf libmbim-1.24.8/debian/gbp.conf --- libmbim-1.22.0/debian/gbp.conf 2020-02-27 17:31:57.000000000 +0800 +++ libmbim-1.24.8/debian/gbp.conf 2021-06-22 18:18:09.000000000 +0800 @@ -1,3 +1,3 @@ [DEFAULT] pristine-tar = True -debian-branch = master +debian-branch = debian/master diff -Nru libmbim-1.22.0/debian/gir1.2-mbim-1.0.install libmbim-1.24.8/debian/gir1.2-mbim-1.0.install --- libmbim-1.22.0/debian/gir1.2-mbim-1.0.install 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/debian/gir1.2-mbim-1.0.install 2021-06-22 18:18:09.000000000 +0800 @@ -0,0 +1 @@ +usr/lib/*/girepository-1.0/ diff -Nru libmbim-1.22.0/debian/libmbim-glib-dev.install libmbim-1.24.8/debian/libmbim-glib-dev.install --- libmbim-1.22.0/debian/libmbim-glib-dev.install 2020-02-27 17:31:57.000000000 +0800 +++ libmbim-1.24.8/debian/libmbim-glib-dev.install 2021-06-22 18:18:09.000000000 +0800 @@ -2,3 +2,4 @@ usr/lib/*/pkgconfig/* usr/lib/*/lib*.a usr/lib/*/*.so +usr/share/gir-1.0/ diff -Nru libmbim-1.22.0/debian/libmbim-glib-doc.doc-base libmbim-1.24.8/debian/libmbim-glib-doc.doc-base --- libmbim-1.22.0/debian/libmbim-glib-doc.doc-base 2020-02-27 17:31:57.000000000 +0800 +++ libmbim-1.24.8/debian/libmbim-glib-doc.doc-base 2021-06-22 18:18:09.000000000 +0800 @@ -5,5 +5,5 @@ Section: Programming/C Format: HTML -Index: /usr/share/gtk-doc/html/libmbim-glib/index.html -Files: /usr/share/gtk-doc/html/libmbim-glib/*.html +Index: /usr/share/doc/libmbim-glib-doc/html/index.html +Files: /usr/share/doc/libmbim-glib-doc/html/*.html diff -Nru libmbim-1.22.0/debian/libmbim-glib-doc.examples libmbim-1.24.8/debian/libmbim-glib-doc.examples --- libmbim-1.22.0/debian/libmbim-glib-doc.examples 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/debian/libmbim-glib-doc.examples 2021-06-22 18:18:09.000000000 +0800 @@ -0,0 +1 @@ +examples/* diff -Nru libmbim-1.22.0/debian/libmbim-glib-doc.links libmbim-1.24.8/debian/libmbim-glib-doc.links --- libmbim-1.22.0/debian/libmbim-glib-doc.links 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/debian/libmbim-glib-doc.links 2021-06-22 18:18:09.000000000 +0800 @@ -0,0 +1 @@ +usr/share/gtk-doc/html/libmbim-glib usr/share/doc/libmbim-glib-doc/html diff -Nru libmbim-1.22.0/debian/libmbim-glib4.symbols libmbim-1.24.8/debian/libmbim-glib4.symbols --- libmbim-1.22.0/debian/libmbim-glib4.symbols 2020-02-27 17:31:57.000000000 +0800 +++ libmbim-1.24.8/debian/libmbim-glib4.symbols 2021-06-22 18:18:09.000000000 +0800 @@ -1,4 +1,5 @@ libmbim-glib.so.4 libmbim-glib4 #MINVER#, libmbim-proxy +* Build-Depends-Package: libmbim-glib-dev mbim_activation_command_get_string@Base 1.10.0 mbim_activation_command_get_type@Base 1.10.0 mbim_activation_state_get_string@Base 1.10.0 @@ -69,6 +70,7 @@ mbim_device_get_next_transaction_id@Base 1.10.0 mbim_device_get_path@Base 1.10.0 mbim_device_get_path_display@Base 1.10.0 + mbim_device_get_transaction_id@Base 1.24.4 mbim_device_get_type@Base 1.10.0 mbim_device_is_open@Base 1.10.0 mbim_device_new@Base 1.10.0 diff -Nru libmbim-1.22.0/debian/libmbim-proxy.install libmbim-1.24.8/debian/libmbim-proxy.install --- libmbim-1.22.0/debian/libmbim-proxy.install 2020-02-27 17:31:57.000000000 +0800 +++ libmbim-1.24.8/debian/libmbim-proxy.install 2021-06-22 18:18:09.000000000 +0800 @@ -1 +1 @@ -usr/lib/libmbim/ +usr/libexec/ diff -Nru libmbim-1.22.0/debian/libmbim-proxy.postinst libmbim-1.24.8/debian/libmbim-proxy.postinst --- libmbim-1.22.0/debian/libmbim-proxy.postinst 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/debian/libmbim-proxy.postinst 2021-07-11 15:41:50.000000000 +0800 @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +# create the link to keep the path in the last version +if [ -f /usr/libexec/mbim-proxy ]; then + if [ -f /usr/lib/libmbim/mbim-proxy ]; then + rm /usr/lib/libmbim/mbim-proxy + fi + install -d /usr/lib/libmbim + ln -s /usr/libexec/mbim-proxy /usr/lib/libmbim/mbim-proxy +fi + +#DEBHELPER# diff -Nru libmbim-1.22.0/debian/libmbim-proxy.postrm libmbim-1.24.8/debian/libmbim-proxy.postrm --- libmbim-1.22.0/debian/libmbim-proxy.postrm 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/debian/libmbim-proxy.postrm 2021-07-11 15:41:50.000000000 +0800 @@ -0,0 +1,11 @@ +#!/bin/sh + +set -e + +# remove files created in postinst +if [ -L /usr/lib/libmbim/mbim-proxy ]; then + rm /usr/lib/libmbim/mbim-proxy + find /usr/lib/libmbim -maxdepth 0 -empty -exec rmdir {} \; +fi + +#DEBHELPER# diff -Nru libmbim-1.22.0/debian/rules libmbim-1.24.8/debian/rules --- libmbim-1.22.0/debian/rules 2020-02-27 17:31:57.000000000 +0800 +++ libmbim-1.24.8/debian/rules 2021-06-22 18:18:09.000000000 +0800 @@ -2,7 +2,7 @@ export DPKG_GENSYMBOLS_CHECK_LEVEL=4 %: - dh $@ + dh $@ --with gir ifeq ($(filter libmbim-glib-doc,$(shell dh_listpackages)),) configure_flags += --disable-gtk-doc --disable-gtk-doc-html @@ -10,14 +10,20 @@ configure_flags += --enable-gtk-doc --enable-gtk-doc-html endif +ifneq ($(filter linux,$(DEB_HOST_ARCH_OS)),) +configure_flags += --with-udev +else +configure_flags += --without-udev +endif + override_dh_auto_configure: - dh_auto_configure -- \ - $(configure_flags) \ - --with-udev \ - --libexecdir=/usr/lib/libmbim + dh_auto_configure -- --enable-introspection=yes $(configure_flags) override_dh_missing: dh_missing -X.la --fail-missing override_dh_strip: dh_strip --dbgsym-migration='libmbim-glib4-dbg (<< 1.12.4-1~)' + +override_dh_installexamples: + dh_installexamples -XMakefile diff -Nru libmbim-1.22.0/debian/upstream/signing-key.asc libmbim-1.24.8/debian/upstream/signing-key.asc --- libmbim-1.22.0/debian/upstream/signing-key.asc 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/debian/upstream/signing-key.asc 2021-06-22 18:18:09.000000000 +0800 @@ -0,0 +1,40 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQGiBElVP3gRBADLxXlEnz7zt/hlWuqMIY7EmH1jkvyqFNkG3O7KrN09Kq7X6ovb +Kg14Ou4E6hdaTdvnaDinOU33e0SD1IDIQUjindd0iSEi7K61qD9oQH1LVkNK5Kww +DOfxuEi3K3PkESrHbZ6y/5WjNo5FDRgByJ/Eyh9RMWEMnLp0Zo+HZ7tZtwCgho2F +VFUlAWk91Owg/idPC7lf9gcEALzx2VBFE86YAv4wbCjuuIdqjl9ceUvIOLZWTlrY +c4KFdBEF6NZ0BPP1Ck0AjKoJyZk3NcCGfNwqbtxxVyaMdcI/PDSuSWO5aC/ZuTUv +Sr8cjh4i7Sqa5YXQOwOXHXImvHhFwo2lW2sdIaAeDwJxIfaDUyFuVKvY/sK+Ajxr +PQ1QA/44JVKaxqLYL3rf43EwE0cnSbVThAAa/F5pKXcSYwAG0WxSERzEWvnFk1ea +y766n7yIrylwoaHeTirXxyRTXvY0VTpKEPkROuKKv7nLC6SEvyH8Z8W7a999Ctw0 +gCjtB6dEuFYRdS2fSZ88cQeEjBBLiJCDpG9Fvwb4g+y7gl5+h7QtQWxla3NhbmRl +ciBNb3JnYWRvIDxhbGVrc2FuZGVyQGFsZWtzYW5kZXIuZXM+iGAEExECACAFAklV +P3gCGyMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRA8rVM5iXP/+vWXAJ4hViyk +is1lA7YBUISNEor/erPEkgCfWO5AuVhh5nZNM5GUwCtwOovSui65BA0ESVU/eBAQ +ALmjzgIjhR/Ppv0aQIxKtE9HiGWMoDF1SSpz99DEYnTwNgXBM+vMTxCGyoMl1nFQ +mY+rIoMBTAE8r50eDP6zBYNgrNVx0yl0cCWX4n8WbAxF2iQ2oIetzugaQlU20TwN +ccqF4w0QdkDCLedlsxKhiXyx57LIzWGCTcOVbIZB9C2gFqWUSyM2zT6LgQ6NKjWk +VZVJCUvwZGrh4VPIG8TVDC/oXujIazdMTwfjyPHLVTNFQSuhRKfWop/sKkm0JrC2 +4Keo7Eg9f9hdIysqHv3PCYa3oX15agUALldmVCdiDmLd+vuN1Ivpo78KZ/nh9t2/ +DN24HFUi6yArPzNwJqg4WNW5ef0q7/np+vIY1sr382c9/2GF2Ir+d0TkTVz+kKaj +58qcKxMxVgytR2jVr7Z/elLSxm+Oo0piFN9ExJyGT/x57899tEavtJk/f/lV8VTW +MrqgbooP1HinXbOKOVOPwASUGJ89FILNxriFGt9o9GoJirr4cIMcb6WVirwgJe7+ +UUYg+51OC8xkQS63QHircaKL1U1d5iXy2P6Vm1zp2p2ZGvybHg5Ucy3HXa82FrE7 +TA+AfyljMoMpUdHWPU9fqW+NhQbfwzDnYJZzi1V/XbTHcAUHD66+QDihwKsgZz4R +gL+Iv6lzdXz2Is/F9WvS2WR+K5teMXq4cCOATYzZO9qPAAMFEACMNPM1M2nTS93K +eEwmr2eKhR1PRGOyRdlvicaHZiqCYX8km7NhSD3SEKdX553HGN/8Te5QQc3XagPi +4dDX7uPZjg5ueZwg0aDOtnLzlopCgfYZOLyn1LdPFKZ+bEkpbtLI3WbPRvQXjPLI ++Cuq7CWCUJSY9qruks21qu3Yhjay8wYZIGqYYd1lh+Aiqy7RUeNDfdPjMZD4et4n +unKcBW4S5uQ2QyMHYNEbY4BpR4Tc88Sn1/PshNaRKqTeRi/FEgmnu8TwHkMQhVM2 +wxrrFKC8V1XUlIHOKY0ictodwd3ysUcFwXTqwqvgxV+UlMFiRWcT7XY1c+LuexFq +jF9IxbY5oMMP8GgS59yR5bk21ikk9swIfbSx70JXWL99H9vNPgh99cUS110xJKg9 +NShEjWdCdGj3TdsUJ2NEjJYjKO6VTnkjLGdZxvm5p9lFLMDbWdvwllDAT41txfF5 +0qhTwHNSpHMBO545Jeot5OUCk8hq9gnAISxubRT4zClr3IQqZVhkdr3+3bkywLTd +TetzCP/wqy6RpEtSOc5bYQQ4P44mlMfASqI1Bi09hlM64F/je/yhjPqVHBcSy00v +H+ctRQNxLGBQmJtRn3iqqfM0qa02k2PzDMQHbvgHZcjNTk9VPLVHhRAD36VHNMfz +iZSvJJW5xiQg9DqbQ9TaO3uBTTyJQ4hJBBgRAgAJBQJJVT94AhsMAAoJEDytUzmJ +c//6dfsAoIEOqluSj6fzW8+q9jPLT6719QaeAJ9MlO1jXSCeQ7z95/Lun1+jWn2j +sg== +=J+xH +-----END PGP PUBLIC KEY BLOCK----- diff -Nru libmbim-1.22.0/debian/watch libmbim-1.24.8/debian/watch --- libmbim-1.22.0/debian/watch 2020-02-27 17:31:57.000000000 +0800 +++ libmbim-1.24.8/debian/watch 2021-06-22 18:18:09.000000000 +0800 @@ -1,2 +1,3 @@ version=3 +opts=pgpmode=auto \ https://www.freedesktop.org/software/libmbim/libmbim-(.*)\.tar\.xz diff -Nru libmbim-1.22.0/depcomp libmbim-1.24.8/depcomp --- libmbim-1.22.0/depcomp 2020-01-15 17:57:37.000000000 +0800 +++ libmbim-1.24.8/depcomp 2021-06-02 22:06:04.000000000 +0800 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2020 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru libmbim-1.22.0/docs/Makefile.in libmbim-1.24.8/docs/Makefile.in --- libmbim-1.22.0/docs/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/docs/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -90,9 +90,10 @@ subdir = docs ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -193,7 +194,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -207,7 +207,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -224,6 +223,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -333,6 +340,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/docs/man/Makefile.in libmbim-1.24.8/docs/man/Makefile.in --- libmbim-1.22.0/docs/man/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/docs/man/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -90,9 +90,10 @@ subdir = docs/man ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -164,7 +165,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -178,7 +178,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -195,6 +194,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -304,6 +311,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/docs/man/mbim-network.1 libmbim-1.24.8/docs/man/mbim-network.1 --- libmbim-1.22.0/docs/man/mbim-network.1 2020-01-15 17:58:01.000000000 +0800 +++ libmbim-1.24.8/docs/man/mbim-network.1 2021-06-02 22:06:33.000000000 +0800 @@ -1,5 +1,5 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.11. -.TH MBIM-NETWORK "1" "January 2020" "mbim-network 1.21.0" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3. +.TH MBIM-NETWORK "1" "June 2021" "mbim-network 1.24.8" "User Commands" .SH NAME mbim-network \- Simple network management of MBIM devices .SH SYNOPSIS diff -Nru libmbim-1.22.0/docs/man/mbimcli.1 libmbim-1.24.8/docs/man/mbimcli.1 --- libmbim-1.22.0/docs/man/mbimcli.1 2020-01-15 17:58:01.000000000 +0800 +++ libmbim-1.24.8/docs/man/mbimcli.1 2021-06-02 22:06:33.000000000 +0800 @@ -1,5 +1,5 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.11. -.TH MBIMCLI "1" "January 2020" "mbimcli " "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3. +.TH MBIMCLI "1" "June 2021" "mbimcli 1.24.8" "User Commands" .SH NAME mbimcli \- Control MBIM devices .SH DESCRIPTION @@ -37,8 +37,7 @@ .TP \fB\-\-help\-ms\-basic\-connect\-extensions\fR Show Microsoft Basic Connect Extensions Service options -.PP -Basic Connect options +.SS "Basic Connect options:" .TP \fB\-\-query\-device\-caps\fR Query device capabilities @@ -123,8 +122,7 @@ .TP \fB\-\-query\-provisioned\-contexts\fR Query provisioned contexts -.PP -Phonebook options +.SS "Phonebook options:" .TP \fB\-\-phonebook\-query\-configuration\fR Query the phonebook configuration @@ -143,39 +141,33 @@ .TP \fB\-\-phonebook\-delete\-all\fR Delete all phonebook entries -.PP -Device Service Stream options +.SS "Device Service Stream options:" .TP \fB\-\-dss\-connect\fR=\fI\,[\/\fR(UUID),(Session ID)] Connect DSS session .TP \fB\-\-dss\-disconnect\fR=\fI\,[\/\fR(UUID),(Session ID)] Disconnect DSS session -.PP -Microsoft Firmware ID options +.SS "Microsoft Firmware ID options:" .TP \fB\-\-ms\-query\-firmware\-id\fR Query firmware ID -.PP -Microsoft Host Shutdown options +.SS "Microsoft Host Shutdown options:" .TP \fB\-\-ms\-notify\-host\-shutdown\fR Notify that host is shutting down -.PP -AT&T Device Service options +.SS "AT&T Device Service options:" .TP \fB\-\-atds\-query\-signal\fR Query signal info .TP \fB\-\-atds\-query\-location\fR Query cell location -.PP -Intel Firmware Update Service options +.SS "Intel Firmware Update Service options:" .TP \fB\-\-intel\-modem\-reboot\fR Reboot modem -.PP -Microsoft Basic Connect Extensions options +.SS "Microsoft Basic Connect Extensions options:" .TP \fB\-\-ms\-query\-pco\fR=\fI\,[SessionID]\/\fR Query PCO value (SessionID is optional, defaults to 0) @@ -210,10 +202,10 @@ .TP \fB\-V\fR, \fB\-\-version\fR Print version -.PP -mbimcli 1.21.0 +.SH COPYRIGHT Copyright \(co 2013\-2020 Aleksander Morgado License GPLv2+: GNU GPL version 2 or later +.br This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. .SH "SEE ALSO" diff -Nru libmbim-1.22.0/docs/reference/Makefile.in libmbim-1.24.8/docs/reference/Makefile.in --- libmbim-1.22.0/docs/reference/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/docs/reference/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -90,9 +90,10 @@ subdir = docs/reference ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -193,7 +194,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -207,7 +207,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -224,6 +223,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -333,6 +340,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/Makefile.am libmbim-1.24.8/docs/reference/libmbim-glib/Makefile.am --- libmbim-1.22.0/docs/reference/libmbim-glib/Makefile.am 2019-03-27 21:26:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/Makefile.am 2021-06-02 19:05:37.000000000 +0800 @@ -98,6 +98,7 @@ $(DOC_MODULE).interfaces \ $(DOC_MODULE).prerequisites \ $(DOC_MODULE).signals \ + $(DOC_MODULE).actions \ $(DOC_MODULE).types \ $(DOC_MODULE)-sections.txt \ $(DOC_MODULE)-sections.mstamp \ diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/Makefile.in libmbim-1.24.8/docs/reference/libmbim-glib/Makefile.in --- libmbim-1.22.0/docs/reference/libmbim-glib/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -96,9 +96,10 @@ subdir = docs/reference/libmbim-glib ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -140,7 +141,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -154,7 +154,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -171,6 +170,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -280,6 +287,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -408,9 +416,10 @@ $(DOC_MODULE)-overrides.txt $(DOC_MODULE)-unused.txt \ $(DOC_MODULE).args $(DOC_MODULE).hierarchy \ $(DOC_MODULE).interfaces $(DOC_MODULE).prerequisites \ - $(DOC_MODULE).signals $(DOC_MODULE).types \ - $(DOC_MODULE)-sections.txt $(DOC_MODULE)-sections.mstamp \ - *.stamp -rf xml html tmpl $(NULL) + $(DOC_MODULE).signals $(DOC_MODULE).actions \ + $(DOC_MODULE).types $(DOC_MODULE)-sections.txt \ + $(DOC_MODULE)-sections.mstamp *.stamp -rf xml html tmpl \ + $(NULL) @GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP = @GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp @GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP = @@ -539,7 +548,8 @@ installdirs: install: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) install-am -install-exec: install-exec-am +install-exec: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data: install-data-am uninstall: uninstall-am @@ -637,7 +647,7 @@ uninstall-am: uninstall-local -.MAKE: all check install install-am install-strip +.MAKE: all check install install-am install-exec install-strip .PHONY: all all-am all-local check check-am clean clean-generic \ clean-libtool clean-local cscopelist-am ctags-am dist-hook \ diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/MbimDevice.html libmbim-1.24.8/docs/reference/libmbim-glib/html/MbimDevice.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/MbimDevice.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/MbimDevice.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -158,6 +158,14 @@ guint32 +mbim_device_get_transaction_id () + + + + +guint32 + + mbim_device_get_next_transaction_id () @@ -342,6 +350,7 @@ +

Since: 1.0


@@ -374,9 +383,11 @@

Returns

-

A newly created MbimDevice, or NULL if error -is set.

+

a newly created MbimDevice, or NULL if error +is set.

+

[transfer full]

+

Since: 1.0


@@ -384,6 +395,7 @@
GFile *
 mbim_device_get_file (MbimDevice *self);

Get the GFile associated with this MbimDevice.

+

[skip]

Parameters

@@ -401,8 +413,10 @@

Returns

-

a GFile that must be freed with g_object_unref().

+

a GFile that must be freed with g_object_unref().

+

[transfer full]

+

Since: 1.0


@@ -411,6 +425,7 @@ mbim_device_peek_file (MbimDevice *self);

Get the GFile associated with this MbimDevice, without increasing the reference count on the returned object.

+

[skip]

Parameters

@@ -428,9 +443,11 @@

Returns

-

a GFile. Do not free the returned object, it is owned by self -.

+

a GFile. Do not free the returned object, it is owned by self +.

+

[transfer none]

+

Since: 1.0


@@ -457,6 +474,7 @@

Returns

the system path of the device.

+

Since: 1.0


@@ -483,6 +501,7 @@

Returns

UTF-8 encoded system path of the device.

+

Since: 1.0


@@ -510,6 +529,7 @@

TRUE if self is open, FALSE otherwise.

+

Since: 1.0


@@ -561,6 +581,7 @@
+

Since: 1.0


@@ -602,6 +623,7 @@

TRUE if successful, FALSE if error is set.

+

Since: 1.0


@@ -661,6 +683,7 @@
+

Since: 1.10


@@ -702,6 +725,7 @@

TRUE if successful, FALSE if error is set.

+

Since: 1.10


@@ -753,6 +777,7 @@
+

Since: 1.0


@@ -794,6 +819,7 @@

TRUE if successful, FALSE if error is set.

+

Since: 1.0


@@ -830,6 +856,35 @@ if no error happens, otherwise FALSE and error is set.

+

Since: 1.0

+ +
+
+

mbim_device_get_transaction_id ()

+
guint32
+mbim_device_get_transaction_id (MbimDevice *self);
+

Acquire the transaction ID of this MbimDevice without +incrementing the internal transaction ID.

+
+

Parameters

+
+++++ + + + + + +

self

A MbimDevice.

 
+
+
+

Returns

+

the current transaction ID.

+
+

Since: 1.24.4


@@ -857,6 +912,7 @@

Returns

the next transaction ID.

+

Since: 1.0


@@ -914,6 +970,7 @@
+

Since: 1.0


@@ -955,44 +1012,57 @@

a MbimMessage response, or NULL if error is set. The returned value should be freed with mbim_message_unref().

+

Since: 1.0

Types and Values

MBIM_DEVICE_FILE

-
#define MBIM_DEVICE_FILE           "device-file"
+
#define MBIM_DEVICE_FILE "device-file"
 
+

Symbol defining the “device-file” property.

+

Since: 1.0


MBIM_DEVICE_IN_SESSION

-
#define MBIM_DEVICE_IN_SESSION     "device-in-session"
+
#define MBIM_DEVICE_IN_SESSION "device-in-session"
 
+

Symbol defining the “device-in-session” property.

+

Since: 1.4


MBIM_DEVICE_TRANSACTION_ID

#define MBIM_DEVICE_TRANSACTION_ID "device-transaction-id"
 
+

Symbol defining the “device-transaction-id” property.

+

Since: 1.2


MBIM_DEVICE_SIGNAL_REMOVED

-
#define MBIM_DEVICE_SIGNAL_REMOVED         "device-removed"
+
#define MBIM_DEVICE_SIGNAL_REMOVED "device-removed"
 
+

Symbol defining the “device-removed” signal.

+

Since: 1.10


MBIM_DEVICE_SIGNAL_INDICATE_STATUS

#define MBIM_DEVICE_SIGNAL_INDICATE_STATUS "device-indicate-status"
 
+

Symbol defining the “device-indicate-status” signal.

+

Since: 1.0


MBIM_DEVICE_SIGNAL_ERROR

-
#define MBIM_DEVICE_SIGNAL_ERROR           "device-error"
+
#define MBIM_DEVICE_SIGNAL_ERROR "device-error"
 
+

Symbol defining the “device-error” signal.

+

Since: 1.0


@@ -1000,6 +1070,7 @@
struct MbimDevice;

The MbimDevice structure contains private data and should only be accessed using the provided API.

+

Since: 1.0


@@ -1031,6 +1102,7 @@
+

Since: 1.10

@@ -1041,6 +1113,7 @@

File to the underlying MBIM device.

Owner: MbimDevice

Flags: Read / Write / Construct Only

+

Since: 1.0


@@ -1060,6 +1133,7 @@

Flags: Read / Write

Allowed values: >= 1

Default value: 1

+

Since: 1.2

@@ -1099,6 +1173,7 @@

Flags: Run Last

+

Since: 1.0


@@ -1136,6 +1211,7 @@

Flags: Run Last

+

Since: 1.0


@@ -1172,10 +1248,11 @@

Flags: Run Last

+

Since: 1.10

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/MbimMessage.html libmbim-1.24.8/docs/reference/libmbim-glib/html/MbimMessage.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/MbimMessage.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/MbimMessage.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -440,8 +440,9 @@

Returns

a newly created MbimMessage, which should be freed with mbim_message_unref().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -468,8 +469,9 @@

Returns

a newly created MbimMessage, which should be freed with mbim_message_unref().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -495,9 +497,11 @@

Returns

-

(transfer full) the new reference to self -.

+

the new reference to self +.

+

[transfer full]

+

Since: 1.0


@@ -523,6 +527,7 @@
+

Since: 1.0


@@ -561,9 +566,9 @@

Returns

-

a newly allocated string, which should be freed with g_free().

-

[transfer full]

+

a newly allocated string, which should be freed with g_free().

+

Since: 1.0


@@ -602,10 +607,10 @@

Returns

-

The raw data buffer, or NULL if error -is set.

-

[transfer none]

+

The raw data buffer, or NULL if error +is set.

+

Since: 1.0


@@ -632,6 +637,7 @@

Returns

a MbimMessageType.

+

Since: 1.0


@@ -658,6 +664,7 @@

Returns

the length of the message.

+

Since: 1.0


@@ -684,6 +691,7 @@

Returns

the transaction ID.

+

Since: 1.0


@@ -714,6 +722,7 @@
+

Since: 1.0


@@ -740,8 +749,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -777,8 +787,9 @@

Returns

a newly created MbimMessage. The returned value should be freed with mbim_message_unref().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -807,6 +818,7 @@

Returns

the maximum control transfer.

+

Since: 1.0


@@ -834,6 +846,7 @@

Returns

a MbimStatusError.

+

Since: 1.0


@@ -869,6 +882,7 @@

TRUE if the operation succeeded, FALSE if error is set.

+

Since: 1.0


@@ -896,8 +910,9 @@

Returns

a newly created MbimMessage. The returned value should be freed with mbim_message_unref().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -925,6 +940,7 @@

Returns

a MbimStatusError.

+

Since: 1.0


@@ -960,6 +976,7 @@

TRUE if the operation succeeded, FALSE if error is set.

+

Since: 1.0


@@ -995,8 +1012,9 @@

Returns

a newly created MbimMessage. The returned value should be freed with mbim_message_unref().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -1032,8 +1050,9 @@

Returns

a newly created MbimMessage. The returned value should be freed with mbim_message_unref().

-

[transfer full]

+

[transfer full]

+

Since: 1.12


@@ -1062,6 +1081,7 @@

Returns

a MbimProtocolError.

+

Since: 1.0


@@ -1089,6 +1109,7 @@

Returns

a newly allocated GError, which should be freed with g_error_free().

+

Since: 1.0


@@ -1136,8 +1157,9 @@

Returns

a newly created MbimMessage. The returned value should be freed with mbim_message_unref().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -1177,6 +1199,7 @@
+

Since: 1.0


@@ -1203,6 +1226,7 @@

Returns

a MbimService.

+

Since: 1.0


@@ -1229,6 +1253,7 @@

Returns

a MbimUuid.

+

Since: 1.0


@@ -1255,6 +1280,7 @@

Returns

a CID.

+

Since: 1.0


@@ -1281,6 +1307,7 @@

Returns

a MbimMessageCommandType.

+

Since: 1.0


@@ -1315,8 +1342,9 @@

Returns

The raw data buffer, or NULL if empty.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1343,8 +1371,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1371,6 +1400,7 @@

Returns

a MbimService.

+

Since: 1.0


@@ -1398,6 +1428,7 @@

Returns

a MbimUuid.

+

Since: 1.0


@@ -1424,6 +1455,7 @@

Returns

a CID.

+

Since: 1.0


@@ -1451,6 +1483,7 @@

Returns

a MbimStatusError.

+

Since: 1.0


@@ -1486,6 +1519,7 @@

TRUE if the operation succeeded, FALSE if error is set.

+

Since: 1.0


@@ -1520,8 +1554,9 @@

Returns

The raw data buffer, or NULL if empty.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1549,6 +1584,7 @@

Returns

a MbimService.

+

Since: 1.0


@@ -1576,6 +1612,7 @@

Returns

a MbimUuid.

+

Since: 1.0


@@ -1602,6 +1639,7 @@

Returns

a CID.

+

Since: 1.0


@@ -1636,8 +1674,9 @@

Returns

The raw data buffer, or NULL if empty.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1682,6 +1721,7 @@

TRUE if the operation succeeded, FALSE if error is set.

+

Since: 1.12

@@ -1690,6 +1730,7 @@

MbimMessage

typedef struct _MbimMessage MbimMessage;

An opaque type representing a MBIM message.

+

Since: 1.0


@@ -1777,6 +1818,7 @@
+

Since: 1.0


@@ -1801,6 +1843,7 @@
+

Since: 1.0


@@ -1825,6 +1868,7 @@
+

Since: 1.0


@@ -1863,10 +1907,11 @@
+

Since: 1.0

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/MbimProxy.html libmbim-1.24.8/docs/reference/libmbim-glib/html/MbimProxy.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/MbimProxy.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/MbimProxy.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -29,7 +29,7 @@

MbimProxy

-

MbimProxy

+

MbimProxy — MBIM proxy handling routines

@@ -125,6 +125,12 @@

Description

+

The MbimProxy will setup an abstract socket listening on a predefined +address, and will take care of synchronizing the access to a set of shared +MBIM ports.

+

Multiple MbimDevice objects may be connected to the MbimProxy at any given +time. The MbimProxy acts as a stateful proxy (all remote MbimDevice objects +will need to share the same message sequence).

Functions

@@ -132,6 +138,29 @@

mbim_proxy_new ()

MbimProxy *
 mbim_proxy_new (GError **error);
+

Creates a MbimProxy object.

+
+

Parameters

+
+++++ + + + + + +

error

Return location for error or NULL.

 
+
+
+

Returns

+

a newly created MbimProxy, or NULL if error +is set.

+

[transfer full]

+
+

Since: 1.10


@@ -139,6 +168,7 @@
guint
 mbim_proxy_get_n_clients (MbimProxy *self);

Get the number of clients currently connected to the proxy.

+

[skip]

Parameters

@@ -158,6 +188,7 @@

Returns

a guint.

+

Since: 1.10


@@ -165,6 +196,7 @@
guint
 mbim_proxy_get_n_devices (MbimProxy *self);

Get the number of devices currently connected to the proxy.

+

[skip]

Parameters

@@ -184,6 +216,7 @@

Returns

a guint.

+

Since: 1.10

@@ -192,23 +225,32 @@

MBIM_PROXY_SOCKET_PATH

#define MBIM_PROXY_SOCKET_PATH "mbim-proxy"
 
+

Symbol defining the default abstract socket name where the MbimProxy will listen.

+

Since: 1.10


MBIM_PROXY_N_CLIENTS

-
#define MBIM_PROXY_N_CLIENTS   "mbim-proxy-n-clients"
+
#define MBIM_PROXY_N_CLIENTS "mbim-proxy-n-clients"
 
+

Symbol defining the “mbim-proxy-n-clients” property.

+

Since: 1.10


MBIM_PROXY_N_DEVICES

-
#define MBIM_PROXY_N_DEVICES   "mbim-proxy-n-devices"
+
#define MBIM_PROXY_N_DEVICES "mbim-proxy-n-devices"
 
+

Symbol defining the “mbim-proxy-n-devices” property.

+

Since: 1.10


struct MbimProxy

struct MbimProxy;
+

The MbimProxy structure contains private data and should only be accessed +using the provided API.

+

Since: 1.10

@@ -220,6 +262,7 @@

Owner: MbimProxy

Flags: Read

Default value: 0

+

Since: 1.10


@@ -229,10 +272,11 @@

Owner: MbimProxy

Flags: Read

Default value: 0

+

Since: 1.10

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/annotation-glossary.html libmbim-1.24.8/docs/reference/libmbim-glib/html/annotation-glossary.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/annotation-glossary.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/annotation-glossary.html 2021-06-02 22:06:36.000000000 +0800 @@ -6,33 +6,57 @@ - - + +
- - +

Annotation Glossary

+

A

+
array
+

Parameter points to an array of items.

+

E

+
element-type
+

Generics and defining elements of containers and arrays.

+

I

+
in
+

Parameter for input. Default is transfer none.

O

+
optional
+

NULL may be passed instead of a pointer to a location.

out
-

Parameter for returning results. Default is transfer full.

+

Parameter for returning results. Default is transfer full.

+

S

+
skip
+

Exposed in C code, not necessarily available in other languages.

T

transfer full
-

Free data after the code is done.

+

The caller owns the data, and is responsible for free it.

transfer none
-

Don't free data after the code is done.

+

The data is owned by the callee, which is responsible of freeing it.

+
type
+

Override the parsed C type with given type.

+
Generated by GTK-Doc V1.33.1
\ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-0.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-0.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-0.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-0.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,932 @@ + + + + +Index of new symbols in 1.0: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.0

+

A

+
+MbimActivationCommand, enum in Enumerations and Flags +
+
+
+MbimActivationState, enum in Enumerations and Flags +
+
+
+mbim_activation_command_get_string, function in Enumerations and Flags +
+
+
+mbim_activation_state_get_string, function in Enumerations and Flags +
+
+
+MbimAuthProtocol, enum in Enumerations and Flags +
+
+
+mbim_auth_protocol_get_string, function in Enumerations and Flags +
+
+

C

+
+MbimCellularClass, enum in Enumerations and Flags +
+
+
+mbim_cellular_class_build_string_from_mask, function in Enumerations and Flags +
+
+
+MbimCidAuth, enum in Command IDs +
+
+
+MbimCidBasicConnect, enum in Command IDs +
+
+
+MbimCidDss, enum in Command IDs +
+
+
+MbimCidPhonebook, enum in Command IDs +
+
+
+MbimCidSms, enum in Command IDs +
+
+
+MbimCidStk, enum in Command IDs +
+
+
+MbimCidUssd, enum in Command IDs +
+
+
+mbim_cid_auth_get_string, function in Command IDs +
+
+
+MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBER_LIST, macro in Deprecated API +
+
+
+mbim_cid_basic_connect_get_string, function in Command IDs +
+
+
+mbim_cid_can_notify, function in Command IDs +
+
+
+mbim_cid_can_query, function in Command IDs +
+
+
+mbim_cid_can_set, function in Command IDs +
+
+
+mbim_cid_dss_get_string, function in Command IDs +
+
+
+mbim_cid_get_printable, function in Command IDs +
+
+
+mbim_cid_ms_firmware_id_get_string, function in Command IDs +
+
+
+mbim_cid_phonebook_get_string, function in Command IDs +
+
+
+mbim_cid_sms_get_string, function in Command IDs +
+
+
+mbim_cid_stk_get_string, function in Command IDs +
+
+
+mbim_cid_ussd_get_string, function in Command IDs +
+
+
+MbimCompression, enum in Enumerations and Flags +
+
+
+mbim_compression_get_string, function in Enumerations and Flags +
+
+
+MbimContextIpType, enum in Enumerations and Flags +
+
+
+MbimContextType, enum in UUIDs +
+
+
+mbim_context_ip_type_get_string, function in Enumerations and Flags +
+
+
+mbim_context_type_get_string, function in UUIDs +
+
+
+MbimCoreError, enum in Errors +
+
+
+MbimCtrlCaps, enum in Enumerations and Flags +
+
+
+mbim_ctrl_caps_build_string_from_mask, function in Enumerations and Flags +
+
+

D

+
+MbimDataClass, enum in Enumerations and Flags +
+
+
+mbim_data_class_build_string_from_mask, function in Enumerations and Flags +
+
+
+MbimDevice, struct in MbimDevice +
+
+
+MbimDevice::device-error, object signal in MbimDevice +
+
+
+MbimDevice::device-indicate-status, object signal in MbimDevice +
+
+
+MbimDevice:device-file, object property in MbimDevice +
+
+
+MbimDeviceServiceElement, struct in Basic Connect +
+
+
+MbimDeviceType, enum in Enumerations and Flags +
+
+
+mbim_device_close, function in MbimDevice +
+
+
+mbim_device_close_finish, function in MbimDevice +
+
+
+mbim_device_close_force, function in MbimDevice +
+
+
+mbim_device_command, function in MbimDevice +
+
+
+mbim_device_command_finish, function in MbimDevice +
+
+
+MBIM_DEVICE_FILE, macro in MbimDevice +
+
+
+mbim_device_get_file, function in MbimDevice +
+
+
+mbim_device_get_next_transaction_id, function in MbimDevice +
+
+
+mbim_device_get_path, function in MbimDevice +
+
+
+mbim_device_get_path_display, function in MbimDevice +
+
+
+mbim_device_is_open, function in MbimDevice +
+
+
+mbim_device_new, function in MbimDevice +
+
+
+mbim_device_new_finish, function in MbimDevice +
+
+
+mbim_device_open, function in MbimDevice +
+
+
+mbim_device_open_finish, function in MbimDevice +
+
+
+mbim_device_peek_file, function in MbimDevice +
+
+
+mbim_device_service_element_array_free, function in Basic Connect +
+
+
+MBIM_DEVICE_SIGNAL_ERROR, macro in MbimDevice +
+
+
+MBIM_DEVICE_SIGNAL_INDICATE_STATUS, macro in MbimDevice +
+
+
+mbim_device_type_get_string, function in Enumerations and Flags +
+
+

I

+
+MbimIPConfigurationAvailableFlag, enum in Enumerations and Flags +
+
+
+MbimIPv4, struct in MbimMessage +
+
+
+MbimIPv4Element, struct in Basic Connect +
+
+
+mbim_ipv4_element_array_free, function in Basic Connect +
+
+
+MbimIPv6, struct in MbimMessage +
+
+
+MbimIPv6Element, struct in Basic Connect +
+
+
+mbim_ipv6_element_array_free, function in Basic Connect +
+
+
+mbim_ip_configuration_available_flag_build_string_from_mask, function in Enumerations and Flags +
+
+

M

+
+MbimMessage, struct in MbimMessage +
+
+
+MbimMessageCommandType, enum in MbimMessage +
+
+
+MbimMessageType, enum in MbimMessage +
+
+
+mbim_message_close_done_get_result, function in MbimMessage +
+
+
+mbim_message_close_done_get_status_code, function in MbimMessage +
+
+
+mbim_message_close_new, function in MbimMessage +
+
+
+mbim_message_command_append, function in MbimMessage +
+
+
+mbim_message_command_done_get_cid, function in MbimMessage +
+
+
+mbim_message_command_done_get_raw_information_buffer, function in MbimMessage +
+
+
+mbim_message_command_done_get_result, function in MbimMessage +
+
+
+mbim_message_command_done_get_service, function in MbimMessage +
+
+
+mbim_message_command_done_get_service_id, function in MbimMessage +
+
+
+mbim_message_command_done_get_status_code, function in MbimMessage +
+
+
+mbim_message_command_get_cid, function in MbimMessage +
+
+
+mbim_message_command_get_command_type, function in MbimMessage +
+
+
+mbim_message_command_get_raw_information_buffer, function in MbimMessage +
+
+
+mbim_message_command_get_service, function in MbimMessage +
+
+
+mbim_message_command_get_service_id, function in MbimMessage +
+
+
+mbim_message_command_new, function in MbimMessage +
+
+
+mbim_message_command_type_get_string, function in MbimMessage +
+
+
+mbim_message_connect_notification_parse, function in Basic Connect +
+
+
+mbim_message_connect_query_new, function in Basic Connect +
+
+
+mbim_message_connect_response_parse, function in Basic Connect +
+
+
+mbim_message_connect_set_new, function in Basic Connect +
+
+
+mbim_message_device_caps_query_new, function in Basic Connect +
+
+
+mbim_message_device_caps_response_parse, function in Basic Connect +
+
+
+mbim_message_device_services_query_new, function in Basic Connect +
+
+
+mbim_message_device_services_response_parse, function in Basic Connect +
+
+
+mbim_message_device_service_subscriber_list_response_parse, function in Deprecated API +
+
+
+mbim_message_device_service_subscriber_list_set_new, function in Deprecated API +
+
+
+mbim_message_dup, function in MbimMessage +
+
+
+mbim_message_error_get_error, function in MbimMessage +
+
+
+mbim_message_error_get_error_status_code, function in MbimMessage +
+
+
+mbim_message_error_new, function in MbimMessage +
+
+
+mbim_message_get_message_length, function in MbimMessage +
+
+
+mbim_message_get_message_type, function in MbimMessage +
+
+
+mbim_message_get_printable, function in MbimMessage +
+
+
+mbim_message_get_raw, function in MbimMessage +
+
+
+mbim_message_get_transaction_id, function in MbimMessage +
+
+
+mbim_message_indicate_status_get_cid, function in MbimMessage +
+
+
+mbim_message_indicate_status_get_raw_information_buffer, function in MbimMessage +
+
+
+mbim_message_indicate_status_get_service, function in MbimMessage +
+
+
+mbim_message_indicate_status_get_service_id, function in MbimMessage +
+
+
+mbim_message_ip_configuration_notification_parse, function in Basic Connect +
+
+
+mbim_message_ip_configuration_query_new, function in Basic Connect +
+
+
+mbim_message_ip_configuration_response_parse, function in Basic Connect +
+
+
+mbim_message_new, function in MbimMessage +
+
+
+mbim_message_open_done_get_result, function in MbimMessage +
+
+
+mbim_message_open_done_get_status_code, function in MbimMessage +
+
+
+mbim_message_open_get_max_control_transfer, function in MbimMessage +
+
+
+mbim_message_open_new, function in MbimMessage +
+
+
+mbim_message_packet_service_notification_parse, function in Basic Connect +
+
+
+mbim_message_packet_service_query_new, function in Basic Connect +
+
+
+mbim_message_packet_service_response_parse, function in Basic Connect +
+
+
+mbim_message_packet_service_set_new, function in Basic Connect +
+
+
+mbim_message_pin_list_query_new, function in Basic Connect +
+
+
+mbim_message_pin_list_response_parse, function in Basic Connect +
+
+
+mbim_message_pin_query_new, function in Basic Connect +
+
+
+mbim_message_pin_response_parse, function in Basic Connect +
+
+
+mbim_message_pin_set_new, function in Basic Connect +
+
+
+mbim_message_provisioned_contexts_notification_parse, function in Basic Connect +
+
+
+mbim_message_provisioned_contexts_query_new, function in Basic Connect +
+
+
+mbim_message_provisioned_contexts_response_parse, function in Basic Connect +
+
+
+mbim_message_provisioned_contexts_set_new, function in Basic Connect +
+
+
+mbim_message_radio_state_notification_parse, function in Basic Connect +
+
+
+mbim_message_radio_state_query_new, function in Basic Connect +
+
+
+mbim_message_radio_state_response_parse, function in Basic Connect +
+
+
+mbim_message_radio_state_set_new, function in Basic Connect +
+
+
+mbim_message_ref, function in MbimMessage +
+
+
+mbim_message_register_state_notification_parse, function in Basic Connect +
+
+
+mbim_message_register_state_query_new, function in Basic Connect +
+
+
+mbim_message_register_state_response_parse, function in Basic Connect +
+
+
+mbim_message_register_state_set_new, function in Basic Connect +
+
+
+mbim_message_set_transaction_id, function in MbimMessage +
+
+
+mbim_message_signal_state_notification_parse, function in Basic Connect +
+
+
+mbim_message_signal_state_query_new, function in Basic Connect +
+
+
+mbim_message_signal_state_response_parse, function in Basic Connect +
+
+
+mbim_message_signal_state_set_new, function in Basic Connect +
+
+
+mbim_message_subscriber_ready_status_query_new, function in Basic Connect +
+
+
+mbim_message_subscriber_ready_status_response_parse, function in Basic Connect +
+
+
+mbim_message_type_get_string, function in MbimMessage +
+
+
+mbim_message_unref, function in MbimMessage +
+
+

N

+
+MbimNwError, enum in Enumerations and Flags +
+
+
+mbim_nw_error_get_string, function in Enumerations and Flags +
+
+

P

+
+MbimPacketServiceAction, enum in Enumerations and Flags +
+
+
+MbimPacketServiceState, enum in Enumerations and Flags +
+
+
+mbim_packet_service_action_get_string, function in Enumerations and Flags +
+
+
+mbim_packet_service_state_get_string, function in Enumerations and Flags +
+
+
+MbimPinDesc, struct in Basic Connect +
+
+
+MbimPinFormat, enum in Enumerations and Flags +
+
+
+MbimPinMode, enum in Enumerations and Flags +
+
+
+MbimPinOperation, enum in Enumerations and Flags +
+
+
+MbimPinState, enum in Enumerations and Flags +
+
+
+MbimPinType, enum in Enumerations and Flags +
+
+
+mbim_pin_desc_free, function in Basic Connect +
+
+
+mbim_pin_format_get_string, function in Enumerations and Flags +
+
+
+mbim_pin_mode_get_string, function in Enumerations and Flags +
+
+
+mbim_pin_operation_get_string, function in Enumerations and Flags +
+
+
+mbim_pin_state_get_string, function in Enumerations and Flags +
+
+
+mbim_pin_type_get_string, function in Enumerations and Flags +
+
+
+MbimProtocolError, enum in Errors +
+
+
+MbimProvisionedContextElement, struct in Basic Connect +
+
+
+mbim_provisioned_context_element_array_free, function in Basic Connect +
+
+

R

+
+MbimRadioSwitchState, enum in Enumerations and Flags +
+
+
+mbim_radio_switch_state_get_string, function in Enumerations and Flags +
+
+
+MbimReadyInfoFlag, enum in Enumerations and Flags +
+
+
+mbim_ready_info_flag_build_string_from_mask, function in Enumerations and Flags +
+
+
+MbimRegisterAction, enum in Enumerations and Flags +
+
+
+MbimRegisterMode, enum in Enumerations and Flags +
+
+
+MbimRegisterState, enum in Enumerations and Flags +
+
+
+mbim_register_action_get_string, function in Enumerations and Flags +
+
+
+mbim_register_mode_get_string, function in Enumerations and Flags +
+
+
+mbim_register_state_get_string, function in Enumerations and Flags +
+
+
+MbimRegistrationFlag, enum in Enumerations and Flags +
+
+
+MBIM_REGISTRATION_FLAG_MANUAL_PACKET_SERVICE_AUTOMATIC_ATTACH, macro in Deprecated API +
+
+

S

+
+MbimService, enum in UUIDs +
+
+
+mbim_service_get_string, function in UUIDs +
+
+
+MbimSimClass, enum in Enumerations and Flags +
+
+
+mbim_sim_class_build_string_from_mask, function in Enumerations and Flags +
+
+
+MbimSmsCaps, enum in Enumerations and Flags +
+
+
+mbim_sms_caps_build_string_from_mask, function in Enumerations and Flags +
+
+
+MbimStatusError, enum in Errors +
+
+
+MbimSubscriberReadyState, enum in Enumerations and Flags +
+
+
+mbim_subscriber_ready_state_get_string, function in Enumerations and Flags +
+
+

U

+
+mbim_utils_get_traces_enabled, function in Common utilities +
+
+
+mbim_utils_set_traces_enabled, function in Common utilities +
+
+
+MbimUuid, struct in UUIDs +
+
+
+MBIM_UUID_AUTH, macro in UUIDs +
+
+
+MBIM_UUID_BASIC_CONNECT, macro in UUIDs +
+
+
+mbim_uuid_cmp, function in UUIDs +
+
+
+MBIM_UUID_DSS, macro in UUIDs +
+
+
+mbim_uuid_from_context_type, function in UUIDs +
+
+
+mbim_uuid_from_service, function in UUIDs +
+
+
+mbim_uuid_get_printable, function in UUIDs +
+
+
+MBIM_UUID_INVALID, macro in UUIDs +
+
+
+MBIM_UUID_PHONEBOOK, macro in UUIDs +
+
+
+MBIM_UUID_SMS, macro in UUIDs +
+
+
+MBIM_UUID_STK, macro in UUIDs +
+
+
+mbim_uuid_to_context_type, function in UUIDs +
+
+
+mbim_uuid_to_service, function in UUIDs +
+
+
+MBIM_UUID_USSD, macro in UUIDs +
+
+

V

+
+MbimVoiceCallState, enum in Enumerations and Flags +
+
+
+MbimVoiceClass, enum in Enumerations and Flags +
+
+
+mbim_voice_call_state_get_string, function in Enumerations and Flags +
+
+
+mbim_voice_class_get_string, function in Enumerations and Flags +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-10.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-10.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-10.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-10.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,129 @@ + + + + +Index of new symbols in 1.10: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.10

+

C

+
+MbimCidProxyControl, enum in Command IDs +
+
+
+mbim_cid_proxy_control_get_string, function in Command IDs +
+
+

D

+
+MbimDevice::device-removed, object signal in MbimDevice +
+
+
+MbimDeviceOpenFlags, enum in MbimDevice +
+
+
+mbim_device_open_full, function in MbimDevice +
+
+
+mbim_device_open_full_finish, function in MbimDevice +
+
+
+MBIM_DEVICE_SIGNAL_REMOVED, macro in MbimDevice +
+
+

P

+
+MbimProxy, struct in MbimProxy +
+
+
+MbimProxy:mbim-proxy-n-clients, object property in MbimProxy +
+
+
+MbimProxy:mbim-proxy-n-devices, object property in MbimProxy +
+
+
+mbim_proxy_get_n_clients, function in MbimProxy +
+
+
+mbim_proxy_get_n_devices, function in MbimProxy +
+
+
+mbim_proxy_new, function in MbimProxy +
+
+
+MBIM_PROXY_N_CLIENTS, macro in MbimProxy +
+
+
+MBIM_PROXY_N_DEVICES, macro in MbimProxy +
+
+
+MBIM_PROXY_SOCKET_PATH, macro in MbimProxy +
+
+

R

+
+mbim_register_custom_service, function in UUIDs +
+
+

S

+
+mbim_service_id_is_custom, function in UUIDs +
+
+
+mbim_service_lookup_name, function in UUIDs +
+
+

U

+
+mbim_unregister_custom_service, function in UUIDs +
+
+
+MBIM_UUID_PROXY_CONTROL, macro in UUIDs +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-12.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-12.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-12.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-12.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,38 @@ + + + + +Index of new symbols in 1.12: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.12

+

M

+
+mbim_message_function_error_new, function in MbimMessage +
+
+
+mbim_message_response_get_result, function in MbimMessage +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-14.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-14.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-14.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-14.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,56 @@ + + + + +Index of new symbols in 1.14: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.14

+

C

+
+MbimCidQmi, enum in Command IDs +
+
+
+mbim_cid_qmi_get_string, function in Command IDs +
+
+

M

+
+mbim_message_qmi_msg_response_parse, function in QMI +
+
+
+mbim_message_qmi_msg_set_new, function in QMI +
+
+

U

+
+MBIM_UUID_QMI, macro in UUIDs +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-16.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-16.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-16.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-16.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,135 @@ + + + + +Index of new symbols in 1.16: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.16

+

A

+
+MbimAtdsProvider, struct in ATDS +
+
+
+MbimAtdsProviderPlmnMode, enum in Enumerations and Flags +
+
+
+MbimAtdsRatMode, enum in Enumerations and Flags +
+
+
+mbim_atds_provider_array_free, function in ATDS +
+
+
+mbim_atds_provider_plmn_mode_get_string, function in Enumerations and Flags +
+
+
+mbim_atds_rat_mode_get_string, function in Enumerations and Flags +
+
+

C

+
+MbimCidAtds, enum in Command IDs +
+
+
+MbimCidIntelFirmwareUpdate, enum in Command IDs +
+
+
+mbim_cid_atds_get_string, function in Command IDs +
+
+
+mbim_cid_intel_firmware_update_get_string, function in Command IDs +
+
+

M

+
+mbim_message_atds_location_query_new, function in ATDS +
+
+
+mbim_message_atds_location_response_parse, function in ATDS +
+
+
+mbim_message_atds_operators_query_new, function in ATDS +
+
+
+mbim_message_atds_operators_response_parse, function in ATDS +
+
+
+mbim_message_atds_rat_query_new, function in ATDS +
+
+
+mbim_message_atds_rat_response_parse, function in ATDS +
+
+
+mbim_message_atds_rat_set_new, function in ATDS +
+
+
+mbim_message_atds_register_state_query_new, function in ATDS +
+
+
+mbim_message_atds_register_state_response_parse, function in ATDS +
+
+
+mbim_message_atds_signal_query_new, function in ATDS +
+
+
+mbim_message_atds_signal_response_parse, function in ATDS +
+
+
+mbim_message_intel_firmware_update_modem_reboot_set_new, function in Intel Firmware Update +
+
+

U

+
+MBIM_UUID_ATDS, macro in UUIDs +
+
+
+MBIM_UUID_INTEL_FIRMWARE_UPDATE, macro in UUIDs +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-18.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-18.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-18.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-18.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,162 @@ + + + + +Index of new symbols in 1.18: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.18

+

C

+
+MbimCidMsBasicConnectExtensions, enum in Command IDs +
+
+
+mbim_cid_ms_basic_connect_extensions_get_string, function in Command IDs +
+
+
+MbimContextSource, enum in Enumerations and Flags +
+
+
+mbim_context_source_get_string, function in Enumerations and Flags +
+
+

L

+
+MbimLteAttachConfiguration, struct in Ms Basic Connect Extensions +
+
+
+MbimLteAttachContextOperation, enum in Enumerations and Flags +
+
+
+MbimLteAttachContextRoamingControl, enum in Enumerations and Flags +
+
+
+MbimLteAttachState, enum in Enumerations and Flags +
+
+
+MbimLteAttachStatus, struct in Ms Basic Connect Extensions +
+
+
+mbim_lte_attach_configuration_array_free, function in Ms Basic Connect Extensions +
+
+
+mbim_lte_attach_context_operation_get_string, function in Enumerations and Flags +
+
+
+mbim_lte_attach_context_roaming_control_get_string, function in Enumerations and Flags +
+
+
+mbim_lte_attach_state_get_string, function in Enumerations and Flags +
+
+
+mbim_lte_attach_status_free, function in Ms Basic Connect Extensions +
+
+

M

+
+mbim_message_ms_basic_connect_extensions_lte_attach_configuration_notification_parse, function in Ms Basic Connect Extensions +
+
+
+mbim_message_ms_basic_connect_extensions_lte_attach_configuration_query_new, function in Ms Basic Connect Extensions +
+
+
+mbim_message_ms_basic_connect_extensions_lte_attach_configuration_response_parse, function in Ms Basic Connect Extensions +
+
+
+mbim_message_ms_basic_connect_extensions_lte_attach_configuration_set_new, function in Ms Basic Connect Extensions +
+
+
+mbim_message_ms_basic_connect_extensions_lte_attach_status_notification_parse, function in Ms Basic Connect Extensions +
+
+
+mbim_message_ms_basic_connect_extensions_lte_attach_status_query_new, function in Ms Basic Connect Extensions +
+
+
+mbim_message_ms_basic_connect_extensions_lte_attach_status_response_parse, function in Ms Basic Connect Extensions +
+
+
+mbim_message_ms_basic_connect_extensions_pco_notification_parse, function in Ms Basic Connect Extensions +
+
+
+mbim_message_ms_basic_connect_extensions_pco_query_new, function in Ms Basic Connect Extensions +
+
+
+mbim_message_ms_basic_connect_extensions_pco_response_parse, function in Ms Basic Connect Extensions +
+
+
+mbim_message_qmi_msg_notification_parse, function in QMI +
+
+

P

+
+MbimPcoType, enum in Enumerations and Flags +
+
+
+MbimPcoValue, struct in Ms Basic Connect Extensions +
+
+
+mbim_pco_type_get_string, function in Enumerations and Flags +
+
+
+mbim_pco_value_free, function in Ms Basic Connect Extensions +
+
+

U

+
+MBIM_UUID_MS_BASIC_CONNECT_EXTENSIONS, macro in UUIDs +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-2.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-2.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-2.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-2.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,134 @@ + + + + +Index of new symbols in 1.2: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.2

+

C

+
+MBIM_CHECK_VERSION, macro in Version checks +
+
+

D

+
+MbimDevice:device-transaction-id, object property in MbimDevice +
+
+
+MBIM_DEVICE_TRANSACTION_ID, macro in MbimDevice +
+
+

M

+
+MBIM_MAJOR_VERSION, macro in Version checks +
+
+
+mbim_message_home_provider_query_new, function in Basic Connect +
+
+
+mbim_message_home_provider_response_parse, function in Basic Connect +
+
+
+mbim_message_home_provider_set_new, function in Basic Connect +
+
+
+mbim_message_preferred_providers_query_new, function in Basic Connect +
+
+
+mbim_message_preferred_providers_response_parse, function in Basic Connect +
+
+
+mbim_message_preferred_providers_set_new, function in Basic Connect +
+
+
+mbim_message_service_activation_response_parse, function in Basic Connect +
+
+
+mbim_message_service_activation_set_new, function in Basic Connect +
+
+
+mbim_message_visible_providers_query_new, function in Basic Connect +
+
+
+mbim_message_visible_providers_response_parse, function in Basic Connect +
+
+
+MBIM_MICRO_VERSION, macro in Version checks +
+
+
+MBIM_MINOR_VERSION, macro in Version checks +
+
+

P

+
+MbimProvider, struct in Basic Connect +
+
+
+MbimProviderState, enum in Enumerations and Flags +
+
+
+mbim_provider_array_free, function in Basic Connect +
+
+
+mbim_provider_free, function in Basic Connect +
+
+
+mbim_provider_state_build_string_from_mask, function in Enumerations and Flags +
+
+

V

+
+MbimVisibleProvidersAction, enum in Enumerations and Flags +
+
+
+mbim_visible_providers_action_get_string, function in Enumerations and Flags +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-24-4.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-24-4.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-24-4.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-24-4.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,34 @@ + + + + +Index of new symbols in 1.24.4: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.24.4

+

D

+
+mbim_device_get_transaction_id, function in MbimDevice +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-24.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-24.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-24.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-24.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,96 @@ + + + + +Index of new symbols in 1.24: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.24

+

A

+
+MbimAtdsProviderArray, typedef in ATDS +
+
+

D

+
+MbimDeviceServiceElementArray, typedef in Basic Connect +
+
+

E

+
+MbimEventEntryArray, typedef in Basic Connect +
+
+

I

+
+MbimIPv4ElementArray, typedef in Basic Connect +
+
+
+MbimIPv6ElementArray, typedef in Basic Connect +
+
+

L

+
+MbimLteAttachConfigurationArray, typedef in Ms Basic Connect Extensions +
+
+

P

+
+MbimPacketFilterArray, typedef in Basic Connect +
+
+
+MbimPhonebookEntryArray, typedef in Phonebook +
+
+
+MbimProviderArray, typedef in Basic Connect +
+
+
+MbimProvisionedContextElementArray, typedef in Basic Connect +
+
+

S

+
+MbimSmsCdmaReadRecordArray, typedef in SMS +
+
+
+MbimSmsPduReadRecordArray, typedef in SMS +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-4.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-4.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-4.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-4.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,476 @@ + + + + +Index of new symbols in 1.4: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + +
+

+Index of new symbols in 1.4

+

D

+
+MBIM_DEVICE_IN_SESSION, macro in MbimDevice +
+
+
+MbimDssLinkState, enum in Enumerations and Flags +
+
+
+mbim_dss_link_state_get_string, function in Enumerations and Flags +
+
+

E

+
+MbimEmergencyModeState, enum in Enumerations and Flags +
+
+
+mbim_emergency_mode_state_get_string, function in Enumerations and Flags +
+
+
+MbimEventEntry, struct in Basic Connect +
+
+
+mbim_event_entry_array_free, function in Basic Connect +
+
+

M

+
+mbim_message_auth_akap_query_new, function in Auth +
+
+
+mbim_message_auth_akap_response_parse, function in Auth +
+
+
+mbim_message_auth_aka_query_new, function in Auth +
+
+
+mbim_message_auth_aka_response_parse, function in Auth +
+
+
+mbim_message_auth_sim_query_new, function in Auth +
+
+
+mbim_message_auth_sim_response_parse, function in Auth +
+
+
+mbim_message_dss_connect_response_parse, function in DSS +
+
+
+mbim_message_dss_connect_set_new, function in DSS +
+
+
+mbim_message_emergency_mode_query_new, function in Basic Connect +
+
+
+mbim_message_emergency_mode_response_parse, function in Basic Connect +
+
+
+mbim_message_emergency_mode_set_new, function in Basic Connect +
+
+
+mbim_message_ip_packet_filters_query_new, function in Basic Connect +
+
+
+mbim_message_ip_packet_filters_response_parse, function in Basic Connect +
+
+
+mbim_message_ip_packet_filters_set_new, function in Basic Connect +
+
+
+mbim_message_multicarrier_providers_query_new, function in Basic Connect +
+
+
+mbim_message_multicarrier_providers_response_parse, function in Basic Connect +
+
+
+mbim_message_multicarrier_providers_set_new, function in Basic Connect +
+
+
+mbim_message_network_idle_hint_query_new, function in Basic Connect +
+
+
+mbim_message_network_idle_hint_response_parse, function in Basic Connect +
+
+
+mbim_message_network_idle_hint_set_new, function in Basic Connect +
+
+
+mbim_message_packet_statistics_query_new, function in Basic Connect +
+
+
+mbim_message_packet_statistics_response_parse, function in Basic Connect +
+
+
+mbim_message_phonebook_configuration_notification_parse, function in Phonebook +
+
+
+mbim_message_phonebook_configuration_query_new, function in Phonebook +
+
+
+mbim_message_phonebook_configuration_response_parse, function in Phonebook +
+
+
+mbim_message_phonebook_delete_response_parse, function in Phonebook +
+
+
+mbim_message_phonebook_delete_set_new, function in Phonebook +
+
+
+mbim_message_phonebook_read_query_new, function in Phonebook +
+
+
+mbim_message_phonebook_read_response_parse, function in Phonebook +
+
+
+mbim_message_phonebook_write_response_parse, function in Phonebook +
+
+
+mbim_message_phonebook_write_set_new, function in Phonebook +
+
+
+mbim_message_sms_configuration_query_new, function in SMS +
+
+
+mbim_message_sms_configuration_response_parse, function in SMS +
+
+
+mbim_message_sms_configuration_set_new, function in SMS +
+
+
+mbim_message_sms_delete_response_parse, function in SMS +
+
+
+mbim_message_sms_delete_set_new, function in SMS +
+
+
+mbim_message_sms_message_store_status_notification_parse, function in SMS +
+
+
+mbim_message_sms_message_store_status_query_new, function in SMS +
+
+
+mbim_message_sms_message_store_status_response_parse, function in SMS +
+
+
+mbim_message_sms_read_notification_parse, function in SMS +
+
+
+mbim_message_sms_read_query_new, function in SMS +
+
+
+mbim_message_sms_read_response_parse, function in SMS +
+
+
+mbim_message_sms_send_response_parse, function in SMS +
+
+
+mbim_message_sms_send_set_new, function in SMS +
+
+
+mbim_message_stk_envelope_query_new, function in STK +
+
+
+mbim_message_stk_envelope_response_parse, function in STK +
+
+
+mbim_message_stk_envelope_set_new, function in STK +
+
+
+mbim_message_stk_pac_notification_parse, function in STK +
+
+
+mbim_message_stk_pac_query_new, function in STK +
+
+
+mbim_message_stk_pac_response_parse, function in STK +
+
+
+mbim_message_stk_pac_set_new, function in STK +
+
+
+mbim_message_stk_terminal_response_response_parse, function in STK +
+
+
+mbim_message_stk_terminal_response_set_new, function in STK +
+
+
+mbim_message_ussd_notification_parse, function in USSD +
+
+
+mbim_message_ussd_response_parse, function in USSD +
+
+
+mbim_message_ussd_set_new, function in USSD +
+
+

N

+
+MbimNetworkIdleHintState, enum in Enumerations and Flags +
+
+
+mbim_network_idle_hint_state_get_string, function in Enumerations and Flags +
+
+

P

+
+MbimPacketFilter, struct in Basic Connect +
+
+
+mbim_packet_filter_array_free, function in Basic Connect +
+
+
+MbimPhonebookEntry, struct in Phonebook +
+
+
+MbimPhonebookFlag, enum in Enumerations and Flags +
+
+
+MbimPhonebookState, enum in Enumerations and Flags +
+
+
+MbimPhonebookWriteFlag, enum in Enumerations and Flags +
+
+
+mbim_phonebook_entry_array_free, function in Phonebook +
+
+
+mbim_phonebook_flag_get_string, function in Enumerations and Flags +
+
+
+mbim_phonebook_state_get_string, function in Enumerations and Flags +
+
+
+mbim_phonebook_write_flag_get_string, function in Enumerations and Flags +
+
+

S

+
+MbimSmsCdmaEncoding, enum in Enumerations and Flags +
+
+
+MbimSmsCdmaLang, enum in Enumerations and Flags +
+
+
+MbimSmsCdmaReadRecord, struct in SMS +
+
+
+MbimSmsCdmaSendRecord, struct in SMS +
+
+
+MbimSmsFlag, enum in Enumerations and Flags +
+
+
+MbimSmsFormat, enum in Enumerations and Flags +
+
+
+MbimSmsPduReadRecord, struct in SMS +
+
+
+MbimSmsPduSendRecord, struct in SMS +
+
+
+MbimSmsStatus, enum in Enumerations and Flags +
+
+
+MbimSmsStatusFlag, enum in Enumerations and Flags +
+
+
+MbimSmsStorageState, enum in Enumerations and Flags +
+
+
+mbim_sms_cdma_encoding_get_string, function in Enumerations and Flags +
+
+
+mbim_sms_cdma_lang_get_string, function in Enumerations and Flags +
+
+
+mbim_sms_cdma_read_record_array_free, function in SMS +
+
+
+mbim_sms_cdma_send_record_free, function in SMS +
+
+
+mbim_sms_flag_get_string, function in Enumerations and Flags +
+
+
+mbim_sms_format_get_string, function in Enumerations and Flags +
+
+
+mbim_sms_pdu_read_record_array_free, function in SMS +
+
+
+mbim_sms_pdu_send_record_free, function in SMS +
+
+
+mbim_sms_status_flag_get_string, function in Enumerations and Flags +
+
+
+mbim_sms_status_get_string, function in Enumerations and Flags +
+
+
+mbim_sms_storage_state_get_string, function in Enumerations and Flags +
+
+
+MbimStkPacProfile, enum in Enumerations and Flags +
+
+
+MbimStkPacType, enum in Enumerations and Flags +
+
+
+mbim_stk_pac_profile_get_string, function in Enumerations and Flags +
+
+
+mbim_stk_pac_type_get_string, function in Enumerations and Flags +
+
+

U

+
+MbimUssdAction, enum in Enumerations and Flags +
+
+
+MbimUssdResponse, enum in Enumerations and Flags +
+
+
+MbimUssdSessionState, enum in Enumerations and Flags +
+
+
+mbim_ussd_action_get_string, function in Enumerations and Flags +
+
+
+mbim_ussd_response_get_string, function in Enumerations and Flags +
+
+
+mbim_ussd_session_state_get_string, function in Enumerations and Flags +
+
+
+ + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-8.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-8.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-1-8.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-1-8.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,96 @@ + + + + +Index of new symbols in 1.8: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-deprecated.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-deprecated.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-deprecated.html 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-deprecated.html 2021-06-02 22:06:36.000000000 +0800 @@ -0,0 +1,52 @@ + + + + +Index of deprecated symbols: libmbim-glib Reference Manual + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-full.html libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-full.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/api-index-full.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/api-index-full.html 2021-06-02 22:06:36.000000000 +0800 @@ -7,8 +7,8 @@ - - + + @@ -41,9 +41,9 @@ Home Prev -Next +Next -
+

API Index

A

@@ -68,6 +68,10 @@
+MbimAtdsProviderArray, typedef in ATDS +
+
+
MbimAtdsProviderPlmnMode, enum in Enumerations and Flags
@@ -334,6 +338,10 @@
+MbimDeviceServiceElementArray, typedef in Basic Connect +
+
+
MbimDeviceType, enum in Enumerations and Flags
@@ -378,6 +386,10 @@
+mbim_device_get_transaction_id, function in MbimDevice +
+
+
MBIM_DEVICE_IN_SESSION, macro in MbimDevice
@@ -459,6 +471,10 @@
+MbimEventEntryArray, typedef in Basic Connect +
+
+
mbim_event_entry_array_free, function in Basic Connect
@@ -476,6 +492,10 @@
+MbimIPv4ElementArray, typedef in Basic Connect +
+
+
mbim_ipv4_element_array_free, function in Basic Connect
@@ -488,6 +508,10 @@
+MbimIPv6ElementArray, typedef in Basic Connect +
+
+
mbim_ipv6_element_array_free, function in Basic Connect
@@ -501,6 +525,10 @@
+MbimLteAttachConfigurationArray, typedef in Ms Basic Connect Extensions +
+
+
MbimLteAttachContextOperation, enum in Enumerations and Flags
@@ -1308,6 +1336,10 @@
+MbimPacketFilterArray, typedef in Basic Connect +
+
+
MbimPacketServiceAction, enum in Enumerations and Flags
@@ -1348,6 +1380,10 @@
+MbimPhonebookEntryArray, typedef in Phonebook +
+
+
MbimPhonebookFlag, enum in Enumerations and Flags
@@ -1436,6 +1472,10 @@
+MbimProviderArray, typedef in Basic Connect +
+
+
MbimProviderState, enum in Enumerations and Flags
@@ -1456,6 +1496,10 @@
+MbimProvisionedContextElementArray, typedef in Basic Connect +
+
+
mbim_provisioned_context_element_array_free, function in Basic Connect
@@ -1590,6 +1634,10 @@
+MbimSmsCdmaReadRecordArray, typedef in SMS +
+
+
MbimSmsCdmaSendRecord, struct in SMS
@@ -1606,6 +1654,10 @@
+MbimSmsPduReadRecordArray, typedef in SMS +
+
+
MbimSmsPduSendRecord, struct in SMS
@@ -1857,6 +1909,6 @@
+
Generated by GTK-Doc V1.33.1
\ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/ch01.html libmbim-1.24.8/docs/reference/libmbim-glib/html/ch01.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/ch01.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/ch01.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -39,7 +39,7 @@ MbimDevice — Generic MBIM device handling routines
-MbimProxy +MbimProxy — MBIM proxy handling routines
Enumerations and Flags — Common enumeration and flag types. @@ -53,6 +53,6 @@
+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/ch02.html libmbim-1.24.8/docs/reference/libmbim-glib/html/ch02.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/ch02.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/ch02.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -47,6 +47,6 @@ +
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/ch03.html libmbim-1.24.8/docs/reference/libmbim-glib/html/ch03.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/ch03.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/ch03.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -35,6 +35,6 @@ +
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/ch04.html libmbim-1.24.8/docs/reference/libmbim-glib/html/ch04.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/ch04.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/ch04.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -27,6 +27,6 @@ +
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/ch05.html libmbim-1.24.8/docs/reference/libmbim-glib/html/ch05.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/ch05.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/ch05.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -27,6 +27,6 @@ +
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/ch06.html libmbim-1.24.8/docs/reference/libmbim-glib/html/ch06.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/ch06.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/ch06.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -27,6 +27,6 @@ +
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/ch07.html libmbim-1.24.8/docs/reference/libmbim-glib/html/ch07.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/ch07.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/ch07.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -27,6 +27,6 @@ +
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/index.html libmbim-1.24.8/docs/reference/libmbim-glib/html/index.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/index.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/index.html 2021-06-02 22:06:36.000000000 +0800 @@ -6,7 +6,7 @@ - + @@ -14,7 +14,7 @@
-

for libmbim-glib 1.22.0 +

for libmbim-glib 1.24.8

+
Generated by GTK-Doc V1.33.1
\ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-ATDS.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-ATDS.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-ATDS.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-ATDS.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -145,10 +145,16 @@ - + +   MbimAtdsProvider - + + +typedef +MbimAtdsProviderArray + +
@@ -159,7 +165,7 @@

mbim_atds_provider_array_free ()

void
-mbim_atds_provider_array_free (MbimAtdsProvider **array);
+mbim_atds_provider_array_free (MbimAtdsProviderArray *array);

Frees the memory allocated for the array of MbimAtdsProviders.

Parameters

@@ -176,6 +182,7 @@
+

Since: 1.16


@@ -202,6 +209,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.16


@@ -234,38 +242,38 @@

out_rssi

-

return location for a guint32, or NULL if the 'Rssi' field is not needed.

-  +

return location for a guint32, or NULL if the 'Rssi' field is not needed.

+[out][optional][transfer none]

out_error_rate

-

return location for a guint32, or NULL if the 'ErrorRate' field is not needed.

-  +

return location for a guint32, or NULL if the 'ErrorRate' field is not needed.

+[out][optional][transfer none]

out_rscp

-

return location for a guint32, or NULL if the 'Rscp' field is not needed.

-  +

return location for a guint32, or NULL if the 'Rscp' field is not needed.

+[out][optional][transfer none]

out_ecno

-

return location for a guint32, or NULL if the 'Ecno' field is not needed.

-  +

return location for a guint32, or NULL if the 'Ecno' field is not needed.

+[out][optional][transfer none]

out_rsrq

-

return location for a guint32, or NULL if the 'Rsrq' field is not needed.

-  +

return location for a guint32, or NULL if the 'Rsrq' field is not needed.

+[out][optional][transfer none]

out_rsrp

-

return location for a guint32, or NULL if the 'Rsrp' field is not needed.

-  +

return location for a guint32, or NULL if the 'Rsrp' field is not needed.

+[out][optional][transfer none]

out_rssnr

-

return location for a guint32, or NULL if the 'Rssnr' field is not needed.

-  +

return location for a guint32, or NULL if the 'Rssnr' field is not needed.

+[out][optional][transfer none]

error

@@ -280,6 +288,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.16


@@ -306,6 +315,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.16


@@ -334,18 +344,18 @@

out_lac

-

return location for a guint32, or NULL if the 'Lac' field is not needed.

-  +

return location for a guint32, or NULL if the 'Lac' field is not needed.

+[out][optional][transfer none]

out_tac

-

return location for a guint32, or NULL if the 'Tac' field is not needed.

-  +

return location for a guint32, or NULL if the 'Tac' field is not needed.

+[out][optional][transfer none]

out_cell_id

-

return location for a guint32, or NULL if the 'CellId' field is not needed.

-  +

return location for a guint32, or NULL if the 'CellId' field is not needed.

+[out][optional][transfer none]

error

@@ -360,6 +370,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.16


@@ -386,6 +397,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.16


@@ -394,7 +406,7 @@ mbim_message_atds_operators_response_parse (const MbimMessage *message, guint32 *out_providers_count, - MbimAtdsProvider ***out_providers, + MbimAtdsProviderArray **out_providers, GError **error);

Parses and returns parameters of the 'Operators' response command in the 'ATDS' service.

@@ -413,13 +425,13 @@

out_providers_count

-

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

+[out][optional][transfer none]

out_providers

-

return location for a newly allocated array of MbimAtdsProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_atds_provider_array_free().

-  +

return location for a newly allocated array of MbimAtdsProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_atds_provider_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimAtdsProvider]

error

@@ -434,6 +446,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.16


@@ -460,6 +473,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.16


@@ -479,8 +493,8 @@

mode

-

the 'Mode' field, given as a MbimAtdsRatMode.

-  +

the 'Mode' field, given as a MbimAtdsRatMode.

+[in]

error

@@ -494,6 +508,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.16


@@ -519,8 +534,8 @@

out_mode

-

return location for a MbimAtdsRatMode, or NULL if the 'Mode' field is not needed.

-  +

return location for a MbimAtdsRatMode, or NULL if the 'Mode' field is not needed.

+[out][optional][transfer none]

error

@@ -535,6 +550,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.16


@@ -562,6 +578,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.16


@@ -596,48 +613,48 @@

out_nw_error

-

return location for a MbimNwError, or NULL if the 'NwError' field is not needed.

-  +

return location for a MbimNwError, or NULL if the 'NwError' field is not needed.

+[out][optional][transfer none]

out_register_state

-

return location for a MbimRegisterState, or NULL if the 'RegisterState' field is not needed.

-  +

return location for a MbimRegisterState, or NULL if the 'RegisterState' field is not needed.

+[out][optional][transfer none]

out_register_mode

-

return location for a MbimRegisterMode, or NULL if the 'RegisterMode' field is not needed.

-  +

return location for a MbimRegisterMode, or NULL if the 'RegisterMode' field is not needed.

+[out][optional][transfer none]

out_available_data_classes

-

return location for a MbimDataClass, or NULL if the 'AvailableDataClasses' field is not needed.

-  +

return location for a MbimDataClass, or NULL if the 'AvailableDataClasses' field is not needed.

+[out][optional][transfer none]

out_current_cellular_class

-

return location for a MbimCellularClass, or NULL if the 'CurrentCellularClass' field is not needed.

-  +

return location for a MbimCellularClass, or NULL if the 'CurrentCellularClass' field is not needed.

+[out][optional][transfer none]

out_provider_id

-

return location for a newly allocated string, or NULL if the 'ProviderId' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'ProviderId' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_provider_name

-

return location for a newly allocated string, or NULL if the 'ProviderName' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'ProviderName' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_roaming_text

-

return location for a newly allocated string, or NULL if the 'RoamingText' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'RoamingText' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_registration_flag

-

return location for a MbimRegistrationFlag, or NULL if the 'RegistrationFlag' field is not needed.

-  +

return location for a MbimRegistrationFlag, or NULL if the 'RegistrationFlag' field is not needed.

+[out][optional][transfer none]

error

@@ -652,6 +669,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.16

@@ -709,10 +727,19 @@
+

Since: 1.16

+ +
+
+

MbimAtdsProviderArray

+
typedef MbimAtdsProvider *MbimAtdsProviderArray;
+
+

A NULL-terminated array of MbimAtdsProvider elements.

+

Since: 1.24

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Auth.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Auth.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Auth.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Auth.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -113,13 +113,13 @@

rand

-

the 'Rand' field, given as an array of 16 guint8 values.

-  +

the 'Rand' field, given as an array of 16 guint8 values.

+[in][element-type guint8][array fixed-size=16]

autn

-

the 'Autn' field, given as an array of 16 guint8 values.

-  +

the 'Autn' field, given as an array of 16 guint8 values.

+[in][element-type guint8][array fixed-size=16]

error

@@ -133,6 +133,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -163,31 +164,31 @@

out_res

return location for an array of 16 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=16]

out_res_len

-

return location for a guint32, or NULL if the 'ResLen' field is not needed.

-  +

return location for a guint32, or NULL if the 'ResLen' field is not needed.

+[out][optional][transfer none]

out_integrating_key

return location for an array of 16 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=16]

out_ciphering_key

return location for an array of 16 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=16]

out_auts

return location for an array of 14 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=14]

error

@@ -202,6 +203,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -223,18 +225,18 @@

rand

-

the 'Rand' field, given as an array of 16 guint8 values.

-  +

the 'Rand' field, given as an array of 16 guint8 values.

+[in][element-type guint8][array fixed-size=16]

autn

-

the 'Autn' field, given as an array of 16 guint8 values.

-  +

the 'Autn' field, given as an array of 16 guint8 values.

+[in][element-type guint8][array fixed-size=16]

network_name

-

the 'NetworkName' field, given as a string.

-  +

the 'NetworkName' field, given as a string.

+[in]

error

@@ -248,6 +250,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -278,31 +281,31 @@

out_res

return location for an array of 16 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=16]

out_res_len

-

return location for a guint32, or NULL if the 'ResLen' field is not needed.

-  +

return location for a guint32, or NULL if the 'ResLen' field is not needed.

+[out][optional][transfer none]

out_integrating_key

return location for an array of 16 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=16]

out_ciphering_key

return location for an array of 16 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=16]

out_auts

return location for an array of 14 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=14]

error

@@ -317,6 +320,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -339,23 +343,23 @@

rand1

-

the 'Rand1' field, given as an array of 16 guint8 values.

-  +

the 'Rand1' field, given as an array of 16 guint8 values.

+[in][element-type guint8][array fixed-size=16]

rand2

-

the 'Rand2' field, given as an array of 16 guint8 values.

-  +

the 'Rand2' field, given as an array of 16 guint8 values.

+[in][element-type guint8][array fixed-size=16]

rand3

-

the 'Rand3' field, given as an array of 16 guint8 values.

-  +

the 'Rand3' field, given as an array of 16 guint8 values.

+[in][element-type guint8][array fixed-size=16]

n

-

the 'N' field, given as a guint32.

-  +

the 'N' field, given as a guint32.

+[in]

error

@@ -369,6 +373,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -400,38 +405,38 @@

out_sres1

-

return location for a guint32, or NULL if the 'Sres1' field is not needed.

-  +

return location for a guint32, or NULL if the 'Sres1' field is not needed.

+[out][optional][transfer none]

out_kc1

-

return location for a guint64, or NULL if the 'Kc1' field is not needed.

-  +

return location for a guint64, or NULL if the 'Kc1' field is not needed.

+[out][optional][transfer none]

out_sres2

-

return location for a guint32, or NULL if the 'Sres2' field is not needed.

-  +

return location for a guint32, or NULL if the 'Sres2' field is not needed.

+[out][optional][transfer none]

out_kc2

-

return location for a guint64, or NULL if the 'Kc2' field is not needed.

-  +

return location for a guint64, or NULL if the 'Kc2' field is not needed.

+[out][optional][transfer none]

out_sres3

-

return location for a guint32, or NULL if the 'Sres3' field is not needed.

-  +

return location for a guint32, or NULL if the 'Sres3' field is not needed.

+[out][optional][transfer none]

out_kc3

-

return location for a guint64, or NULL if the 'Kc3' field is not needed.

-  +

return location for a guint64, or NULL if the 'Kc3' field is not needed.

+[out][optional][transfer none]

out_n

-

return location for a guint32, or NULL if the 'N' field is not needed.

-  +

return location for a guint32, or NULL if the 'N' field is not needed.

+[out][optional][transfer none]

error

@@ -446,10 +451,11 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Basic-Connect.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Basic-Connect.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Basic-Connect.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Basic-Connect.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -675,29 +675,57 @@ MbimProvider +typedef +MbimProviderArray + +   MbimProvisionedContextElement +typedef +MbimProvisionedContextElementArray + +   MbimIPv4Element +typedef +MbimIPv4ElementArray + +   MbimIPv6Element +typedef +MbimIPv6ElementArray + +   MbimDeviceServiceElement +typedef +MbimDeviceServiceElementArray + +   MbimEventEntry +typedef +MbimEventEntryArray + +   MbimPacketFilter + +typedef +MbimPacketFilterArray + @@ -726,6 +754,7 @@ +

Since: 1.0


@@ -748,12 +777,13 @@
+

Since: 1.2


mbim_provider_array_free ()

void
-mbim_provider_array_free (MbimProvider **array);
+mbim_provider_array_free (MbimProviderArray *array);

Frees the memory allocated for the array of MbimProviders.

Parameters

@@ -770,13 +800,14 @@
+

Since: 1.2


mbim_provisioned_context_element_array_free ()

void
 mbim_provisioned_context_element_array_free
-                               (MbimProvisionedContextElement **array);
+ (MbimProvisionedContextElementArray *array);

Frees the memory allocated for the array of MbimProvisionedContextElements.

Parameters

@@ -793,12 +824,13 @@
+

Since: 1.0


mbim_ipv4_element_array_free ()

void
-mbim_ipv4_element_array_free (MbimIPv4Element **array);
+mbim_ipv4_element_array_free (MbimIPv4ElementArray *array);

Frees the memory allocated for the array of MbimIPv4Elements.

Parameters

@@ -815,12 +847,13 @@
+

Since: 1.0


mbim_ipv6_element_array_free ()

void
-mbim_ipv6_element_array_free (MbimIPv6Element **array);
+mbim_ipv6_element_array_free (MbimIPv6ElementArray *array);

Frees the memory allocated for the array of MbimIPv6Elements.

Parameters

@@ -837,13 +870,14 @@
+

Since: 1.0


mbim_device_service_element_array_free ()

void
 mbim_device_service_element_array_free
-                               (MbimDeviceServiceElement **array);
+ (MbimDeviceServiceElementArray *array);

Frees the memory allocated for the array of MbimDeviceServiceElements.

Parameters

@@ -860,12 +894,13 @@
+

Since: 1.0


mbim_event_entry_array_free ()

void
-mbim_event_entry_array_free (MbimEventEntry **array);
+mbim_event_entry_array_free (MbimEventEntryArray *array);

Frees the memory allocated for the array of MbimEventEntrys.

Parameters

@@ -882,12 +917,13 @@
+

Since: 1.4


mbim_packet_filter_array_free ()

void
-mbim_packet_filter_array_free (MbimPacketFilter **array);
+mbim_packet_filter_array_free (MbimPacketFilterArray *array);

Frees the memory allocated for the array of MbimPacketFilters.

Parameters

@@ -904,6 +940,7 @@
+

Since: 1.4


@@ -930,6 +967,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -967,63 +1005,63 @@

out_device_type

-

return location for a MbimDeviceType, or NULL if the 'DeviceType' field is not needed.

-  +

return location for a MbimDeviceType, or NULL if the 'DeviceType' field is not needed.

+[out][optional][transfer none]

out_cellular_class

-

return location for a MbimCellularClass, or NULL if the 'CellularClass' field is not needed.

-  +

return location for a MbimCellularClass, or NULL if the 'CellularClass' field is not needed.

+[out][optional][transfer none]

out_voice_class

-

return location for a MbimVoiceClass, or NULL if the 'VoiceClass' field is not needed.

-  +

return location for a MbimVoiceClass, or NULL if the 'VoiceClass' field is not needed.

+[out][optional][transfer none]

out_sim_class

-

return location for a MbimSimClass, or NULL if the 'SimClass' field is not needed.

-  +

return location for a MbimSimClass, or NULL if the 'SimClass' field is not needed.

+[out][optional][transfer none]

out_data_class

-

return location for a MbimDataClass, or NULL if the 'DataClass' field is not needed.

-  +

return location for a MbimDataClass, or NULL if the 'DataClass' field is not needed.

+[out][optional][transfer none]

out_sms_caps

-

return location for a MbimSmsCaps, or NULL if the 'SmsCaps' field is not needed.

-  +

return location for a MbimSmsCaps, or NULL if the 'SmsCaps' field is not needed.

+[out][optional][transfer none]

out_control_caps

-

return location for a MbimCtrlCaps, or NULL if the 'ControlCaps' field is not needed.

-  +

return location for a MbimCtrlCaps, or NULL if the 'ControlCaps' field is not needed.

+[out][optional][transfer none]

out_max_sessions

-

return location for a guint32, or NULL if the 'MaxSessions' field is not needed.

-  +

return location for a guint32, or NULL if the 'MaxSessions' field is not needed.

+[out][optional][transfer none]

out_custom_data_class

-

return location for a newly allocated string, or NULL if the 'CustomDataClass' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'CustomDataClass' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_device_id

-

return location for a newly allocated string, or NULL if the 'DeviceId' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'DeviceId' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_firmware_info

-

return location for a newly allocated string, or NULL if the 'FirmwareInfo' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'FirmwareInfo' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_hardware_info

-

return location for a newly allocated string, or NULL if the 'HardwareInfo' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'HardwareInfo' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

error

@@ -1038,6 +1076,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -1065,6 +1104,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -1096,33 +1136,33 @@

out_ready_state

-

return location for a MbimSubscriberReadyState, or NULL if the 'ReadyState' field is not needed.

-  +

return location for a MbimSubscriberReadyState, or NULL if the 'ReadyState' field is not needed.

+[out][optional][transfer none]

out_subscriber_id

-

return location for a newly allocated string, or NULL if the 'SubscriberId' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'SubscriberId' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_sim_icc_id

-

return location for a newly allocated string, or NULL if the 'SimIccId' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'SimIccId' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_ready_info

-

return location for a MbimReadyInfoFlag, or NULL if the 'ReadyInfo' field is not needed.

-  +

return location for a MbimReadyInfoFlag, or NULL if the 'ReadyInfo' field is not needed.

+[out][optional][transfer none]

out_telephone_numbers_count

-

return location for a guint32, or NULL if the 'TelephoneNumbersCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'TelephoneNumbersCount' field is not needed.

+[out][optional][transfer none]

out_telephone_numbers

-

return location for a newly allocated array of strings, or NULL if the 'TelephoneNumbers' field is not needed. Free the returned value with g_strfreev().

-  +

return location for a newly allocated array of strings, or NULL if the 'TelephoneNumbers' field is not needed. Free the returned value with g_strfreev().

+[out][optional][transfer full][type GStrv]

error

@@ -1137,6 +1177,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -1168,33 +1209,33 @@

out_ready_state

-

return location for a MbimSubscriberReadyState, or NULL if the 'ReadyState' field is not needed.

-  +

return location for a MbimSubscriberReadyState, or NULL if the 'ReadyState' field is not needed.

+[out][optional][transfer none]

out_subscriber_id

-

return location for a newly allocated string, or NULL if the 'SubscriberId' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'SubscriberId' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_sim_icc_id

-

return location for a newly allocated string, or NULL if the 'SimIccId' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'SimIccId' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_ready_info

-

return location for a MbimReadyInfoFlag, or NULL if the 'ReadyInfo' field is not needed.

-  +

return location for a MbimReadyInfoFlag, or NULL if the 'ReadyInfo' field is not needed.

+[out][optional][transfer none]

out_telephone_numbers_count

-

return location for a guint32, or NULL if the 'TelephoneNumbersCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'TelephoneNumbersCount' field is not needed.

+[out][optional][transfer none]

out_telephone_numbers

-

return location for a newly allocated array of strings, or NULL if the 'TelephoneNumbers' field is not needed. Free the returned value with g_strfreev().

-  +

return location for a newly allocated array of strings, or NULL if the 'TelephoneNumbers' field is not needed. Free the returned value with g_strfreev().

+[out][optional][transfer full][type GStrv]

error

@@ -1209,6 +1250,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.8


@@ -1235,6 +1277,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -1254,8 +1297,8 @@

radio_state

-

the 'RadioState' field, given as a MbimRadioSwitchState.

-  +

the 'RadioState' field, given as a MbimRadioSwitchState.

+[in]

error

@@ -1269,6 +1312,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -1296,13 +1340,13 @@

out_hw_radio_state

-

return location for a MbimRadioSwitchState, or NULL if the 'HwRadioState' field is not needed.

-  +

return location for a MbimRadioSwitchState, or NULL if the 'HwRadioState' field is not needed.

+[out][optional][transfer none]

out_sw_radio_state

-

return location for a MbimRadioSwitchState, or NULL if the 'SwRadioState' field is not needed.

-  +

return location for a MbimRadioSwitchState, or NULL if the 'SwRadioState' field is not needed.

+[out][optional][transfer none]

error

@@ -1317,6 +1361,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -1344,13 +1389,13 @@

out_hw_radio_state

-

return location for a MbimRadioSwitchState, or NULL if the 'HwRadioState' field is not needed.

-  +

return location for a MbimRadioSwitchState, or NULL if the 'HwRadioState' field is not needed.

+[out][optional][transfer none]

out_sw_radio_state

-

return location for a MbimRadioSwitchState, or NULL if the 'SwRadioState' field is not needed.

-  +

return location for a MbimRadioSwitchState, or NULL if the 'SwRadioState' field is not needed.

+[out][optional][transfer none]

error

@@ -1365,6 +1410,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -1391,6 +1437,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -1413,23 +1460,23 @@

pin_type

-

the 'PinType' field, given as a MbimPinType.

-  +

the 'PinType' field, given as a MbimPinType.

+[in]

pin_operation

-

the 'PinOperation' field, given as a MbimPinOperation.

-  +

the 'PinOperation' field, given as a MbimPinOperation.

+[in]

pin

-

the 'Pin' field, given as a string.

-  +

the 'Pin' field, given as a string.

+[in]

new_pin

-

the 'NewPin' field, given as a string.

-  +

the 'NewPin' field, given as a string.

+[in]

error

@@ -1443,6 +1490,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -1470,18 +1518,18 @@

out_pin_type

-

return location for a MbimPinType, or NULL if the 'PinType' field is not needed.

-  +

return location for a MbimPinType, or NULL if the 'PinType' field is not needed.

+[out][optional][transfer none]

out_pin_state

-

return location for a MbimPinState, or NULL if the 'PinState' field is not needed.

-  +

return location for a MbimPinState, or NULL if the 'PinState' field is not needed.

+[out][optional][transfer none]

out_remaining_attempts

-

return location for a guint32, or NULL if the 'RemainingAttempts' field is not needed.

-  +

return location for a guint32, or NULL if the 'RemainingAttempts' field is not needed.

+[out][optional][transfer none]

error

@@ -1496,6 +1544,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -1522,6 +1571,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -1556,53 +1606,53 @@

out_pin_desc_pin1

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescPin1' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescPin1' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

out_pin_desc_pin2

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescPin2' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescPin2' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

out_pin_desc_device_sim_pin

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescDeviceSimPin' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescDeviceSimPin' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

out_pin_desc_device_first_sim_pin

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescDeviceFirstSimPin' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescDeviceFirstSimPin' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

out_pin_desc_network_pin

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescNetworkPin' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescNetworkPin' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

out_pin_desc_network_subset_pin

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescNetworkSubsetPin' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescNetworkSubsetPin' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

out_pin_desc_service_provider_pin

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescServiceProviderPin' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescServiceProviderPin' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

out_pin_desc_corporate_pin

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescCorporatePin' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescCorporatePin' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

out_pin_desc_subsidy_lock

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescSubsidyLock' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescSubsidyLock' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

out_pin_desc_custom

-

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescCustom' field is not needed. Free the returned value with mbim_pin_desc_free().

-  +

return location for a newly allocated MbimPinDesc, or NULL if the 'PinDescCustom' field is not needed. Free the returned value with mbim_pin_desc_free().

+[out][optional][transfer full]

error

@@ -1617,6 +1667,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -1643,6 +1694,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.2


@@ -1662,8 +1714,8 @@

provider

-

the 'Provider' field, given as a MbimProvider.

-  +

the 'Provider' field, given as a MbimProvider.

+[in]

error

@@ -1677,6 +1729,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.2


@@ -1703,8 +1756,8 @@

out_provider

-

return location for a newly allocated MbimProvider, or NULL if the 'Provider' field is not needed. Free the returned value with mbim_provider_free().

-  +

return location for a newly allocated MbimProvider, or NULL if the 'Provider' field is not needed. Free the returned value with mbim_provider_free().

+[out][optional][transfer full]

error

@@ -1719,6 +1772,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.2


@@ -1746,6 +1800,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.2


@@ -1767,13 +1822,13 @@

providers_count

-

the 'ProvidersCount' field, given as a guint32.

-  +

the 'ProvidersCount' field, given as a guint32.

+[in]

providers

-

the 'Providers' field, given as an array of MbimProviders.

-  +

the 'Providers' field, given as an array of MbimProviders.

+[in]

error

@@ -1787,6 +1842,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.2


@@ -1795,7 +1851,7 @@ mbim_message_preferred_providers_response_parse (const MbimMessage *message, guint32 *out_providers_count, - MbimProvider ***out_providers, + MbimProviderArray **out_providers, GError **error);

Parses and returns parameters of the 'Preferred Providers' response command in the 'Basic Connect' service.

@@ -1814,13 +1870,13 @@

out_providers_count

-

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

+[out][optional][transfer none]

out_providers

-

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

-  +

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimProvider]

error

@@ -1835,6 +1891,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.2


@@ -1843,7 +1900,7 @@ mbim_message_preferred_providers_notification_parse (const MbimMessage *message, guint32 *out_providers_count, - MbimProvider ***out_providers, + MbimProviderArray **out_providers, GError **error);

Parses and returns parameters of the 'Preferred Providers' notification command in the 'Basic Connect' service.

@@ -1862,13 +1919,13 @@

out_providers_count

-

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

+[out][optional][transfer none]

out_providers

-

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

-  +

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimProvider]

error

@@ -1883,6 +1940,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.8


@@ -1903,8 +1961,8 @@

action

-

the 'Action' field, given as a MbimVisibleProvidersAction.

-  +

the 'Action' field, given as a MbimVisibleProvidersAction.

+[in]

error

@@ -1918,6 +1976,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.2


@@ -1926,7 +1985,7 @@ mbim_message_visible_providers_response_parse (const MbimMessage *message, guint32 *out_providers_count, - MbimProvider ***out_providers, + MbimProviderArray **out_providers, GError **error);

Parses and returns parameters of the 'Visible Providers' response command in the 'Basic Connect' service.

@@ -1945,13 +2004,13 @@

out_providers_count

-

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

+[out][optional][transfer none]

out_providers

-

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

-  +

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimProvider]

error

@@ -1966,6 +2025,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.2


@@ -1992,6 +2052,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -2013,18 +2074,18 @@

provider_id

-

the 'ProviderId' field, given as a string.

-  +

the 'ProviderId' field, given as a string.

+[in]

register_action

-

the 'RegisterAction' field, given as a MbimRegisterAction.

-  +

the 'RegisterAction' field, given as a MbimRegisterAction.

+[in]

data_class

-

the 'DataClass' field, given as a MbimDataClass.

-  +

the 'DataClass' field, given as a MbimDataClass.

+[in]

error

@@ -2038,6 +2099,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -2072,48 +2134,48 @@

out_nw_error

-

return location for a MbimNwError, or NULL if the 'NwError' field is not needed.

-  +

return location for a MbimNwError, or NULL if the 'NwError' field is not needed.

+[out][optional][transfer none]

out_register_state

-

return location for a MbimRegisterState, or NULL if the 'RegisterState' field is not needed.

-  +

return location for a MbimRegisterState, or NULL if the 'RegisterState' field is not needed.

+[out][optional][transfer none]

out_register_mode

-

return location for a MbimRegisterMode, or NULL if the 'RegisterMode' field is not needed.

-  +

return location for a MbimRegisterMode, or NULL if the 'RegisterMode' field is not needed.

+[out][optional][transfer none]

out_available_data_classes

-

return location for a MbimDataClass, or NULL if the 'AvailableDataClasses' field is not needed.

-  +

return location for a MbimDataClass, or NULL if the 'AvailableDataClasses' field is not needed.

+[out][optional][transfer none]

out_current_cellular_class

-

return location for a MbimCellularClass, or NULL if the 'CurrentCellularClass' field is not needed.

-  +

return location for a MbimCellularClass, or NULL if the 'CurrentCellularClass' field is not needed.

+[out][optional][transfer none]

out_provider_id

-

return location for a newly allocated string, or NULL if the 'ProviderId' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'ProviderId' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_provider_name

-

return location for a newly allocated string, or NULL if the 'ProviderName' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'ProviderName' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_roaming_text

-

return location for a newly allocated string, or NULL if the 'RoamingText' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'RoamingText' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_registration_flag

-

return location for a MbimRegistrationFlag, or NULL if the 'RegistrationFlag' field is not needed.

-  +

return location for a MbimRegistrationFlag, or NULL if the 'RegistrationFlag' field is not needed.

+[out][optional][transfer none]

error

@@ -2128,6 +2190,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -2162,48 +2225,48 @@

out_nw_error

-

return location for a MbimNwError, or NULL if the 'NwError' field is not needed.

-  +

return location for a MbimNwError, or NULL if the 'NwError' field is not needed.

+[out][optional][transfer none]

out_register_state

-

return location for a MbimRegisterState, or NULL if the 'RegisterState' field is not needed.

-  +

return location for a MbimRegisterState, or NULL if the 'RegisterState' field is not needed.

+[out][optional][transfer none]

out_register_mode

-

return location for a MbimRegisterMode, or NULL if the 'RegisterMode' field is not needed.

-  +

return location for a MbimRegisterMode, or NULL if the 'RegisterMode' field is not needed.

+[out][optional][transfer none]

out_available_data_classes

-

return location for a MbimDataClass, or NULL if the 'AvailableDataClasses' field is not needed.

-  +

return location for a MbimDataClass, or NULL if the 'AvailableDataClasses' field is not needed.

+[out][optional][transfer none]

out_current_cellular_class

-

return location for a MbimCellularClass, or NULL if the 'CurrentCellularClass' field is not needed.

-  +

return location for a MbimCellularClass, or NULL if the 'CurrentCellularClass' field is not needed.

+[out][optional][transfer none]

out_provider_id

-

return location for a newly allocated string, or NULL if the 'ProviderId' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'ProviderId' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_provider_name

-

return location for a newly allocated string, or NULL if the 'ProviderName' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'ProviderName' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_roaming_text

-

return location for a newly allocated string, or NULL if the 'RoamingText' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'RoamingText' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

out_registration_flag

-

return location for a MbimRegistrationFlag, or NULL if the 'RegistrationFlag' field is not needed.

-  +

return location for a MbimRegistrationFlag, or NULL if the 'RegistrationFlag' field is not needed.

+[out][optional][transfer none]

error

@@ -2218,6 +2281,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -2244,6 +2308,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -2265,18 +2330,18 @@

signal_strength_interval

-

the 'SignalStrengthInterval' field, given as a guint32.

-  +

the 'SignalStrengthInterval' field, given as a guint32.

+[in]

rssi_threshold

-

the 'RssiThreshold' field, given as a guint32.

-  +

the 'RssiThreshold' field, given as a guint32.

+[in]

error_rate_threshold

-

the 'ErrorRateThreshold' field, given as a guint32.

-  +

the 'ErrorRateThreshold' field, given as a guint32.

+[in]

error

@@ -2290,6 +2355,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -2320,28 +2386,28 @@

out_rssi

-

return location for a guint32, or NULL if the 'Rssi' field is not needed.

-  +

return location for a guint32, or NULL if the 'Rssi' field is not needed.

+[out][optional][transfer none]

out_error_rate

-

return location for a guint32, or NULL if the 'ErrorRate' field is not needed.

-  +

return location for a guint32, or NULL if the 'ErrorRate' field is not needed.

+[out][optional][transfer none]

out_signal_strength_interval

-

return location for a guint32, or NULL if the 'SignalStrengthInterval' field is not needed.

-  +

return location for a guint32, or NULL if the 'SignalStrengthInterval' field is not needed.

+[out][optional][transfer none]

out_rssi_threshold

-

return location for a guint32, or NULL if the 'RssiThreshold' field is not needed.

-  +

return location for a guint32, or NULL if the 'RssiThreshold' field is not needed.

+[out][optional][transfer none]

out_error_rate_threshold

-

return location for a guint32, or NULL if the 'ErrorRateThreshold' field is not needed.

-  +

return location for a guint32, or NULL if the 'ErrorRateThreshold' field is not needed.

+[out][optional][transfer none]

error

@@ -2356,6 +2422,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -2386,28 +2453,28 @@

out_rssi

-

return location for a guint32, or NULL if the 'Rssi' field is not needed.

-  +

return location for a guint32, or NULL if the 'Rssi' field is not needed.

+[out][optional][transfer none]

out_error_rate

-

return location for a guint32, or NULL if the 'ErrorRate' field is not needed.

-  +

return location for a guint32, or NULL if the 'ErrorRate' field is not needed.

+[out][optional][transfer none]

out_signal_strength_interval

-

return location for a guint32, or NULL if the 'SignalStrengthInterval' field is not needed.

-  +

return location for a guint32, or NULL if the 'SignalStrengthInterval' field is not needed.

+[out][optional][transfer none]

out_rssi_threshold

-

return location for a guint32, or NULL if the 'RssiThreshold' field is not needed.

-  +

return location for a guint32, or NULL if the 'RssiThreshold' field is not needed.

+[out][optional][transfer none]

out_error_rate_threshold

-

return location for a guint32, or NULL if the 'ErrorRateThreshold' field is not needed.

-  +

return location for a guint32, or NULL if the 'ErrorRateThreshold' field is not needed.

+[out][optional][transfer none]

error

@@ -2422,6 +2489,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -2448,6 +2516,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -2467,8 +2536,8 @@

packet_service_action

-

the 'PacketServiceAction' field, given as a MbimPacketServiceAction.

-  +

the 'PacketServiceAction' field, given as a MbimPacketServiceAction.

+[in]

error

@@ -2482,6 +2551,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -2512,28 +2582,28 @@

out_nw_error

-

return location for a guint32, or NULL if the 'NwError' field is not needed.

-  +

return location for a guint32, or NULL if the 'NwError' field is not needed.

+[out][optional][transfer none]

out_packet_service_state

-

return location for a MbimPacketServiceState, or NULL if the 'PacketServiceState' field is not needed.

-  +

return location for a MbimPacketServiceState, or NULL if the 'PacketServiceState' field is not needed.

+[out][optional][transfer none]

out_highest_available_data_class

-

return location for a MbimDataClass, or NULL if the 'HighestAvailableDataClass' field is not needed.

-  +

return location for a MbimDataClass, or NULL if the 'HighestAvailableDataClass' field is not needed.

+[out][optional][transfer none]

out_uplink_speed

-

return location for a guint64, or NULL if the 'UplinkSpeed' field is not needed.

-  +

return location for a guint64, or NULL if the 'UplinkSpeed' field is not needed.

+[out][optional][transfer none]

out_downlink_speed

-

return location for a guint64, or NULL if the 'DownlinkSpeed' field is not needed.

-  +

return location for a guint64, or NULL if the 'DownlinkSpeed' field is not needed.

+[out][optional][transfer none]

error

@@ -2548,6 +2618,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -2578,28 +2649,28 @@

out_nw_error

-

return location for a guint32, or NULL if the 'NwError' field is not needed.

-  +

return location for a guint32, or NULL if the 'NwError' field is not needed.

+[out][optional][transfer none]

out_packet_service_state

-

return location for a MbimPacketServiceState, or NULL if the 'PacketServiceState' field is not needed.

-  +

return location for a MbimPacketServiceState, or NULL if the 'PacketServiceState' field is not needed.

+[out][optional][transfer none]

out_highest_available_data_class

-

return location for a MbimDataClass, or NULL if the 'HighestAvailableDataClass' field is not needed.

-  +

return location for a MbimDataClass, or NULL if the 'HighestAvailableDataClass' field is not needed.

+[out][optional][transfer none]

out_uplink_speed

-

return location for a guint64, or NULL if the 'UplinkSpeed' field is not needed.

-  +

return location for a guint64, or NULL if the 'UplinkSpeed' field is not needed.

+[out][optional][transfer none]

out_downlink_speed

-

return location for a guint64, or NULL if the 'DownlinkSpeed' field is not needed.

-  +

return location for a guint64, or NULL if the 'DownlinkSpeed' field is not needed.

+[out][optional][transfer none]

error

@@ -2614,6 +2685,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -2638,33 +2710,33 @@

session_id

-

the 'SessionId' field, given as a guint32.

-  +

the 'SessionId' field, given as a guint32.

+[in]

activation_state

-

the 'ActivationState' field, given as a MbimActivationState.

-  +

the 'ActivationState' field, given as a MbimActivationState.

+[in]

voice_call_state

-

the 'VoiceCallState' field, given as a MbimVoiceCallState.

-  +

the 'VoiceCallState' field, given as a MbimVoiceCallState.

+[in]

ip_type

-

the 'IpType' field, given as a MbimContextIpType.

-  +

the 'IpType' field, given as a MbimContextIpType.

+[in]

context_type

-

the 'ContextType' field, given as a MbimUuid.

-  +

the 'ContextType' field, given as a MbimUuid.

+[in]

nw_error

-

the 'NwError' field, given as a guint32.

-  +

the 'NwError' field, given as a guint32.

+[in]

error

@@ -2678,6 +2750,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -2705,48 +2778,48 @@

session_id

-

the 'SessionId' field, given as a guint32.

-  +

the 'SessionId' field, given as a guint32.

+[in]

activation_command

-

the 'ActivationCommand' field, given as a MbimActivationCommand.

-  +

the 'ActivationCommand' field, given as a MbimActivationCommand.

+[in]

access_string

-

the 'AccessString' field, given as a string.

-  +

the 'AccessString' field, given as a string.

+[in]

user_name

-

the 'UserName' field, given as a string.

-  +

the 'UserName' field, given as a string.

+[in]

password

-

the 'Password' field, given as a string.

-  +

the 'Password' field, given as a string.

+[in]

compression

-

the 'Compression' field, given as a MbimCompression.

-  +

the 'Compression' field, given as a MbimCompression.

+[in]

auth_protocol

-

the 'AuthProtocol' field, given as a MbimAuthProtocol.

-  +

the 'AuthProtocol' field, given as a MbimAuthProtocol.

+[in]

ip_type

-

the 'IpType' field, given as a MbimContextIpType.

-  +

the 'IpType' field, given as a MbimContextIpType.

+[in]

context_type

-

the 'ContextType' field, given as a MbimUuid.

-  +

the 'ContextType' field, given as a MbimUuid.

+[in]

error

@@ -2760,6 +2833,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -2790,34 +2864,34 @@

out_session_id

-

return location for a guint32, or NULL if the 'SessionId' field is not needed.

-  +

return location for a guint32, or NULL if the 'SessionId' field is not needed.

+[out][optional][transfer none]

out_activation_state

-

return location for a MbimActivationState, or NULL if the 'ActivationState' field is not needed.

-  +

return location for a MbimActivationState, or NULL if the 'ActivationState' field is not needed.

+[out][optional][transfer none]

out_voice_call_state

-

return location for a MbimVoiceCallState, or NULL if the 'VoiceCallState' field is not needed.

-  +

return location for a MbimVoiceCallState, or NULL if the 'VoiceCallState' field is not needed.

+[out][optional][transfer none]

out_ip_type

-

return location for a MbimContextIpType, or NULL if the 'IpType' field is not needed.

-  +

return location for a MbimContextIpType, or NULL if the 'IpType' field is not needed.

+[out][optional][transfer none]

out_context_type

return location for a MbimUuid, or NULL if the 'ContextType' field is not needed. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none]

out_nw_error

-

return location for a guint32, or NULL if the 'NwError' field is not needed.

-  +

return location for a guint32, or NULL if the 'NwError' field is not needed.

+[out][optional][transfer none]

error

@@ -2832,6 +2906,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -2863,34 +2938,34 @@

out_session_id

-

return location for a guint32, or NULL if the 'SessionId' field is not needed.

-  +

return location for a guint32, or NULL if the 'SessionId' field is not needed.

+[out][optional][transfer none]

out_activation_state

-

return location for a MbimActivationState, or NULL if the 'ActivationState' field is not needed.

-  +

return location for a MbimActivationState, or NULL if the 'ActivationState' field is not needed.

+[out][optional][transfer none]

out_voice_call_state

-

return location for a MbimVoiceCallState, or NULL if the 'VoiceCallState' field is not needed.

-  +

return location for a MbimVoiceCallState, or NULL if the 'VoiceCallState' field is not needed.

+[out][optional][transfer none]

out_ip_type

-

return location for a MbimContextIpType, or NULL if the 'IpType' field is not needed.

-  +

return location for a MbimContextIpType, or NULL if the 'IpType' field is not needed.

+[out][optional][transfer none]

out_context_type

return location for a MbimUuid, or NULL if the 'ContextType' field is not needed. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none]

out_nw_error

-

return location for a guint32, or NULL if the 'NwError' field is not needed.

-  +

return location for a guint32, or NULL if the 'NwError' field is not needed.

+[out][optional][transfer none]

error

@@ -2905,6 +2980,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -2932,6 +3008,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -2959,43 +3036,43 @@

context_id

-

the 'ContextId' field, given as a guint32.

-  +

the 'ContextId' field, given as a guint32.

+[in]

context_type

-

the 'ContextType' field, given as a MbimUuid.

-  +

the 'ContextType' field, given as a MbimUuid.

+[in]

access_string

-

the 'AccessString' field, given as a string.

-  +

the 'AccessString' field, given as a string.

+[in]

user_name

-

the 'UserName' field, given as a string.

-  +

the 'UserName' field, given as a string.

+[in]

password

-

the 'Password' field, given as a string.

-  +

the 'Password' field, given as a string.

+[in]

compression

-

the 'Compression' field, given as a MbimCompression.

-  +

the 'Compression' field, given as a MbimCompression.

+[in]

auth_protocol

-

the 'AuthProtocol' field, given as a MbimAuthProtocol.

-  +

the 'AuthProtocol' field, given as a MbimAuthProtocol.

+[in]

provider_id

-

the 'ProviderId' field, given as a string.

-  +

the 'ProviderId' field, given as a string.

+[in]

error

@@ -3009,6 +3086,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -3017,7 +3095,7 @@ mbim_message_provisioned_contexts_response_parse (const MbimMessage *message, guint32 *out_provisioned_contexts_count, - MbimProvisionedContextElement ***out_provisioned_contexts, + MbimProvisionedContextElementArray **out_provisioned_contexts, GError **error);

Parses and returns parameters of the 'Provisioned Contexts' response command in the 'Basic Connect' service.

@@ -3036,13 +3114,13 @@

out_provisioned_contexts_count

-

return location for a guint32, or NULL if the 'ProvisionedContextsCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ProvisionedContextsCount' field is not needed.

+[out][optional][transfer none]

out_provisioned_contexts

-

return location for a newly allocated array of MbimProvisionedContextElements, or NULL if the 'ProvisionedContexts' field is not needed. Free the returned value with mbim_provisioned_context_element_array_free().

-  +

return location for a newly allocated array of MbimProvisionedContextElements, or NULL if the 'ProvisionedContexts' field is not needed. Free the returned value with mbim_provisioned_context_element_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimProvisionedContextElement]

error

@@ -3057,6 +3135,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -3065,7 +3144,7 @@ mbim_message_provisioned_contexts_notification_parse (const MbimMessage *message, guint32 *out_provisioned_contexts_count, - MbimProvisionedContextElement ***out_provisioned_contexts, + MbimProvisionedContextElementArray **out_provisioned_contexts, GError **error);

Parses and returns parameters of the 'Provisioned Contexts' notification command in the 'Basic Connect' service.

@@ -3084,13 +3163,13 @@

out_provisioned_contexts_count

-

return location for a guint32, or NULL if the 'ProvisionedContextsCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ProvisionedContextsCount' field is not needed.

+[out][optional][transfer none]

out_provisioned_contexts

-

return location for a newly allocated array of MbimProvisionedContextElements, or NULL if the 'ProvisionedContexts' field is not needed. Free the returned value with mbim_provisioned_context_element_array_free().

-  +

return location for a newly allocated array of MbimProvisionedContextElements, or NULL if the 'ProvisionedContexts' field is not needed. Free the returned value with mbim_provisioned_context_element_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimProvisionedContextElement]

error

@@ -3105,6 +3184,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -3126,13 +3206,13 @@

buffer_size

-

size of the buffer array.

-  +

size of the buffer array.

+[in]

buffer

-

the 'Buffer' field, given as an array of guint8 values.

-  +

the 'Buffer' field, given as an array of guint8 values.

+[in][element-type guint8][array length=buffer_size]

error

@@ -3146,6 +3226,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.2


@@ -3174,19 +3255,19 @@

out_nw_error

-

return location for a MbimNwError, or NULL if the 'NwError' field is not needed.

-  +

return location for a MbimNwError, or NULL if the 'NwError' field is not needed.

+[out][optional][transfer none]

out_buffer_size

-

return location for the size of the buffer array.

-  +

return location for the size of the buffer array.

+[out][optional]

out_buffer

return location for an array of guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array length=out_buffer_size]

error

@@ -3201,6 +3282,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.2


@@ -3235,78 +3317,78 @@

session_id

-

the 'SessionId' field, given as a guint32.

-  +

the 'SessionId' field, given as a guint32.

+[in]

ipv4_configuration_available

-

the 'IPv4ConfigurationAvailable' field, given as a MbimIPConfigurationAvailableFlag.

-  +

the 'IPv4ConfigurationAvailable' field, given as a MbimIPConfigurationAvailableFlag.

+[in]

ipv6_configuration_available

-

the 'IPv6ConfigurationAvailable' field, given as a MbimIPConfigurationAvailableFlag.

-  +

the 'IPv6ConfigurationAvailable' field, given as a MbimIPConfigurationAvailableFlag.

+[in]

ipv4_address_count

-

the 'IPv4AddressCount' field, given as a guint32.

-  +

the 'IPv4AddressCount' field, given as a guint32.

+[in]

ipv4_address

-

the 'IPv4Address' field, given as an array of MbimIPv4Elements.

-  +

the 'IPv4Address' field, given as an array of MbimIPv4Elements.

+[in][array zero-terminated=1][element-type MbimIPv4Element]

ipv6_address_count

-

the 'IPv6AddressCount' field, given as a guint32.

-  +

the 'IPv6AddressCount' field, given as a guint32.

+[in]

ipv6_address

-

the 'IPv6Address' field, given as an array of MbimIPv6Elements.

-  +

the 'IPv6Address' field, given as an array of MbimIPv6Elements.

+[in][array zero-terminated=1][element-type MbimIPv6Element]

ipv4_gateway

-

the 'IPv4Gateway' field, given as a MbimIPv4.

-  +

the 'IPv4Gateway' field, given as a MbimIPv4.

+[in]

ipv6_gateway

-

the 'IPv6Gateway' field, given as a MbimIPv6.

-  +

the 'IPv6Gateway' field, given as a MbimIPv6.

+[in]

ipv4_dns_server_count

-

the 'IPv4DnsServerCount' field, given as a guint32.

-  +

the 'IPv4DnsServerCount' field, given as a guint32.

+[in]

ipv4_dns_server

-

the 'IPv4DnsServer' field, given as an array of MbimIPv4.

-  +

the 'IPv4DnsServer' field, given as an array of MbimIPv4.

+[in][array zero-terminated=1][element-type MbimIPv4]

ipv6_dns_server_count

-

the 'IPv6DnsServerCount' field, given as a guint32.

-  +

the 'IPv6DnsServerCount' field, given as a guint32.

+[in]

ipv6_dns_server

-

the 'IPv6DnsServer' field, given as an array of MbimIPv6.

-  +

the 'IPv6DnsServer' field, given as an array of MbimIPv6.

+[in][array zero-terminated=1][element-type MbimIPv6]

ipv4_mtu

-

the 'IPv4Mtu' field, given as a guint32.

-  +

the 'IPv4Mtu' field, given as a guint32.

+[in]

ipv6_mtu

-

the 'IPv6Mtu' field, given as a guint32.

-  +

the 'IPv6Mtu' field, given as a guint32.

+[in]

error

@@ -3320,6 +3402,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -3331,9 +3414,9 @@ MbimIPConfigurationAvailableFlag *out_ipv4_configuration_available, MbimIPConfigurationAvailableFlag *out_ipv6_configuration_available, guint32 *out_ipv4_address_count, - MbimIPv4Element ***out_ipv4_address, + MbimIPv4ElementArray **out_ipv4_address, guint32 *out_ipv6_address_count, - MbimIPv6Element ***out_ipv6_address, + MbimIPv6ElementArray **out_ipv6_address, const MbimIPv4 **out_ipv4_gateway, const MbimIPv6 **out_ipv6_gateway, guint32 *out_ipv4_dns_server_count, @@ -3360,80 +3443,80 @@

out_session_id

-

return location for a guint32, or NULL if the 'SessionId' field is not needed.

-  +

return location for a guint32, or NULL if the 'SessionId' field is not needed.

+[out][optional][transfer none]

out_ipv4_configuration_available

-

return location for a MbimIPConfigurationAvailableFlag, or NULL if the 'IPv4ConfigurationAvailable' field is not needed.

-  +

return location for a MbimIPConfigurationAvailableFlag, or NULL if the 'IPv4ConfigurationAvailable' field is not needed.

+[out][optional][transfer none]

out_ipv6_configuration_available

-

return location for a MbimIPConfigurationAvailableFlag, or NULL if the 'IPv6ConfigurationAvailable' field is not needed.

-  +

return location for a MbimIPConfigurationAvailableFlag, or NULL if the 'IPv6ConfigurationAvailable' field is not needed.

+[out][optional][transfer none]

out_ipv4_address_count

-

return location for a guint32, or NULL if the 'IPv4AddressCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv4AddressCount' field is not needed.

+[out][optional][transfer none]

out_ipv4_address

-

return location for a newly allocated array of MbimIPv4Elements, or NULL if the 'IPv4Address' field is not needed. Free the returned value with mbim_ipv4_element_array_free().

-  +

return location for a newly allocated array of MbimIPv4Elements, or NULL if the 'IPv4Address' field is not needed. Free the returned value with mbim_ipv4_element_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimIPv4Element]

out_ipv6_address_count

-

return location for a guint32, or NULL if the 'IPv6AddressCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv6AddressCount' field is not needed.

+[out][optional][transfer none]

out_ipv6_address

-

return location for a newly allocated array of MbimIPv6Elements, or NULL if the 'IPv6Address' field is not needed. Free the returned value with mbim_ipv6_element_array_free().

-  +

return location for a newly allocated array of MbimIPv6Elements, or NULL if the 'IPv6Address' field is not needed. Free the returned value with mbim_ipv6_element_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimIPv6Element]

out_ipv4_gateway

return location for a MbimIPv4, or NULL if the 'IPv4Gateway' field is not needed. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none]

out_ipv6_gateway

return location for a MbimIPv6, or NULL if the 'IPv6Gateway' field is not needed. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none]

out_ipv4_dns_server_count

-

return location for a guint32, or NULL if the 'IPv4DnsServerCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv4DnsServerCount' field is not needed.

+[out][optional][transfer none]

out_ipv4_dns_server

-

return location for a newly allocated array of MbimIPv4s, or NULL if the 'IPv4DnsServer' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated array of MbimIPv4s, or NULL if the 'IPv4DnsServer' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimIPv4]

out_ipv6_dns_server_count

-

return location for a guint32, or NULL if the 'IPv6DnsServerCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv6DnsServerCount' field is not needed.

+[out][optional][transfer none]

out_ipv6_dns_server

-

return location for a newly allocated array of MbimIPv6s, or NULL if the 'IPv6DnsServer' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated array of MbimIPv6s, or NULL if the 'IPv6DnsServer' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimIPv6]

out_ipv4_mtu

-

return location for a guint32, or NULL if the 'IPv4Mtu' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv4Mtu' field is not needed.

+[out][optional][transfer none]

out_ipv6_mtu

-

return location for a guint32, or NULL if the 'IPv6Mtu' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv6Mtu' field is not needed.

+[out][optional][transfer none]

error

@@ -3448,6 +3531,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -3459,9 +3543,9 @@ MbimIPConfigurationAvailableFlag *out_ipv4_configuration_available, MbimIPConfigurationAvailableFlag *out_ipv6_configuration_available, guint32 *out_ipv4_address_count, - MbimIPv4Element ***out_ipv4_address, + MbimIPv4ElementArray **out_ipv4_address, guint32 *out_ipv6_address_count, - MbimIPv6Element ***out_ipv6_address, + MbimIPv6ElementArray **out_ipv6_address, const MbimIPv4 **out_ipv4_gateway, const MbimIPv6 **out_ipv6_gateway, guint32 *out_ipv4_dns_server_count, @@ -3488,80 +3572,80 @@

out_session_id

-

return location for a guint32, or NULL if the 'SessionId' field is not needed.

-  +

return location for a guint32, or NULL if the 'SessionId' field is not needed.

+[out][optional][transfer none]

out_ipv4_configuration_available

-

return location for a MbimIPConfigurationAvailableFlag, or NULL if the 'IPv4ConfigurationAvailable' field is not needed.

-  +

return location for a MbimIPConfigurationAvailableFlag, or NULL if the 'IPv4ConfigurationAvailable' field is not needed.

+[out][optional][transfer none]

out_ipv6_configuration_available

-

return location for a MbimIPConfigurationAvailableFlag, or NULL if the 'IPv6ConfigurationAvailable' field is not needed.

-  +

return location for a MbimIPConfigurationAvailableFlag, or NULL if the 'IPv6ConfigurationAvailable' field is not needed.

+[out][optional][transfer none]

out_ipv4_address_count

-

return location for a guint32, or NULL if the 'IPv4AddressCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv4AddressCount' field is not needed.

+[out][optional][transfer none]

out_ipv4_address

-

return location for a newly allocated array of MbimIPv4Elements, or NULL if the 'IPv4Address' field is not needed. Free the returned value with mbim_ipv4_element_array_free().

-  +

return location for a newly allocated array of MbimIPv4Elements, or NULL if the 'IPv4Address' field is not needed. Free the returned value with mbim_ipv4_element_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimIPv4Element]

out_ipv6_address_count

-

return location for a guint32, or NULL if the 'IPv6AddressCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv6AddressCount' field is not needed.

+[out][optional][transfer none]

out_ipv6_address

-

return location for a newly allocated array of MbimIPv6Elements, or NULL if the 'IPv6Address' field is not needed. Free the returned value with mbim_ipv6_element_array_free().

-  +

return location for a newly allocated array of MbimIPv6Elements, or NULL if the 'IPv6Address' field is not needed. Free the returned value with mbim_ipv6_element_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimIPv6Element]

out_ipv4_gateway

return location for a MbimIPv4, or NULL if the 'IPv4Gateway' field is not needed. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none]

out_ipv6_gateway

return location for a MbimIPv6, or NULL if the 'IPv6Gateway' field is not needed. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none]

out_ipv4_dns_server_count

-

return location for a guint32, or NULL if the 'IPv4DnsServerCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv4DnsServerCount' field is not needed.

+[out][optional][transfer none]

out_ipv4_dns_server

-

return location for a newly allocated array of MbimIPv4s, or NULL if the 'IPv4DnsServer' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated array of MbimIPv4s, or NULL if the 'IPv4DnsServer' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimIPv4]

out_ipv6_dns_server_count

-

return location for a guint32, or NULL if the 'IPv6DnsServerCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv6DnsServerCount' field is not needed.

+[out][optional][transfer none]

out_ipv6_dns_server

-

return location for a newly allocated array of MbimIPv6s, or NULL if the 'IPv6DnsServer' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated array of MbimIPv6s, or NULL if the 'IPv6DnsServer' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimIPv6]

out_ipv4_mtu

-

return location for a guint32, or NULL if the 'IPv4Mtu' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv4Mtu' field is not needed.

+[out][optional][transfer none]

out_ipv6_mtu

-

return location for a guint32, or NULL if the 'IPv6Mtu' field is not needed.

-  +

return location for a guint32, or NULL if the 'IPv6Mtu' field is not needed.

+[out][optional][transfer none]

error

@@ -3576,6 +3660,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -3603,6 +3688,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0


@@ -3612,7 +3698,7 @@ (const MbimMessage *message, guint32 *out_device_services_count, guint32 *out_max_dss_sessions, - MbimDeviceServiceElement ***out_device_services, + MbimDeviceServiceElementArray **out_device_services, GError **error);

Parses and returns parameters of the 'Device Services' response command in the 'Basic Connect' service.

@@ -3631,18 +3717,18 @@

out_device_services_count

-

return location for a guint32, or NULL if the 'DeviceServicesCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'DeviceServicesCount' field is not needed.

+[out][optional][transfer none]

out_max_dss_sessions

-

return location for a guint32, or NULL if the 'MaxDssSessions' field is not needed.

-  +

return location for a guint32, or NULL if the 'MaxDssSessions' field is not needed.

+[out][optional][transfer none]

out_device_services

-

return location for a newly allocated array of MbimDeviceServiceElements, or NULL if the 'DeviceServices' field is not needed. Free the returned value with mbim_device_service_element_array_free().

-  +

return location for a newly allocated array of MbimDeviceServiceElements, or NULL if the 'DeviceServices' field is not needed. Free the returned value with mbim_device_service_element_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimDeviceServiceElement]

error

@@ -3657,6 +3743,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -3678,13 +3765,13 @@

events_count

-

the 'EventsCount' field, given as a guint32.

-  +

the 'EventsCount' field, given as a guint32.

+[in]

events

-

the 'Events' field, given as an array of MbimEventEntrys.

-  +

the 'Events' field, given as an array of MbimEventEntrys.

+[in]

error

@@ -3698,6 +3785,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.8


@@ -3706,7 +3794,7 @@ mbim_message_device_service_subscribe_list_response_parse (const MbimMessage *message, guint32 *out_events_count, - MbimEventEntry ***out_events, + MbimEventEntryArray **out_events, GError **error);

Parses and returns parameters of the 'Device Service Subscribe List' response command in the 'Basic Connect' service.

@@ -3725,13 +3813,13 @@

out_events_count

-

return location for a guint32, or NULL if the 'EventsCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'EventsCount' field is not needed.

+[out][optional][transfer none]

out_events

-

return location for a newly allocated array of MbimEventEntrys, or NULL if the 'Events' field is not needed. Free the returned value with mbim_event_entry_array_free().

-  +

return location for a newly allocated array of MbimEventEntrys, or NULL if the 'Events' field is not needed. Free the returned value with mbim_event_entry_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimEventEntry]

error

@@ -3746,6 +3834,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.8


@@ -3773,6 +3862,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -3806,43 +3896,43 @@

out_in_discards

-

return location for a guint32, or NULL if the 'InDiscards' field is not needed.

-  +

return location for a guint32, or NULL if the 'InDiscards' field is not needed.

+[out][optional][transfer none]

out_in_errors

-

return location for a guint32, or NULL if the 'InErrors' field is not needed.

-  +

return location for a guint32, or NULL if the 'InErrors' field is not needed.

+[out][optional][transfer none]

out_in_octets

-

return location for a guint64, or NULL if the 'InOctets' field is not needed.

-  +

return location for a guint64, or NULL if the 'InOctets' field is not needed.

+[out][optional][transfer none]

out_in_packets

-

return location for a guint64, or NULL if the 'InPackets' field is not needed.

-  +

return location for a guint64, or NULL if the 'InPackets' field is not needed.

+[out][optional][transfer none]

out_out_octets

-

return location for a guint64, or NULL if the 'OutOctets' field is not needed.

-  +

return location for a guint64, or NULL if the 'OutOctets' field is not needed.

+[out][optional][transfer none]

out_out_packets

-

return location for a guint64, or NULL if the 'OutPackets' field is not needed.

-  +

return location for a guint64, or NULL if the 'OutPackets' field is not needed.

+[out][optional][transfer none]

out_out_errors

-

return location for a guint32, or NULL if the 'OutErrors' field is not needed.

-  +

return location for a guint32, or NULL if the 'OutErrors' field is not needed.

+[out][optional][transfer none]

out_out_discards

-

return location for a guint32, or NULL if the 'OutDiscards' field is not needed.

-  +

return location for a guint32, or NULL if the 'OutDiscards' field is not needed.

+[out][optional][transfer none]

error

@@ -3857,6 +3947,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -3884,6 +3975,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -3904,8 +3996,8 @@

state

-

the 'State' field, given as a MbimNetworkIdleHintState.

-  +

the 'State' field, given as a MbimNetworkIdleHintState.

+[in]

error

@@ -3919,6 +4011,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -3945,8 +4038,8 @@

out_state

-

return location for a MbimNetworkIdleHintState, or NULL if the 'State' field is not needed.

-  +

return location for a MbimNetworkIdleHintState, or NULL if the 'State' field is not needed.

+[out][optional][transfer none]

error

@@ -3961,6 +4054,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -3987,6 +4081,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -4006,8 +4101,8 @@

state

-

the 'State' field, given as a MbimEmergencyModeState.

-  +

the 'State' field, given as a MbimEmergencyModeState.

+[in]

error

@@ -4021,6 +4116,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -4047,8 +4143,8 @@

out_state

-

return location for a MbimEmergencyModeState, or NULL if the 'State' field is not needed.

-  +

return location for a MbimEmergencyModeState, or NULL if the 'State' field is not needed.

+[out][optional][transfer none]

error

@@ -4063,6 +4159,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -4089,8 +4186,8 @@

out_state

-

return location for a MbimEmergencyModeState, or NULL if the 'State' field is not needed.

-  +

return location for a MbimEmergencyModeState, or NULL if the 'State' field is not needed.

+[out][optional][transfer none]

error

@@ -4105,6 +4202,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.8


@@ -4127,18 +4225,18 @@

session_id

-

the 'SessionId' field, given as a guint32.

-  +

the 'SessionId' field, given as a guint32.

+[in]

packet_filters_count

-

the 'PacketFiltersCount' field, given as a guint32.

-  +

the 'PacketFiltersCount' field, given as a guint32.

+[in]

packet_filters

-

the 'PacketFilters' field, given as an array of MbimPacketFilters.

-  +

the 'PacketFilters' field, given as an array of MbimPacketFilters.

+[in]

error

@@ -4152,6 +4250,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -4174,18 +4273,18 @@

session_id

-

the 'SessionId' field, given as a guint32.

-  +

the 'SessionId' field, given as a guint32.

+[in]

packet_filters_count

-

the 'PacketFiltersCount' field, given as a guint32.

-  +

the 'PacketFiltersCount' field, given as a guint32.

+[in]

packet_filters

-

the 'PacketFilters' field, given as an array of MbimPacketFilters.

-  +

the 'PacketFilters' field, given as an array of MbimPacketFilters.

+[in]

error

@@ -4199,6 +4298,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -4208,7 +4308,7 @@ (const MbimMessage *message, guint32 *out_session_id, guint32 *out_packet_filters_count, - MbimPacketFilter ***out_packet_filters, + MbimPacketFilterArray **out_packet_filters, GError **error);

Parses and returns parameters of the 'IP Packet Filters' response command in the 'Basic Connect' service.

@@ -4227,18 +4327,18 @@

out_session_id

-

return location for a guint32, or NULL if the 'SessionId' field is not needed.

-  +

return location for a guint32, or NULL if the 'SessionId' field is not needed.

+[out][optional][transfer none]

out_packet_filters_count

-

return location for a guint32, or NULL if the 'PacketFiltersCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'PacketFiltersCount' field is not needed.

+[out][optional][transfer none]

out_packet_filters

-

return location for a newly allocated array of MbimPacketFilters, or NULL if the 'PacketFilters' field is not needed. Free the returned value with mbim_packet_filter_array_free().

-  +

return location for a newly allocated array of MbimPacketFilters, or NULL if the 'PacketFilters' field is not needed. Free the returned value with mbim_packet_filter_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimPacketFilter]

error

@@ -4253,6 +4353,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -4280,6 +4381,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -4301,13 +4403,13 @@

providers_count

-

the 'ProvidersCount' field, given as a guint32.

-  +

the 'ProvidersCount' field, given as a guint32.

+[in]

providers

-

the 'Providers' field, given as an array of MbimProviders.

-  +

the 'Providers' field, given as an array of MbimProviders.

+[in]

error

@@ -4321,6 +4423,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -4329,7 +4432,7 @@ mbim_message_multicarrier_providers_response_parse (const MbimMessage *message, guint32 *out_providers_count, - MbimProvider ***out_providers, + MbimProviderArray **out_providers, GError **error);

Parses and returns parameters of the 'Multicarrier Providers' response command in the 'Basic Connect' service.

@@ -4348,13 +4451,13 @@

out_providers_count

-

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

+[out][optional][transfer none]

out_providers

-

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

-  +

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimProvider]

error

@@ -4369,6 +4472,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -4377,7 +4481,7 @@ mbim_message_multicarrier_providers_notification_parse (const MbimMessage *message, guint32 *out_providers_count, - MbimProvider ***out_providers, + MbimProviderArray **out_providers, GError **error);

Parses and returns parameters of the 'Multicarrier Providers' notification command in the 'Basic Connect' service.

@@ -4396,13 +4500,13 @@

out_providers_count

-

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ProvidersCount' field is not needed.

+[out][optional][transfer none]

out_providers

-

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

-  +

return location for a newly allocated array of MbimProviders, or NULL if the 'Providers' field is not needed. Free the returned value with mbim_provider_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimProvider]

error

@@ -4417,6 +4521,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.8

@@ -4462,6 +4567,7 @@
+

Since: 1.0


@@ -4517,6 +4623,15 @@
+

Since: 1.2

+ +
+
+

MbimProviderArray

+
typedef MbimProvider *MbimProviderArray;
+
+

A NULL-terminated array of MbimProvider elements.

+

Since: 1.24


@@ -4578,6 +4693,15 @@
+

Since: 1.0

+ +
+
+

MbimProvisionedContextElementArray

+
typedef MbimProvisionedContextElement *MbimProvisionedContextElementArray;
+
+

A NULL-terminated array of MbimProvisionedContextElement elements.

+

Since: 1.24


@@ -4609,6 +4733,15 @@
+

Since: 1.0

+ +
+
+

MbimIPv4ElementArray

+
typedef MbimIPv4Element *MbimIPv4ElementArray;
+
+

A NULL-terminated array of MbimIPv4Element elements.

+

Since: 1.24


@@ -4640,6 +4773,15 @@
+

Since: 1.0

+ +
+
+

MbimIPv6ElementArray

+
typedef MbimIPv6Element *MbimIPv6ElementArray;
+
+

A NULL-terminated array of MbimIPv6Element elements.

+

Since: 1.24


@@ -4689,6 +4831,15 @@
+

Since: 1.0

+ +
+
+

MbimDeviceServiceElementArray

+
typedef MbimDeviceServiceElement *MbimDeviceServiceElementArray;
+
+

A NULL-terminated array of MbimDeviceServiceElement elements.

+

Since: 1.24


@@ -4726,6 +4877,15 @@
+

Since: 1.4

+ +
+
+

MbimEventEntryArray

+
typedef MbimEventEntry *MbimEventEntryArray;
+
+

A NULL-terminated array of MbimEventEntry elements.

+

Since: 1.24


@@ -4763,10 +4923,19 @@
+

Since: 1.4

+ +
+
+

MbimPacketFilterArray

+
typedef MbimPacketFilter *MbimPacketFilterArray;
+
+

A NULL-terminated array of MbimPacketFilter elements.

+

Since: 1.24

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Command-IDs.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Command-IDs.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Command-IDs.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Command-IDs.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -296,6 +296,7 @@

Returns

TRUE if the command allows setting, FALSE otherwise.

+

Since: 1.0


@@ -330,6 +331,7 @@

Returns

TRUE if the command allows querying, FALSE otherwise.

+

Since: 1.0


@@ -364,6 +366,7 @@

Returns

TRUE if the command allows notifying, FALSE otherwise.

+

Since: 1.0


@@ -399,9 +402,9 @@

Returns

-

a constant string.

-

[transfer none]

+

a constant string.

+

Since: 1.0


@@ -428,8 +431,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.16


@@ -456,8 +460,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -484,8 +489,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -512,8 +518,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -540,8 +547,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -568,8 +576,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -596,8 +605,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -624,8 +634,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -652,8 +663,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -680,8 +692,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.8


@@ -708,8 +721,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.10


@@ -736,8 +750,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.14


@@ -765,8 +780,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.16


@@ -794,8 +810,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.18

@@ -857,6 +874,7 @@
+

Since: 1.16


@@ -993,7 +1011,7 @@

MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST

-

Device service subscribe list.

+

Device service subscribe list. Since 1.8.

  @@ -1035,6 +1053,7 @@
+

Since: 1.0


@@ -1094,6 +1113,7 @@
+

Since: 1.0


@@ -1111,7 +1131,7 @@

MBIM_CID_USSD_UNKNOWN

-

Unknown command.

+

Unknown command. Since 1.4.

  @@ -1125,6 +1145,7 @@
+

Since: 1.0


@@ -1177,6 +1198,7 @@
+

Since: 1.0


@@ -1222,6 +1244,7 @@
+

Since: 1.0


@@ -1267,6 +1290,7 @@
+

Since: 1.0


@@ -1298,6 +1322,7 @@
+

Since: 1.0


@@ -1329,6 +1354,7 @@
+

Since: 1.8


@@ -1360,6 +1386,7 @@
+

Since: 1.8


@@ -1391,6 +1418,7 @@
+

Since: 1.10


@@ -1422,6 +1450,7 @@
+

Since: 1.14


@@ -1453,6 +1482,7 @@
+

Since: 1.16


@@ -1547,10 +1577,11 @@
+

Since: 1.18

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Common-utilities.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Common-utilities.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Common-utilities.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Common-utilities.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -74,6 +74,7 @@

Returns

TRUE if traces are enabled, FALSE otherwise.

+

Since: 1.0


@@ -96,10 +97,11 @@
+

Since: 1.0

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-DSS.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-DSS.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-DSS.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-DSS.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -82,18 +82,18 @@

device_service_id

-

the 'DeviceServiceId' field, given as a MbimUuid.

-  +

the 'DeviceServiceId' field, given as a MbimUuid.

+[in]

dss_session_id

-

the 'DssSessionId' field, given as a guint32.

-  +

the 'DssSessionId' field, given as a guint32.

+[in]

dss_link_state

-

the 'DssLinkState' field, given as a MbimDssLinkState.

-  +

the 'DssLinkState' field, given as a MbimDssLinkState.

+[in]

error

@@ -107,6 +107,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -143,10 +144,11 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Deprecated-API.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Deprecated-API.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Deprecated-API.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Deprecated-API.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -92,7 +92,7 @@ MbimEventEntry ***events, GError **error);
-

mbim_message_device_service_subscriber_list_response_parse has been deprecated since version 1.8.0 and should not be used in newly-written code.

+

mbim_message_device_service_subscriber_list_response_parse has been deprecated since version 1.8 and should not be used in newly-written code.

Use mbim_message_device_service_subscribe_list_response_parse() instead.

Create a new request for the 'Events' response command in the 'Basic Connect' service.

@@ -133,6 +133,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.0


@@ -143,7 +144,7 @@ const MbimEventEntry *const *events, GError **error);
-

mbim_message_device_service_subscriber_list_set_new has been deprecated since version 1.8.0 and should not be used in newly-written code.

+

mbim_message_device_service_subscriber_list_set_new has been deprecated since version 1.8 and should not be used in newly-written code.

Use mbim_message_device_service_subscribe_list_set_new() instead.

Create a new request for the 'Device Service Subscribe List' set command in the 'Basic Connect' service.

@@ -178,6 +179,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.0

@@ -187,10 +189,11 @@
#define MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBER_LIST (MbimDeprecatedCidBasicConnect) MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST
 
-

MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBER_LIST has been deprecated since version 1.8.0 and should not be used in newly-written code.

+

MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBER_LIST has been deprecated since version 1.8 and should not be used in newly-written code.

Use MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST instead.

Device service subscribe list.

+

Since: 1.0


@@ -198,14 +201,15 @@
#define MBIM_REGISTRATION_FLAG_MANUAL_PACKET_SERVICE_AUTOMATIC_ATTACH (MbimDeprecatedRegistrationFlag) MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH
 
-

MBIM_REGISTRATION_FLAG_MANUAL_PACKET_SERVICE_AUTOMATIC_ATTACH has been deprecated since version 1.8.0 and should not be used in newly-written code.

+

MBIM_REGISTRATION_FLAG_MANUAL_PACKET_SERVICE_AUTOMATIC_ATTACH has been deprecated since version 1.8 and should not be used in newly-written code.

Use MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH instead.

Modem should auto-attach to the network after registration.

+

Since: 1.0

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Enumerations-and-Flags.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Enumerations-and-Flags.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Enumerations-and-Flags.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Enumerations-and-Flags.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -763,8 +763,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -793,8 +794,9 @@

Returns

a string with the list of nicknames, or NULL if none given. The returned value should be freed with g_free().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -821,8 +823,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -850,8 +853,9 @@

Returns

a string with the list of nicknames, or NULL if none given. The returned value should be freed with g_free().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -880,8 +884,9 @@

Returns

a string with the list of nicknames, or NULL if none given. The returned value should be freed with g_free().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -909,8 +914,9 @@

Returns

a string with the list of nicknames, or NULL if none given. The returned value should be freed with g_free().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -938,8 +944,9 @@

Returns

a string with the list of nicknames, or NULL if none given. The returned value should be freed with g_free().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -967,8 +974,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -997,8 +1005,9 @@

Returns

a string with the list of nicknames, or NULL if none given. The returned value should be freed with g_free().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -1025,8 +1034,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1053,8 +1063,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1081,8 +1092,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1109,8 +1121,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1137,8 +1150,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1165,8 +1179,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1195,8 +1210,9 @@

Returns

a string with the list of nicknames, or NULL if none given. The returned value should be freed with g_free().

-

[transfer full]

+

[transfer full]

+

Since: 1.2


@@ -1224,8 +1240,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.2


@@ -1252,8 +1269,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1280,8 +1298,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1308,8 +1327,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1336,8 +1356,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1364,8 +1385,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1392,8 +1414,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1420,8 +1443,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1448,8 +1472,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1476,8 +1501,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1504,8 +1530,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1532,8 +1559,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1560,8 +1588,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -1590,8 +1619,9 @@

Returns

a string with the list of nicknames, or NULL if none given. The returned value should be freed with g_free().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -1618,8 +1648,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1646,8 +1677,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1674,8 +1706,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1702,8 +1735,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1730,8 +1764,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1758,8 +1793,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1786,8 +1822,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1814,8 +1851,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1842,8 +1880,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1870,8 +1909,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1898,8 +1938,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1926,8 +1967,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1954,8 +1996,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -1982,8 +2025,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -2010,8 +2054,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -2039,8 +2084,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -2067,8 +2113,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -2095,8 +2142,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.4


@@ -2124,8 +2172,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.16


@@ -2152,8 +2201,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.16


@@ -2180,8 +2230,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.18


@@ -2208,8 +2259,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.18


@@ -2237,8 +2289,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.18


@@ -2266,8 +2319,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.18


@@ -2294,8 +2348,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.18

@@ -2336,6 +2391,7 @@
+

Since: 1.16


@@ -2381,6 +2437,7 @@
+

Since: 1.16


@@ -2426,6 +2483,7 @@
+

Since: 1.0


@@ -2457,6 +2515,7 @@
+

Since: 1.0


@@ -2502,6 +2561,7 @@
+

Since: 1.0


@@ -2533,6 +2593,7 @@
+

Since: 1.0


@@ -2648,6 +2709,7 @@
+

Since: 1.0


@@ -2693,6 +2755,7 @@
+

Since: 1.0


@@ -2745,6 +2808,7 @@
+

Since: 1.0


@@ -2811,10 +2875,12 @@
+

Since: 1.0


enum MbimReadyInfoFlag

+

Flag specifying how the ready info is treated.

Members

@@ -2827,7 +2893,7 @@ @@ -2841,6 +2907,7 @@

MBIM_READY_INFO_FLAG_NONE

-

Device in normal mode.

+

Device in normal mode. Since 1.16.

 
+

Since: 1.0


@@ -2872,6 +2939,7 @@
+

Since: 1.0


@@ -3015,6 +3083,7 @@
+

Since: 1.0


@@ -3046,10 +3115,12 @@
+

Since: 1.0


enum MbimPinOperation

+

Operation to perform on the PIN.

Members

@@ -3090,6 +3161,7 @@
+

Since: 1.0


@@ -3128,6 +3200,7 @@
+

Since: 1.0


@@ -3166,6 +3239,7 @@
+

Since: 1.0


@@ -3232,6 +3306,7 @@
+

Since: 1.2


@@ -3263,6 +3338,7 @@
+

Since: 1.2


@@ -3294,7 +3370,7 @@

MBIM_NW_ERROR_ILLEGAL_MS

-

Illegal MS.

+

Illegal MS. Since 1.10.

  @@ -3308,7 +3384,7 @@

MBIM_NW_ERROR_IMEI_NOT_ACCEPTED

-

IMEI not accepted.

+

IMEI not accepted. Since 1.10.

  @@ -3336,14 +3412,14 @@

MBIM_NW_ERROR_MS_IDENTITY_NOT_DERIVED_BY_NETWORK

-

MS identity cannot be derived by the network.

+

MS identity cannot be derived by the network. Since 1.10.

 

MBIM_NW_ERROR_IMPLICITLY_DETACHED

-

Implicitly detached.

+

Implicitly detached. Since 1.10.

  @@ -3385,7 +3461,7 @@

MBIM_NW_ERROR_MSC_TEMPORARILY_NOT_REACHABLE

-

MSC temporarily not reachable.

+

MSC temporarily not reachable. Since 1.10.

  @@ -3399,14 +3475,14 @@

MBIM_NW_ERROR_MAC_FAILURE

-

MAC failure.

+

MAC failure. Since 1.10.

 

MBIM_NW_ERROR_SYNCH_FAILURE

-

Synch failure.

+

Synch failure. Since 1.10.

  @@ -3420,188 +3496,189 @@

MBIM_NW_ERROR_GSM_AUTHENTICATION_UNACCEPTABLE

-

GSM authentication unacceptable.

+

GSM authentication unacceptable. Since 1.10.

 

MBIM_NW_ERROR_NOT_AUTHORIZED_FOR_CSG

-

Not authorized for this CSG.

+

Not authorized for this CSG. Since 1.10.

 

MBIM_NW_ERROR_INSUFFICIENT_RESOURCES

-

Insufficient resources.

+

Insufficient resources. Since 1.18.

 

MBIM_NW_ERROR_MISSING_OR_UNKNOWN_APN

-

Missing or unknown access point name.

+

Missing or unknown access point name. Since 1.10.

 

MBIM_NW_ERROR_UNKNOWN_PDP_ADDRESS_OR_TYPE

-

Unknown PDP address or PDP type.

+

Unknown PDP address or PDP type. Since 1.18.

 

MBIM_NW_ERROR_USER_AUTHENTICATION_FAILED

-

User authentication failed.

+

User authentication failed. Since 1.18.

 

MBIM_NW_ERROR_ACTIVATION_REJECTED_BY_GGSN_OR_GW

-

Activation rejected by GGSN, Serving GW or PDN GW.

+

Activation rejected by GGSN, Serving GW or PDN GW. Since 1.18.

 

MBIM_NW_ERROR_ACTIVATION_REJECTED_UNSPECIFIED

-

Activation rejected, unspecified.

+

Activation rejected, unspecified. Since 1.18.

 

MBIM_NW_ERROR_SERVICE_OPTION_NOT_SUPPORTED

-

Service option not supported.

+

Service option not supported. Since 1.10.

 

MBIM_NW_ERROR_REQUESTED_SERVICE_OPTION_NOT_SUBSCRIBED

-

Requested service option not subscribed.

+

Requested service option not subscribed. Since 1.10.

 

MBIM_NW_ERROR_SERVICE_OPTION_TEMPORARILY_OUT_OF_ORDER

-

Service option temporarily out of order.

+

Service option temporarily out of order. Since 1.10.

 

MBIM_NW_ERROR_NO_PDP_CONTEXT_ACTIVATED

-

No PDP context activated.

+

No PDP context activated. Since 1.10.

 

MBIM_NW_ERROR_PDP_TYPE_IPV4_ONLY_ALLOWED

-

PDP type IPv4 only allowed.

+

PDP type IPv4 only allowed. Since 1.18.

 

MBIM_NW_ERROR_PDP_TYPE_IPV6_ONLY_ALLOWED

-

PDP type IPv6 only allowed.

+

PDP type IPv6 only allowed. Since 1.18.

 

MBIM_NW_ERROR_MAXIMUM_NUMBER_OF_PDP_CONTEXTS_REACHED

-

Maximum number of PDP contexts reached.

+

Maximum number of PDP contexts reached. Since 1.18.

 

MBIM_NW_ERROR_REQUESTED_APN_NOT_SUPPORTED_IN_CURRENT_RAT_AND_PLMN

-

Requested APN not supported in current RAT and PLMN combination.

+

Requested APN not supported in current RAT and PLMN combination. Since 1.18.

 

MBIM_NW_ERROR_SEMANTICALLY_INCORRECT_MESSAGE

-

Semantically incorrect message.

+

Semantically incorrect message. Since 1.10.

 

MBIM_NW_ERROR_INVALID_MANDATORY_INFORMATION

-

Invalid mandatory information.

+

Invalid mandatory information. Since 1.10.

 

MBIM_NW_ERROR_MESSAGE_TYPE_NON_EXISTENT_OR_NOT_IMPLEMENTED

-

Message type non-existent or not implemented.

+

Message type non-existent or not implemented. Since 1.10.

 

MBIM_NW_ERROR_MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE

-

Message type not compatible with protocol state.

+

Message type not compatible with protocol state. Since 1.10.

 

MBIM_NW_ERROR_INFORMATION_ELEMENT_NON_EXISTENT_OR_NOT_IMPLEMENTED

-

Information element non-existent or not implemented.

+

Information element non-existent or not implemented. Since 1.10.

 

MBIM_NW_ERROR_CONDITIONAL_IE_ERROR

-

Conditional IE error.

+

Conditional IE error. Since 1.10.

 

MBIM_NW_ERROR_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE

-

Message not compatible with protocol state.

+

Message not compatible with protocol state. Since 1.10.

 

MBIM_NW_ERROR_PROTOCOL_ERROR_UNSPECIFIED

-

Protocol error, unspecified.

+

Protocol error, unspecified. Since 1.10.

 

MBIM_NW_ERROR_APN_RESTRICTION_VALUE_INCOMPATIBLE_WITH_ACTIVE_PDP_CONTEXT

-

APN restriction value incompatible with active PDP context.

+

APN restriction value incompatible with active PDP context. Since 1.18.

 

MBIM_NW_ERROR_MULTIPLE_ACCESSES_TO_A_PDN_CONNECTION_NOT_ALLOWED

-

Multiple accesses to a PDN connection not allowed.

+

Multiple accesses to a PDN connection not allowed. Since 1.18.

 
+

Since: 1.0


@@ -3633,6 +3710,7 @@
+

Since: 1.0


@@ -3699,6 +3777,7 @@
+

Since: 1.0


@@ -3737,6 +3816,7 @@
+

Since: 1.0


@@ -3768,13 +3848,14 @@

MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH

-

Modem should auto-attach to the network after registration.

+

Modem should auto-attach to the network after registration. Since 1.8.

 
+

Since: 1.0


@@ -3806,6 +3887,7 @@
+

Since: 1.0


@@ -3858,6 +3940,7 @@
+

Since: 1.0


@@ -3889,6 +3972,7 @@
+

Since: 1.0


@@ -3920,6 +4004,7 @@
+

Since: 1.0


@@ -3965,6 +4050,7 @@
+

Since: 1.0


@@ -4017,6 +4103,7 @@
+

Since: 1.0


@@ -4069,6 +4156,7 @@
+

Since: 1.0


@@ -4107,6 +4195,7 @@
+

Since: 1.0


@@ -4159,6 +4248,7 @@
+

Since: 1.0


@@ -4190,6 +4280,7 @@
+

Since: 1.4


@@ -4221,6 +4312,7 @@
+

Since: 1.4


@@ -4283,6 +4375,7 @@
+

Since: 1.4


@@ -4356,6 +4449,7 @@
+

Since: 1.4


@@ -4443,6 +4537,7 @@
+

Since: 1.4


@@ -4488,6 +4583,7 @@
+

Since: 1.4


@@ -4526,6 +4622,7 @@
+

Since: 1.4


@@ -4564,6 +4661,7 @@
+

Since: 1.4


@@ -4623,6 +4721,7 @@
+

Since: 1.4


@@ -4654,6 +4753,7 @@
+

Since: 1.4


@@ -4685,6 +4785,7 @@
+

Since: 1.4


@@ -4716,6 +4817,7 @@
+

Since: 1.4


@@ -4747,6 +4849,7 @@
+

Since: 1.4


@@ -4820,6 +4923,7 @@
+

Since: 1.4


@@ -4851,6 +4955,7 @@
+

Since: 1.4


@@ -4882,6 +4987,7 @@
+

Since: 1.4


@@ -4913,6 +5019,7 @@
+

Since: 1.4


@@ -4944,6 +5051,7 @@
+

Since: 1.4


@@ -4975,6 +5083,7 @@
+

Since: 1.18


@@ -5027,6 +5136,7 @@
+

Since: 1.18


@@ -5058,10 +5168,12 @@
+

Since: 1.18


enum MbimLteAttachContextRoamingControl

+

Type of roaming control.

Members

@@ -5095,6 +5207,7 @@
+

Since: 1.18


@@ -5126,10 +5239,11 @@
+

Since: 1.18

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Errors.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Errors.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Errors.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Errors.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -125,7 +125,7 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]


@@ -153,7 +153,7 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]


@@ -181,7 +181,7 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

@@ -251,13 +251,14 @@

MBIM_CORE_ERROR_UNKNOWN_STATE

-

State is unknown.

+

State is unknown. Since 1.16.

  +

Since: 1.0


@@ -338,6 +339,7 @@
+

Since: 1.0


@@ -614,7 +616,7 @@

MBIM_STATUS_ERROR_CONTEXT_NOT_SUPPORTED

-

ContextType not supported by the operation.

+

ContextType not supported by the operation. Since 1.16.

  @@ -656,10 +658,11 @@
+

Since: 1.0

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Intel-Firmware-Update.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Intel-Firmware-Update.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Intel-Firmware-Update.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Intel-Firmware-Update.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -78,10 +78,11 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.16

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-MS-Firmware-ID.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-MS-Firmware-ID.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-MS-Firmware-ID.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-MS-Firmware-ID.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -88,6 +88,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.8


@@ -115,8 +116,8 @@

out_firmware_id

return location for a MbimUuid, or NULL if the 'FirmwareId' field is not needed. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none]

error

@@ -131,10 +132,11 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.8

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-MS-Host-Shutdown.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-MS-Host-Shutdown.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-MS-Host-Shutdown.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-MS-Host-Shutdown.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -78,10 +78,11 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.8

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Ms-Basic-Connect-Extensions.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Ms-Basic-Connect-Extensions.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Ms-Basic-Connect-Extensions.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Ms-Basic-Connect-Extensions.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -163,6 +163,10 @@ MbimLteAttachConfiguration +typedef +MbimLteAttachConfigurationArray + +   MbimLteAttachStatus @@ -194,13 +198,14 @@ +

Since: 1.18


mbim_lte_attach_configuration_array_free ()

void
 mbim_lte_attach_configuration_array_free
-                               (MbimLteAttachConfiguration **array);
+ (MbimLteAttachConfigurationArray *array);

Frees the memory allocated for the array of MbimLteAttachConfigurations.

Parameters

@@ -217,6 +222,7 @@
+

Since: 1.18


@@ -239,6 +245,7 @@
+

Since: 1.18


@@ -259,8 +266,8 @@

pco_value

-

the 'PcoValue' field, given as a MbimPcoValue.

-  +

the 'PcoValue' field, given as a MbimPcoValue.

+[in]

error

@@ -274,6 +281,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.18


@@ -300,8 +308,8 @@

out_pco_value

-

return location for a newly allocated MbimPcoValue, or NULL if the 'PcoValue' field is not needed. Free the returned value with mbim_pco_value_free().

-  +

return location for a newly allocated MbimPcoValue, or NULL if the 'PcoValue' field is not needed. Free the returned value with mbim_pco_value_free().

+[out][optional][transfer full]

error

@@ -316,6 +324,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.18


@@ -342,8 +351,8 @@

out_pco_value

-

return location for a newly allocated MbimPcoValue, or NULL if the 'PcoValue' field is not needed. Free the returned value with mbim_pco_value_free().

-  +

return location for a newly allocated MbimPcoValue, or NULL if the 'PcoValue' field is not needed. Free the returned value with mbim_pco_value_free().

+[out][optional][transfer full]

error

@@ -358,6 +367,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.18


@@ -385,6 +395,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.18


@@ -407,18 +418,18 @@

operation

-

the 'Operation' field, given as a MbimLteAttachContextOperation.

-  +

the 'Operation' field, given as a MbimLteAttachContextOperation.

+[in]

configuration_count

-

the 'ConfigurationCount' field, given as a guint32.

-  +

the 'ConfigurationCount' field, given as a guint32.

+[in]

configurations

-

the 'Configurations' field, given as an array of MbimLteAttachConfigurations.

-  +

the 'Configurations' field, given as an array of MbimLteAttachConfigurations.

+[in]

error

@@ -432,6 +443,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.18


@@ -440,7 +452,7 @@ mbim_message_ms_basic_connect_extensions_lte_attach_configuration_response_parse (const MbimMessage *message, guint32 *out_configuration_count, - MbimLteAttachConfiguration ***out_configurations, + MbimLteAttachConfigurationArray **out_configurations, GError **error);

Parses and returns parameters of the 'Lte Attach Configuration' response command in the 'Ms Basic Connect Extensions' service.

@@ -459,13 +471,13 @@

out_configuration_count

-

return location for a guint32, or NULL if the 'ConfigurationCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ConfigurationCount' field is not needed.

+[out][optional][transfer none]

out_configurations

-

return location for a newly allocated array of MbimLteAttachConfigurations, or NULL if the 'Configurations' field is not needed. Free the returned value with mbim_lte_attach_configuration_array_free().

-  +

return location for a newly allocated array of MbimLteAttachConfigurations, or NULL if the 'Configurations' field is not needed. Free the returned value with mbim_lte_attach_configuration_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimLteAttachConfiguration]

error

@@ -480,6 +492,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.18


@@ -488,7 +501,7 @@ mbim_message_ms_basic_connect_extensions_lte_attach_configuration_notification_parse (const MbimMessage *message, guint32 *out_configuration_count, - MbimLteAttachConfiguration ***out_configurations, + MbimLteAttachConfigurationArray **out_configurations, GError **error);

Parses and returns parameters of the 'Lte Attach Configuration' notification command in the 'Ms Basic Connect Extensions' service.

@@ -507,13 +520,13 @@

out_configuration_count

-

return location for a guint32, or NULL if the 'ConfigurationCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'ConfigurationCount' field is not needed.

+[out][optional][transfer none]

out_configurations

-

return location for a newly allocated array of MbimLteAttachConfigurations, or NULL if the 'Configurations' field is not needed. Free the returned value with mbim_lte_attach_configuration_array_free().

-  +

return location for a newly allocated array of MbimLteAttachConfigurations, or NULL if the 'Configurations' field is not needed. Free the returned value with mbim_lte_attach_configuration_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimLteAttachConfiguration]

error

@@ -528,6 +541,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.18


@@ -555,6 +569,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.18


@@ -581,8 +596,8 @@

out_lte_attach_status

-

return location for a newly allocated MbimLteAttachStatus, or NULL if the 'LteAttachStatus' field is not needed. Free the returned value with mbim_lte_attach_status_free().

-  +

return location for a newly allocated MbimLteAttachStatus, or NULL if the 'LteAttachStatus' field is not needed. Free the returned value with mbim_lte_attach_status_free().

+[out][optional][transfer full]

error

@@ -597,6 +612,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.18


@@ -623,8 +639,8 @@

out_lte_attach_status

-

return location for a newly allocated MbimLteAttachStatus, or NULL if the 'LteAttachStatus' field is not needed. Free the returned value with mbim_lte_attach_status_free().

-  +

return location for a newly allocated MbimLteAttachStatus, or NULL if the 'LteAttachStatus' field is not needed. Free the returned value with mbim_lte_attach_status_free().

+[out][optional][transfer full]

error

@@ -639,6 +655,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.18

@@ -684,6 +701,7 @@
+

Since: 1.18


@@ -751,6 +769,15 @@
+

Since: 1.18

+ +
+
+

MbimLteAttachConfigurationArray

+
typedef MbimLteAttachConfiguration *MbimLteAttachConfigurationArray;
+
+

A NULL-terminated array of MbimLteAttachConfiguration elements.

+

Since: 1.24


@@ -812,10 +839,11 @@
+

Since: 1.18

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Phonebook.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Phonebook.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Phonebook.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Phonebook.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -129,10 +129,16 @@ - + +   MbimPhonebookEntry - + + +typedef +MbimPhonebookEntryArray + +
@@ -143,7 +149,7 @@

mbim_phonebook_entry_array_free ()

void
-mbim_phonebook_entry_array_free (MbimPhonebookEntry **array);
+mbim_phonebook_entry_array_free (MbimPhonebookEntryArray *array);

Frees the memory allocated for the array of MbimPhonebookEntrys.

Parameters

@@ -160,6 +166,7 @@
+

Since: 1.4


@@ -187,6 +194,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -217,28 +225,28 @@

out_state

-

return location for a MbimPhonebookState, or NULL if the 'State' field is not needed.

-  +

return location for a MbimPhonebookState, or NULL if the 'State' field is not needed.

+[out][optional][transfer none]

out_number_of_entries

-

return location for a guint32, or NULL if the 'NumberOfEntries' field is not needed.

-  +

return location for a guint32, or NULL if the 'NumberOfEntries' field is not needed.

+[out][optional][transfer none]

out_used_entries

-

return location for a guint32, or NULL if the 'UsedEntries' field is not needed.

-  +

return location for a guint32, or NULL if the 'UsedEntries' field is not needed.

+[out][optional][transfer none]

out_max_number_length

-

return location for a guint32, or NULL if the 'MaxNumberLength' field is not needed.

-  +

return location for a guint32, or NULL if the 'MaxNumberLength' field is not needed.

+[out][optional][transfer none]

out_max_name

-

return location for a guint32, or NULL if the 'MaxName' field is not needed.

-  +

return location for a guint32, or NULL if the 'MaxName' field is not needed.

+[out][optional][transfer none]

error

@@ -253,6 +261,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -283,28 +292,28 @@

out_state

-

return location for a MbimPhonebookState, or NULL if the 'State' field is not needed.

-  +

return location for a MbimPhonebookState, or NULL if the 'State' field is not needed.

+[out][optional][transfer none]

out_number_of_entries

-

return location for a guint32, or NULL if the 'NumberOfEntries' field is not needed.

-  +

return location for a guint32, or NULL if the 'NumberOfEntries' field is not needed.

+[out][optional][transfer none]

out_used_entries

-

return location for a guint32, or NULL if the 'UsedEntries' field is not needed.

-  +

return location for a guint32, or NULL if the 'UsedEntries' field is not needed.

+[out][optional][transfer none]

out_max_number_length

-

return location for a guint32, or NULL if the 'MaxNumberLength' field is not needed.

-  +

return location for a guint32, or NULL if the 'MaxNumberLength' field is not needed.

+[out][optional][transfer none]

out_max_name

-

return location for a guint32, or NULL if the 'MaxName' field is not needed.

-  +

return location for a guint32, or NULL if the 'MaxName' field is not needed.

+[out][optional][transfer none]

error

@@ -319,6 +328,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -339,13 +349,13 @@

filter_flag

-

the 'FilterFlag' field, given as a MbimPhonebookFlag.

-  +

the 'FilterFlag' field, given as a MbimPhonebookFlag.

+[in]

filter_message_index

-

the 'FilterMessageIndex' field, given as a guint32.

-  +

the 'FilterMessageIndex' field, given as a guint32.

+[in]

error

@@ -359,6 +369,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -367,7 +378,7 @@ mbim_message_phonebook_read_response_parse (const MbimMessage *message, guint32 *out_entry_count, - MbimPhonebookEntry ***out_entries, + MbimPhonebookEntryArray **out_entries, GError **error);

Parses and returns parameters of the 'Read' response command in the 'Phonebook' service.

@@ -386,13 +397,13 @@

out_entry_count

-

return location for a guint32, or NULL if the 'EntryCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'EntryCount' field is not needed.

+[out][optional][transfer none]

out_entries

-

return location for a newly allocated array of MbimPhonebookEntrys, or NULL if the 'Entries' field is not needed. Free the returned value with mbim_phonebook_entry_array_free().

-  +

return location for a newly allocated array of MbimPhonebookEntrys, or NULL if the 'Entries' field is not needed. Free the returned value with mbim_phonebook_entry_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimPhonebookEntry]

error

@@ -407,6 +418,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -427,13 +439,13 @@

filter_flag

-

the 'FilterFlag' field, given as a MbimPhonebookFlag.

-  +

the 'FilterFlag' field, given as a MbimPhonebookFlag.

+[in]

filter_message_index

-

the 'FilterMessageIndex' field, given as a guint32.

-  +

the 'FilterMessageIndex' field, given as a guint32.

+[in]

error

@@ -447,6 +459,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -483,6 +496,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -505,23 +519,23 @@

save_flag

-

the 'SaveFlag' field, given as a MbimPhonebookWriteFlag.

-  +

the 'SaveFlag' field, given as a MbimPhonebookWriteFlag.

+[in]

save_index

-

the 'SaveIndex' field, given as a guint32.

-  +

the 'SaveIndex' field, given as a guint32.

+[in]

number

-

the 'Number' field, given as a string.

-  +

the 'Number' field, given as a string.

+[in]

name

-

the 'Name' field, given as a string.

-  +

the 'Name' field, given as a string.

+[in]

error

@@ -535,6 +549,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -571,6 +586,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4

@@ -610,10 +626,19 @@
+

Since: 1.4

+ +
+
+

MbimPhonebookEntryArray

+
typedef MbimPhonebookEntry *MbimPhonebookEntryArray;
+
+

A NULL-terminated array of MbimPhonebookEntry elements.

+

Since: 1.24

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-QMI.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-QMI.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-QMI.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-QMI.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -89,13 +89,13 @@

qmi_msg_size

-

size of the qmi_msg array.

-  +

size of the qmi_msg array.

+[in]

qmi_msg

-

the 'QmiMsg' field, given as an array of guint8 values.

-  +

the 'QmiMsg' field, given as an array of guint8 values.

+[in][element-type guint8][array length=qmi_msg_size]

error

@@ -109,6 +109,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.14


@@ -135,14 +136,14 @@

out_qmux_size

-

return location for the size of the qmux array.

-  +

return location for the size of the qmux array.

+[out][optional]

out_qmux

return location for an array of guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array length=out_qmux_size]

error

@@ -157,6 +158,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.14


@@ -184,14 +186,14 @@

out_qmux_size

-

return location for the size of the qmux array.

-  +

return location for the size of the qmux array.

+[out][optional]

out_qmux

return location for an array of guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array length=out_qmux_size]

error

@@ -206,10 +208,11 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.18

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-SMS.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-SMS.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-SMS.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-SMS.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -191,10 +191,18 @@ MbimSmsPduReadRecord +typedef +MbimSmsPduReadRecordArray + +   MbimSmsCdmaReadRecord +typedef +MbimSmsCdmaReadRecordArray + +   MbimSmsPduSendRecord @@ -213,7 +221,7 @@

mbim_sms_pdu_read_record_array_free ()

void
-mbim_sms_pdu_read_record_array_free (MbimSmsPduReadRecord **array);
+mbim_sms_pdu_read_record_array_free (MbimSmsPduReadRecordArray *array);

Frees the memory allocated for the array of MbimSmsPduReadRecords.

Parameters

@@ -230,12 +238,13 @@
+

Since: 1.4


mbim_sms_cdma_read_record_array_free ()

void
-mbim_sms_cdma_read_record_array_free (MbimSmsCdmaReadRecord **array);
+mbim_sms_cdma_read_record_array_free (MbimSmsCdmaReadRecordArray *array);

Frees the memory allocated for the array of MbimSmsCdmaReadRecords.

Parameters

@@ -252,6 +261,7 @@
+

Since: 1.4


@@ -274,6 +284,7 @@
+

Since: 1.4


@@ -296,6 +307,7 @@
+

Since: 1.4


@@ -323,6 +335,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -344,13 +357,13 @@

format

-

the 'Format' field, given as a MbimSmsFormat.

-  +

the 'Format' field, given as a MbimSmsFormat.

+[in]

sc_address

-

the 'ScAddress' field, given as a string.

-  +

the 'ScAddress' field, given as a string.

+[in]

error

@@ -364,6 +377,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -394,28 +408,28 @@

out_sms_storage_state

-

return location for a MbimSmsStorageState, or NULL if the 'SmsStorageState' field is not needed.

-  +

return location for a MbimSmsStorageState, or NULL if the 'SmsStorageState' field is not needed.

+[out][optional][transfer none]

out_format

-

return location for a MbimSmsFormat, or NULL if the 'Format' field is not needed.

-  +

return location for a MbimSmsFormat, or NULL if the 'Format' field is not needed.

+[out][optional][transfer none]

out_max_messages

-

return location for a guint32, or NULL if the 'MaxMessages' field is not needed.

-  +

return location for a guint32, or NULL if the 'MaxMessages' field is not needed.

+[out][optional][transfer none]

out_cdma_short_message_size

-

return location for a guint32, or NULL if the 'CdmaShortMessageSize' field is not needed.

-  +

return location for a guint32, or NULL if the 'CdmaShortMessageSize' field is not needed.

+[out][optional][transfer none]

out_sc_address

-

return location for a newly allocated string, or NULL if the 'ScAddress' field is not needed. Free the returned value with g_free().

-  +

return location for a newly allocated string, or NULL if the 'ScAddress' field is not needed. Free the returned value with g_free().

+[out][optional][transfer full]

error

@@ -430,6 +444,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -451,18 +466,18 @@

format

-

the 'Format' field, given as a MbimSmsFormat.

-  +

the 'Format' field, given as a MbimSmsFormat.

+[in]

flag

-

the 'Flag' field, given as a MbimSmsFlag.

-  +

the 'Flag' field, given as a MbimSmsFlag.

+[in]

message_index

-

the 'MessageIndex' field, given as a guint32.

-  +

the 'MessageIndex' field, given as a guint32.

+[in]

error

@@ -476,6 +491,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -484,8 +500,8 @@ mbim_message_sms_read_response_parse (const MbimMessage *message, MbimSmsFormat *out_format, guint32 *out_messages_count, - MbimSmsPduReadRecord ***out_pdu_messages, - MbimSmsCdmaReadRecord ***out_cdma_messages, + MbimSmsPduReadRecordArray **out_pdu_messages, + MbimSmsCdmaReadRecordArray **out_cdma_messages, GError **error);

Parses and returns parameters of the 'Read' response command in the 'SMS' service.

@@ -504,23 +520,23 @@

out_format

-

return location for a MbimSmsFormat, or NULL if the 'Format' field is not needed.

-  +

return location for a MbimSmsFormat, or NULL if the 'Format' field is not needed.

+[out][optional][transfer none]

out_messages_count

-

return location for a guint32, or NULL if the 'MessagesCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'MessagesCount' field is not needed.

+[out][optional][transfer none]

out_pdu_messages

-

return location for a newly allocated array of MbimSmsPduReadRecords, or NULL if the 'PduMessages' field is not needed. Free the returned value with mbim_sms_pdu_read_record_array_free().

-  +

return location for a newly allocated array of MbimSmsPduReadRecords, or NULL if the 'PduMessages' field is not needed. Free the returned value with mbim_sms_pdu_read_record_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimSmsPduReadRecord]

out_cdma_messages

-

return location for a newly allocated array of MbimSmsCdmaReadRecords, or NULL if the 'CdmaMessages' field is not needed. Free the returned value with mbim_sms_cdma_read_record_array_free().

-  +

return location for a newly allocated array of MbimSmsCdmaReadRecords, or NULL if the 'CdmaMessages' field is not needed. Free the returned value with mbim_sms_cdma_read_record_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimSmsCdmaReadRecord]

error

@@ -535,6 +551,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -544,8 +561,8 @@ (const MbimMessage *message, MbimSmsFormat *out_format, guint32 *out_messages_count, - MbimSmsPduReadRecord ***out_pdu_messages, - MbimSmsCdmaReadRecord ***out_cdma_messages, + MbimSmsPduReadRecordArray **out_pdu_messages, + MbimSmsCdmaReadRecordArray **out_cdma_messages, GError **error);

Parses and returns parameters of the 'Read' notification command in the 'SMS' service.

@@ -564,23 +581,23 @@

out_format

-

return location for a MbimSmsFormat, or NULL if the 'Format' field is not needed.

-  +

return location for a MbimSmsFormat, or NULL if the 'Format' field is not needed.

+[out][optional][transfer none]

out_messages_count

-

return location for a guint32, or NULL if the 'MessagesCount' field is not needed.

-  +

return location for a guint32, or NULL if the 'MessagesCount' field is not needed.

+[out][optional][transfer none]

out_pdu_messages

-

return location for a newly allocated array of MbimSmsPduReadRecords, or NULL if the 'PduMessages' field is not needed. Free the returned value with mbim_sms_pdu_read_record_array_free().

-  +

return location for a newly allocated array of MbimSmsPduReadRecords, or NULL if the 'PduMessages' field is not needed. Free the returned value with mbim_sms_pdu_read_record_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimSmsPduReadRecord]

out_cdma_messages

-

return location for a newly allocated array of MbimSmsCdmaReadRecords, or NULL if the 'CdmaMessages' field is not needed. Free the returned value with mbim_sms_cdma_read_record_array_free().

-  +

return location for a newly allocated array of MbimSmsCdmaReadRecords, or NULL if the 'CdmaMessages' field is not needed. Free the returned value with mbim_sms_cdma_read_record_array_free().

+[out][optional][transfer full][array zero-terminated=1][element-type MbimSmsCdmaReadRecord]

error

@@ -595,6 +612,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -616,18 +634,18 @@

format

-

the 'Format' field, given as a MbimSmsFormat.

-  +

the 'Format' field, given as a MbimSmsFormat.

+[in]

pdu_message

-

the 'PduMessage' field, given as a MbimSmsPduSendRecord.

-  +

the 'PduMessage' field, given as a MbimSmsPduSendRecord.

+[in]

cdma_message

-

the 'CdmaMessage' field, given as a MbimSmsCdmaSendRecord.

-  +

the 'CdmaMessage' field, given as a MbimSmsCdmaSendRecord.

+[in]

error

@@ -641,6 +659,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -666,8 +685,8 @@

out_message_reference

-

return location for a guint32, or NULL if the 'MessageReference' field is not needed.

-  +

return location for a guint32, or NULL if the 'MessageReference' field is not needed.

+[out][optional][transfer none]

error

@@ -682,6 +701,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -702,13 +722,13 @@

flag

-

the 'Flag' field, given as a MbimSmsFlag.

-  +

the 'Flag' field, given as a MbimSmsFlag.

+[in]

message_index

-

the 'MessageIndex' field, given as a guint32.

-  +

the 'MessageIndex' field, given as a guint32.

+[in]

error

@@ -722,6 +742,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -758,6 +779,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -785,6 +807,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -812,13 +835,13 @@

out_flag

-

return location for a MbimSmsStatusFlag, or NULL if the 'Flag' field is not needed.

-  +

return location for a MbimSmsStatusFlag, or NULL if the 'Flag' field is not needed.

+[out][optional][transfer none]

out_message_index

-

return location for a guint32, or NULL if the 'MessageIndex' field is not needed.

-  +

return location for a guint32, or NULL if the 'MessageIndex' field is not needed.

+[out][optional][transfer none]

error

@@ -833,6 +856,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -860,13 +884,13 @@

out_flag

-

return location for a MbimSmsStatusFlag, or NULL if the 'Flag' field is not needed.

-  +

return location for a MbimSmsStatusFlag, or NULL if the 'Flag' field is not needed.

+[out][optional][transfer none]

out_message_index

-

return location for a guint32, or NULL if the 'MessageIndex' field is not needed.

-  +

return location for a guint32, or NULL if the 'MessageIndex' field is not needed.

+[out][optional][transfer none]

error

@@ -881,6 +905,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4

@@ -926,6 +951,15 @@
+

Since: 1.4

+ +
+
+

MbimSmsPduReadRecordArray

+
typedef MbimSmsPduReadRecord *MbimSmsPduReadRecordArray;
+
+

A NULL-terminated array of MbimSmsPduReadRecord elements.

+

Since: 1.24


@@ -999,6 +1033,15 @@
+

Since: 1.4

+ +
+
+

MbimSmsCdmaReadRecordArray

+
typedef MbimSmsCdmaReadRecord *MbimSmsCdmaReadRecordArray;
+
+

A NULL-terminated array of MbimSmsCdmaReadRecord elements.

+

Since: 1.24


@@ -1030,6 +1073,7 @@
+

Since: 1.4


@@ -1085,10 +1129,11 @@
+

Since: 1.4

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-STK.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-STK.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-STK.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-STK.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -143,6 +143,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -162,8 +163,8 @@

pac_host_control

-

the 'PacHostControl' field, given as an array of 32 guint8 values.

-  +

the 'PacHostControl' field, given as an array of 32 guint8 values.

+[in][element-type guint8][array fixed-size=32]

error

@@ -177,6 +178,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -203,8 +205,8 @@

out_pac_support

return location for an array of 256 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=256]

error

@@ -219,6 +221,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -247,19 +250,19 @@

out_pac_type

-

return location for a MbimStkPacType, or NULL if the 'PacType' field is not needed.

-  +

return location for a MbimStkPacType, or NULL if the 'PacType' field is not needed.

+[out][optional][transfer none]

out_data_buffer_size

-

return location for the size of the data_buffer array.

-  +

return location for the size of the data_buffer array.

+[out][optional]

out_data_buffer

return location for an array of guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array length=out_data_buffer_size]

error

@@ -274,6 +277,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -295,13 +299,13 @@

response_size

-

size of the response array.

-  +

size of the response array.

+[in]

response

-

the 'Response' field, given as an array of guint8 values.

-  +

the 'Response' field, given as an array of guint8 values.

+[in][element-type guint8][array length=response_size]

error

@@ -315,6 +319,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -343,19 +348,19 @@

out_result_data_size

-

return location for the size of the result_data array.

-  +

return location for the size of the result_data array.

+[out][optional]

out_result_data

return location for an array of guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array length=out_result_data_size]

out_status_words

-

return location for a guint32, or NULL if the 'StatusWords' field is not needed.

-  +

return location for a guint32, or NULL if the 'StatusWords' field is not needed.

+[out][optional][transfer none]

error

@@ -370,6 +375,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -396,6 +402,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -416,13 +423,13 @@

data_size

-

size of the data array.

-  +

size of the data array.

+[in]

data

-

the 'Data' field, given as an array of guint8 values.

-  +

the 'Data' field, given as an array of guint8 values.

+[in][element-type guint8][array length=data_size]

error

@@ -436,6 +443,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -463,8 +471,8 @@

out_envelope_support

return location for an array of 32 guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array fixed-size=32]

error

@@ -479,10 +487,11 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-USSD.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-USSD.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-USSD.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-USSD.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -91,23 +91,23 @@

action

-

the 'Action' field, given as a MbimUssdAction.

-  +

the 'Action' field, given as a MbimUssdAction.

+[in]

data_coding_scheme

-

the 'DataCodingScheme' field, given as a guint32.

-  +

the 'DataCodingScheme' field, given as a guint32.

+[in]

payload_size

-

size of the payload array.

-  +

size of the payload array.

+[in]

payload

-

the 'Payload' field, given as an array of guint8 values.

-  +

the 'Payload' field, given as an array of guint8 values.

+[in][element-type guint8][array length=payload_size]

error

@@ -121,6 +121,7 @@

Returns

a newly allocated MbimMessage, which should be freed with mbim_message_unref().

+

Since: 1.4


@@ -150,29 +151,29 @@

out_response

-

return location for a MbimUssdResponse, or NULL if the 'Response' field is not needed.

-  +

return location for a MbimUssdResponse, or NULL if the 'Response' field is not needed.

+[out][optional][transfer none]

out_session_state

-

return location for a MbimUssdSessionState, or NULL if the 'SessionState' field is not needed.

-  +

return location for a MbimUssdSessionState, or NULL if the 'SessionState' field is not needed.

+[out][optional][transfer none]

out_data_coding_scheme

-

return location for a guint32, or NULL if the 'DataCodingScheme' field is not needed.

-  +

return location for a guint32, or NULL if the 'DataCodingScheme' field is not needed.

+[out][optional][transfer none]

out_payload_size

-

return location for the size of the payload array.

-  +

return location for the size of the payload array.

+[out][optional]

out_payload

return location for an array of guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array length=out_payload_size]

error

@@ -187,6 +188,7 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4


@@ -216,29 +218,29 @@

out_response

-

return location for a MbimUssdResponse, or NULL if the 'Response' field is not needed.

-  +

return location for a MbimUssdResponse, or NULL if the 'Response' field is not needed.

+[out][optional][transfer none]

out_session_state

-

return location for a MbimUssdSessionState, or NULL if the 'SessionState' field is not needed.

-  +

return location for a MbimUssdSessionState, or NULL if the 'SessionState' field is not needed.

+[out][optional][transfer none]

out_data_coding_scheme

-

return location for a guint32, or NULL if the 'DataCodingScheme' field is not needed.

-  +

return location for a guint32, or NULL if the 'DataCodingScheme' field is not needed.

+[out][optional][transfer none]

out_payload_size

-

return location for the size of the payload array.

-  +

return location for the size of the payload array.

+[out][optional]

out_payload

return location for an array of guint8 values. Do not free the returned value, it is owned by message -.

-  +.

+[out][optional][transfer none][element-type guint8][array length=out_payload_size]

error

@@ -253,10 +255,11 @@

TRUE if the message was correctly parsed, FALSE if error is set.

+

Since: 1.4

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-UUIDs.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-UUIDs.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-UUIDs.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-UUIDs.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -262,8 +262,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -292,8 +293,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.10


@@ -328,6 +330,7 @@

Returns

TRUE if service has been registered, FALSE otherwise.

+

Since: 1.10


@@ -354,6 +357,7 @@

Returns

TRUE if service has been unregistered, FALSE otherwise.

+

Since: 1.10


@@ -381,6 +385,7 @@

Returns

TRUE if service is custom, FALSE otherwise.

+

Since: 1.10


@@ -407,8 +412,9 @@

Returns

a string with the nickname, or NULL if not found. Do not free the returned value.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -445,6 +451,7 @@ and b are equal, FALSE otherwise.

+

Since: 1.0


@@ -485,6 +492,7 @@

TRUE if uuid was correctly set, FALSE otherwise.

+

Since: 1.8


@@ -510,8 +518,9 @@

Returns

a newly allocated string, which should be freed with g_free().

-

[transfer full]

+

[transfer full]

+

Since: 1.0


@@ -541,8 +550,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -570,6 +580,7 @@

Returns

a MbimService.

+

Since: 1.0


@@ -596,8 +607,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -625,6 +637,7 @@

Returns

a MbimContextType.

+

Since: 1.0

@@ -700,49 +713,49 @@

MBIM_SERVICE_MS_FIRMWARE_ID

-

Microsoft Firmware ID service.

+

Microsoft Firmware ID service. Since 1.8.

 

MBIM_SERVICE_MS_HOST_SHUTDOWN

-

Microsoft Host Shutdown service.

+

Microsoft Host Shutdown service. Since 1.8.

 

MBIM_SERVICE_PROXY_CONTROL

-

Proxy Control service.

+

Proxy Control service. Since 1.10.

 

MBIM_SERVICE_QMI

-

QMI-over-MBIM service.

+

QMI-over-MBIM service. Since 1.14.

 

MBIM_SERVICE_ATDS

-

ATT Device service.

+

ATT Device service. Since 1.16.

 

MBIM_SERVICE_INTEL_FIRMWARE_UPDATE

-

Intel firmware update service.

+

Intel firmware update service. Since 1.16.

 

MBIM_SERVICE_MS_BASIC_CONNECT_EXTENSIONS

-

Microsoft basic connectivity extensions service.

+

Microsoft basic connectivity extensions service. Since 1.18.

  @@ -756,6 +769,7 @@
+

Since: 1.0


@@ -843,12 +857,14 @@
+

Since: 1.0


MbimUuid

typedef struct _MbimUuid MbimUuid;

A UUID as defined in MBIM.

+

Since: 1.0


@@ -859,8 +875,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -871,8 +888,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.16


@@ -883,8 +901,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -895,8 +914,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -907,8 +927,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -919,8 +940,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -931,8 +953,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -943,8 +966,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -955,8 +979,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.0


@@ -967,8 +992,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.8


@@ -979,8 +1005,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.8


@@ -991,8 +1018,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.10


@@ -1003,8 +1031,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.14


@@ -1015,8 +1044,9 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.16


@@ -1027,12 +1057,13 @@

Returns

a MbimUuid.

-

[transfer none]

+

[transfer none]

+

Since: 1.18

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Version-checks.html libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Version-checks.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib-Version-checks.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib-Version-checks.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -110,6 +110,7 @@

TRUE if the version of the libmbim-glib header files is the same as or newer than the passed-in version.

+

Since: 1.2

@@ -120,26 +121,29 @@

Evaluates to the major version number of libmbim-glib which this source is compiled against.

+

Since: 1.2


MBIM_MINOR_VERSION

-
#define MBIM_MINOR_VERSION (22)
+
#define MBIM_MINOR_VERSION (24)
 

Evaluates to the minor version number of libmbim-glib which this source is compiled against.

+

Since: 1.2


MBIM_MICRO_VERSION

-
#define MBIM_MICRO_VERSION (0)
+
#define MBIM_MICRO_VERSION (8)
 

Evaluates to the micro version number of libmbim-glib which this source compiled against.

+

Since: 1.2

+
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib.devhelp2 libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib.devhelp2 --- libmbim-1.22.0/docs/reference/libmbim-glib/html/libmbim-glib.devhelp2 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/libmbim-glib.devhelp2 2021-06-02 22:06:36.000000000 +0800 @@ -40,458 +40,483 @@ + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/object-tree.html libmbim-1.24.8/docs/reference/libmbim-glib/html/object-tree.html --- libmbim-1.22.0/docs/reference/libmbim-glib/html/object-tree.html 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/object-tree.html 2021-06-02 22:06:36.000000000 +0800 @@ -8,7 +8,7 @@ - + @@ -110,6 +110,6 @@ +
Generated by GTK-Doc V1.33.1 \ No newline at end of file diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/html/style.css libmbim-1.24.8/docs/reference/libmbim-glib/html/style.css --- libmbim-1.22.0/docs/reference/libmbim-glib/html/style.css 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/html/style.css 2021-06-02 22:06:36.000000000 +0800 @@ -61,18 +61,6 @@ color: #729fcf; } -div.informaltable table -{ - border-collapse: separate; - border-spacing: 1em 0.3em; - border: none; -} - -div.informaltable table td, div.informaltable table th -{ - vertical-align: top; -} - .function_type, .variable_type, .property_type, @@ -127,6 +115,7 @@ margin: 0.25em; } +div.informaltable table[border="1"], div.table table { border-collapse: collapse; @@ -135,6 +124,8 @@ border: solid 1px #babdb6; } +div.informaltable table[border="1"] td, +div.informaltable table th, div.table table td, div.table table th { /* tango:aluminium 3 */ @@ -143,6 +134,7 @@ vertical-align: top; } +div.informaltable table[border="1"] th, div.table table th { /* tango:aluminium 2 */ @@ -463,6 +455,11 @@ } } +pre { line-height: 125%; } +td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } .hll { background-color: #ffffcc } .c { color: #408080; font-style: italic } /* Comment */ .err { border: 1px solid #FF0000 } /* Error */ diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/libmbim-glib-common.sections libmbim-1.24.8/docs/reference/libmbim-glib/libmbim-glib-common.sections --- libmbim-1.22.0/docs/reference/libmbim-glib/libmbim-glib-common.sections 2019-03-27 21:26:00.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/libmbim-glib-common.sections 2021-06-02 19:05:37.000000000 +0800 @@ -223,6 +223,7 @@ mbim_device_close mbim_device_close_finish mbim_device_close_force +mbim_device_get_transaction_id mbim_device_get_next_transaction_id mbim_device_command mbim_device_command_finish diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/libmbim-glib-docs.xml libmbim-1.24.8/docs/reference/libmbim-glib/libmbim-glib-docs.xml --- libmbim-1.22.0/docs/reference/libmbim-glib/libmbim-glib-docs.xml 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/libmbim-glib-docs.xml 2021-06-02 19:05:37.000000000 +0800 @@ -99,10 +99,58 @@ Object Hierarchy - + API Index - - + + + + Index of deprecated symbols + + + + Index of new symbols in 1.0 + + + + Index of new symbols in 1.2 + + + + Index of new symbols in 1.4 + + + + Index of new symbols in 1.8 + + + + Index of new symbols in 1.10 + + + + Index of new symbols in 1.12 + + + + Index of new symbols in 1.14 + + + + Index of new symbols in 1.16 + + + + Index of new symbols in 1.18 + + + + Index of new symbols in 1.24 + + + + Index of new symbols in 1.24.4 + + diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/libmbim-glib-sections.txt libmbim-1.24.8/docs/reference/libmbim-glib/libmbim-glib-sections.txt --- libmbim-1.22.0/docs/reference/libmbim-glib/libmbim-glib-sections.txt 2020-01-15 23:10:49.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/libmbim-glib-sections.txt 2021-06-02 22:06:36.000000000 +0800 @@ -223,6 +223,7 @@ mbim_device_close mbim_device_close_finish mbim_device_close_force +mbim_device_get_transaction_id mbim_device_get_next_transaction_id mbim_device_command mbim_device_command_finish @@ -610,25 +611,32 @@ mbim_pin_desc_free MbimProvider +MbimProviderArray mbim_provider_free mbim_provider_array_free MbimProvisionedContextElement +MbimProvisionedContextElementArray mbim_provisioned_context_element_array_free MbimIPv4Element +MbimIPv4ElementArray mbim_ipv4_element_array_free MbimIPv6Element +MbimIPv6ElementArray mbim_ipv6_element_array_free MbimDeviceServiceElement +MbimDeviceServiceElementArray mbim_device_service_element_array_free MbimEventEntry +MbimEventEntryArray mbim_event_entry_array_free MbimPacketFilter +MbimPacketFilterArray mbim_packet_filter_array_free @@ -749,9 +757,11 @@ SMS MbimSmsPduReadRecord +MbimSmsPduReadRecordArray mbim_sms_pdu_read_record_array_free MbimSmsCdmaReadRecord +MbimSmsCdmaReadRecordArray mbim_sms_cdma_read_record_array_free MbimSmsPduSendRecord @@ -816,6 +826,7 @@ Phonebook MbimPhonebookEntry +MbimPhonebookEntryArray mbim_phonebook_entry_array_free @@ -897,6 +908,7 @@ ATDS MbimAtdsProvider +MbimAtdsProviderArray mbim_atds_provider_array_free @@ -937,6 +949,7 @@ mbim_pco_value_free MbimLteAttachConfiguration +MbimLteAttachConfigurationArray mbim_lte_attach_configuration_array_free MbimLteAttachStatus diff -Nru libmbim-1.22.0/docs/reference/libmbim-glib/version.xml libmbim-1.24.8/docs/reference/libmbim-glib/version.xml --- libmbim-1.22.0/docs/reference/libmbim-glib/version.xml 2020-01-15 23:09:58.000000000 +0800 +++ libmbim-1.24.8/docs/reference/libmbim-glib/version.xml 2021-06-02 22:06:12.000000000 +0800 @@ -1 +1 @@ -1.22.0 +1.24.8 diff -Nru libmbim-1.22.0/examples/Makefile.am libmbim-1.24.8/examples/Makefile.am --- libmbim-1.22.0/examples/Makefile.am 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/examples/Makefile.am 2020-07-10 16:12:29.000000000 +0800 @@ -0,0 +1 @@ +SUBDIRS = simple-tester-python diff -Nru libmbim-1.22.0/examples/Makefile.in libmbim-1.24.8/examples/Makefile.in --- libmbim-1.22.0/examples/Makefile.in 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/examples/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -0,0 +1,670 @@ +# Makefile.in generated by automake 1.16.3 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2020 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = examples +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + distdir distdir-am +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +am__DIST_COMMON = $(srcdir)/Makefile.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GREP = @GREP@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +GUDEV_CFLAGS = @GUDEV_CFLAGS@ +GUDEV_LIBS = @GUDEV_LIBS@ +HELP2MAN = @HELP2MAN@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ +LIBMBIM_GLIB_LIBS = @LIBMBIM_GLIB_LIBS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MBIMCLI_CFLAGS = @MBIMCLI_CFLAGS@ +MBIMCLI_LIBS = @MBIMCLI_LIBS@ +MBIMPROXY_CFLAGS = @MBIMPROXY_CFLAGS@ +MBIMPROXY_LIBS = @MBIMPROXY_LIBS@ +MBIM_COMMON_CFLAGS = @MBIM_COMMON_CFLAGS@ +MBIM_COMMON_LIBS = @MBIM_COMMON_LIBS@ +MBIM_GLIB_LT_AGE = @MBIM_GLIB_LT_AGE@ +MBIM_GLIB_LT_CURRENT = @MBIM_GLIB_LT_CURRENT@ +MBIM_GLIB_LT_REVISION = @MBIM_GLIB_LT_REVISION@ +MBIM_MAJOR_VERSION = @MBIM_MAJOR_VERSION@ +MBIM_MICRO_VERSION = @MBIM_MICRO_VERSION@ +MBIM_MINOR_VERSION = @MBIM_MINOR_VERSION@ +MBIM_USERNAME = @MBIM_USERNAME@ +MBIM_VERSION = @MBIM_VERSION@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +UDEV_BASE_DIR = @UDEV_BASE_DIR@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +runstatedir = @runstatedir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +SUBDIRS = simple-tester-python +all: all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu examples/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu examples/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +# This directory's subdirectories are mostly independent; you can cd +# into them and run 'make' without going through this Makefile. +# To change the values of 'make' variables: instead of editing Makefiles, +# (1) if the variable is set in 'config.status', edit 'config.status' +# (which will cause the Makefiles to be regenerated when you run 'make'); +# (2) otherwise, pass the desired values on the 'make' command line. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ + check-am clean clean-generic clean-libtool cscopelist-am ctags \ + ctags-am distclean distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am tags tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru libmbim-1.22.0/examples/simple-tester-python/Makefile.am libmbim-1.24.8/examples/simple-tester-python/Makefile.am --- libmbim-1.22.0/examples/simple-tester-python/Makefile.am 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/examples/simple-tester-python/Makefile.am 2020-07-10 16:12:29.000000000 +0800 @@ -0,0 +1,2 @@ + +EXTRA_DIST = simple-tester-python README diff -Nru libmbim-1.22.0/examples/simple-tester-python/Makefile.in libmbim-1.24.8/examples/simple-tester-python/Makefile.in --- libmbim-1.22.0/examples/simple-tester-python/Makefile.in 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/examples/simple-tester-python/Makefile.in 2021-06-02 22:06:03.000000000 +0800 @@ -0,0 +1,490 @@ +# Makefile.in generated by automake 1.16.3 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2020 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = examples/simple-tester-python +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in README +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GREP = @GREP@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +GUDEV_CFLAGS = @GUDEV_CFLAGS@ +GUDEV_LIBS = @GUDEV_LIBS@ +HELP2MAN = @HELP2MAN@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ +LIBMBIM_GLIB_LIBS = @LIBMBIM_GLIB_LIBS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MBIMCLI_CFLAGS = @MBIMCLI_CFLAGS@ +MBIMCLI_LIBS = @MBIMCLI_LIBS@ +MBIMPROXY_CFLAGS = @MBIMPROXY_CFLAGS@ +MBIMPROXY_LIBS = @MBIMPROXY_LIBS@ +MBIM_COMMON_CFLAGS = @MBIM_COMMON_CFLAGS@ +MBIM_COMMON_LIBS = @MBIM_COMMON_LIBS@ +MBIM_GLIB_LT_AGE = @MBIM_GLIB_LT_AGE@ +MBIM_GLIB_LT_CURRENT = @MBIM_GLIB_LT_CURRENT@ +MBIM_GLIB_LT_REVISION = @MBIM_GLIB_LT_REVISION@ +MBIM_MAJOR_VERSION = @MBIM_MAJOR_VERSION@ +MBIM_MICRO_VERSION = @MBIM_MICRO_VERSION@ +MBIM_MINOR_VERSION = @MBIM_MINOR_VERSION@ +MBIM_USERNAME = @MBIM_USERNAME@ +MBIM_VERSION = @MBIM_VERSION@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +UDEV_BASE_DIR = @UDEV_BASE_DIR@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +runstatedir = @runstatedir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +EXTRA_DIST = simple-tester-python README +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu examples/simple-tester-python/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu examples/simple-tester-python/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + cscopelist-am ctags-am distclean distclean-generic \ + distclean-libtool distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru libmbim-1.22.0/examples/simple-tester-python/README libmbim-1.24.8/examples/simple-tester-python/README --- libmbim-1.22.0/examples/simple-tester-python/README 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/examples/simple-tester-python/README 2020-07-10 16:12:29.000000000 +0800 @@ -0,0 +1,29 @@ + +The simple-tester-python program makes use of the 'libmbim-glib' library +through GObject Introspection. + +The program will: + * Open a connection to the mbim-proxy, or launch the mbim-proxy itself + if it isn't already running. + * Query device capabilities + +The output will look like this: + +$ ./simple-tester-python /dev/cdc-wdm0 +device type: embedded +cellular class: gsm +voice class: no-voice +sim class: removable +data class: gprs, edge, umts, hsdpa, hsupa, lte +sms capabilities: pdu-receive, pdu-send +control capabilities: reg-manual +max sessions: 8 +custom data class: None +device id: 013937003110648 +firmware info: FIH7160_V1.1_MODEM_01.1349.12 +hardware info: XMM7160_V1.1_MBIM_GNSS_NAND_RE + +Note that the program requires libmbim-glib to be installed in the system +and the introspection typelibs available in the standard paths. + +Have fun! \ No newline at end of file diff -Nru libmbim-1.22.0/examples/simple-tester-python/simple-tester-python libmbim-1.24.8/examples/simple-tester-python/simple-tester-python --- libmbim-1.22.0/examples/simple-tester-python/simple-tester-python 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/examples/simple-tester-python/simple-tester-python 2020-07-10 16:12:29.000000000 +0800 @@ -0,0 +1,109 @@ +#!/usr/bin/env python +# -*- Mode: python; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- +# +# This program is free software; you can redistribute it and/or modify it under +# the terms of the GNU Lesser General Public License as published by the Free +# Software Foundation; either version 2 of the License, or (at your option) any +# later version. +# +# This program is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more +# details. +# +# You should have received a copy of the GNU Lesser General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., 51 +# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Copyright (C) 2020 Aleksander Morgado +# + +import sys, signal, gi + +gi.require_version('Mbim', '1.0') +from gi.repository import GLib, Gio, Mbim + +main_loop = None + + +def signal_handler(data): + main_loop.quit() + + +def close_ready(mbimdev,result,user_data=None): + try: + mbimdev.close_finish(result) + except GLib.GError as error: + sys.stderr.write("Couldn't close MBIM device: %s\n" % error.message) + main_loop.quit() + + +def query_device_caps_ready(mbimdev,result,user_data=None): + try: + response = mbimdev.command_finish(result) + response.command_done_get_result() + success, devtype, cellclass, voiceclass, simclass, dataclass, smscaps, controlcaps, maxsessions, customdataclass, deviceid, firmwareinfo, hardwareinfo = response.device_caps_response_parse() + + if success: + print("device type: %s" % Mbim.DeviceType.get_string(devtype)) + print("cellular class: %s" % Mbim.CellularClass.build_string_from_mask(cellclass)) + print("voice class: %s" % Mbim.VoiceClass.get_string(voiceclass)) + print("sim class: %s" % Mbim.SimClass.build_string_from_mask(simclass)) + print("data class: %s" % Mbim.DataClass.build_string_from_mask(dataclass)) + print("sms capabilities: %s" % Mbim.SmsCaps.build_string_from_mask(smscaps)) + print("control capabilities: %s" % Mbim.CtrlCaps.build_string_from_mask(controlcaps)) + print("max sessions: %u" % maxsessions) + print("custom data class: %s" % customdataclass) + print("device id: %s" % deviceid) + print("firmware info: %s" % firmwareinfo) + print("hardware info: %s" % hardwareinfo) + + except GLib.GError as error: + sys.stderr.write("Couldn't run MBIM command: %s\n" % error.message) + + mbimdev.close(10, None, close_ready, None) + + +def open_full_ready(mbimdev,result,user_data=None): + try: + mbimdev.open_full_finish(result) + except GLib.GError as error: + sys.stderr.write("Couldn't open MBIM device: %s\n" % error.message) + main_loop.quit() + return + + request = Mbim.Message.device_caps_query_new () + mbimdev.command(request, 10, None, query_device_caps_ready, None) + + +def new_ready(unused,result,user_data=None): + try: + mbimdev = Mbim.Device.new_finish(result) + except GLib.GError as error: + sys.stderr.write("Couldn't create MBIM device: %s\n" % error.message) + main_loop.quit() + return + + mbimdev.open_full(Mbim.DeviceOpenFlags.PROXY, 10, None, open_full_ready, None) + + +if __name__ == "__main__": + + # Process input arguments + if len(sys.argv) != 2: + sys.stderr.write('error: wrong number of arguments\n') + sys.stdout.write('usage: simple-tester-python \n') + sys.exit(1) + + # Create Mbim device asynchronously + file = Gio.File.new_for_path(sys.argv[1]) + Mbim.Device.new (file, None, new_ready, None) + + # Main loop + main_loop = GLib.MainLoop() + GLib.unix_signal_add(GLib.PRIORITY_HIGH, signal.SIGHUP, signal_handler, None) + GLib.unix_signal_add(GLib.PRIORITY_HIGH, signal.SIGTERM, signal_handler, None) + try: + main_loop.run() + except KeyboardInterrupt: + pass diff -Nru libmbim-1.22.0/install-sh libmbim-1.24.8/install-sh --- libmbim-1.22.0/install-sh 2020-01-15 17:57:37.000000000 +0800 +++ libmbim-1.24.8/install-sh 2021-06-02 22:06:03.000000000 +0800 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2018-03-11.20; # UTC +scriptversion=2020-11-14.01; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -69,6 +69,11 @@ # Desired mode of installed file. mode=0755 +# Create dirs (including intermediate dirs) using mode 755. +# This is like GNU 'install' as of coreutils 8.32 (2020). +mkdir_umask=22 + +backupsuffix= chgrpcmd= chmodcmd=$chmodprog chowncmd= @@ -99,18 +104,28 @@ --version display version info and exit. -c (ignored) - -C install only if different (preserve the last data modification time) + -C install only if different (preserve data modification time) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. + -p pass -p to $cpprog. -s $stripprog installed files. + -S SUFFIX attempt to back up existing files, with suffix SUFFIX. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG + +By default, rm is invoked with -f; when overridden with RMPROG, +it's up to you to specify -f if you want it. + +If -S is not specified, no backups are attempted. + +Email bug reports to bug-automake@gnu.org. +Automake home page: https://www.gnu.org/software/automake/ " while test $# -ne 0; do @@ -137,8 +152,13 @@ -o) chowncmd="$chownprog $2" shift;; + -p) cpprog="$cpprog -p";; + -s) stripcmd=$stripprog;; + -S) backupsuffix="$2" + shift;; + -t) is_target_a_directory=always dst_arg=$2 @@ -255,6 +275,10 @@ dstdir=$dst test -d "$dstdir" dstdir_status=$? + # Don't chown directories that already exist. + if test $dstdir_status = 0; then + chowncmd="" + fi else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command @@ -301,22 +325,6 @@ if test $dstdir_status != 0; then case $posix_mkdir in '') - # Create intermediate dirs using mode 755 as modified by the umask. - # This is like FreeBSD 'install' as of 1997-10-28. - umask=`umask` - case $stripcmd.$umask in - # Optimize common cases. - *[2367][2367]) mkdir_umask=$umask;; - .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; - - *[0-7]) - mkdir_umask=`expr $umask + 22 \ - - $umask % 100 % 40 + $umask % 20 \ - - $umask % 10 % 4 + $umask % 2 - `;; - *) mkdir_umask=$umask,go-w;; - esac - # With -d, create the new directory with the user-specified mode. # Otherwise, rely on $mkdir_umask. if test -n "$dir_arg"; then @@ -326,52 +334,49 @@ fi posix_mkdir=false - case $umask in - *[123567][0-7][0-7]) - # POSIX mkdir -p sets u+wx bits regardless of umask, which - # is incompatible with FreeBSD 'install' when (umask & 300) != 0. - ;; - *) - # Note that $RANDOM variable is not portable (e.g. dash); Use it - # here however when possible just to lower collision chance. - tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ - - trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 - - # Because "mkdir -p" follows existing symlinks and we likely work - # directly in world-writeable /tmp, make sure that the '$tmpdir' - # directory is successfully created first before we actually test - # 'mkdir -p' feature. - if (umask $mkdir_umask && - $mkdirprog $mkdir_mode "$tmpdir" && - exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 - then - if test -z "$dir_arg" || { - # Check for POSIX incompatibilities with -m. - # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. - # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. - test_tmpdir="$tmpdir/a" - ls_ld_tmpdir=`ls -ld "$test_tmpdir"` - case $ls_ld_tmpdir in - d????-?r-*) different_mode=700;; - d????-?--*) different_mode=755;; - *) false;; - esac && - $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { - ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` - test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" - } - } - then posix_mkdir=: - fi - rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" - else - # Remove any dirs left behind by ancient mkdir implementations. - rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null - fi - trap '' 0;; - esac;; + # The $RANDOM variable is not portable (e.g., dash). Use it + # here however when possible just to lower collision chance. + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ + + trap ' + ret=$? + rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null + exit $ret + ' 0 + + # Because "mkdir -p" follows existing symlinks and we likely work + # directly in world-writeable /tmp, make sure that the '$tmpdir' + # directory is successfully created first before we actually test + # 'mkdir -p'. + if (umask $mkdir_umask && + $mkdirprog $mkdir_mode "$tmpdir" && + exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. + test_tmpdir="$tmpdir/a" + ls_ld_tmpdir=`ls -ld "$test_tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && + $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { + ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi + rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. + rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null + fi + trap '' 0;; esac if @@ -382,7 +387,7 @@ then : else - # The umask is ridiculous, or mkdir does not conform to POSIX, + # mkdir does not conform to POSIX, # or it failed possibly due to a race condition. Create the # directory the slow way, step by step, checking for races as we go. @@ -411,7 +416,7 @@ prefixes= else if $posix_mkdir; then - (umask=$mkdir_umask && + (umask $mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break # Don't fail if two instances are running concurrently. test -d "$prefix" || exit 1 @@ -451,7 +456,18 @@ trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 # Copy the file name to the temp name. - (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && + (umask $cp_umask && + { test -z "$stripcmd" || { + # Create $dsttmp read-write so that cp doesn't create it read-only, + # which would cause strip to fail. + if test -z "$doit"; then + : >"$dsttmp" # No need to fork-exec 'touch'. + else + $doit touch "$dsttmp" + fi + } + } && + $doit_exec $cpprog "$src" "$dsttmp") && # and set any options; do chmod last to preserve setuid bits. # @@ -477,6 +493,13 @@ then rm -f "$dsttmp" else + # If $backupsuffix is set, and the file being installed + # already exists, attempt a backup. Don't worry if it fails, + # e.g., if mv doesn't support -f. + if test -n "$backupsuffix" && test -f "$dst"; then + $doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null + fi + # Rename the file to the real destination. $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || @@ -491,9 +514,9 @@ # file should still install successfully. { test ! -f "$dst" || - $doit $rmcmd -f "$dst" 2>/dev/null || + $doit $rmcmd "$dst" 2>/dev/null || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && - { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } + { $doit $rmcmd "$rmtmp" 2>/dev/null; :; } } || { echo "$0: cannot unlink or rename $dst" >&2 (exit 1); exit 1 diff -Nru libmbim-1.22.0/ltmain.sh libmbim-1.24.8/ltmain.sh --- libmbim-1.22.0/ltmain.sh 2020-01-15 17:57:32.000000000 +0800 +++ libmbim-1.24.8/ltmain.sh 2021-06-02 22:05:58.000000000 +0800 @@ -2,7 +2,7 @@ ## DO NOT EDIT - This file generated from ./build-aux/ltmain.in ## by inline-source v2018-07-24.06 -# libtool (GNU libtool) 2.4.6.42-b88ce +# libtool (GNU libtool) 2.4.6.42-b88ce-dirty # Provide generalized library-building support services. # Written by Gordon Matzigkeit , 1996 @@ -31,7 +31,7 @@ PROGRAM=libtool PACKAGE=libtool -VERSION=2.4.6.42-b88ce +VERSION=2.4.6.42-b88ce-dirty package_revision=2.4.6.42 @@ -2176,7 +2176,7 @@ # End: # Set a version string. -scriptversion='(GNU libtool) 2.4.6.42-b88ce' +scriptversion='(GNU libtool) 2.4.6.42-b88ce-dirty' # func_echo ARG... @@ -2267,7 +2267,7 @@ compiler: $LTCC compiler flags: $LTCFLAGS linker: $LD (gnu? $with_gnu_ld) - version: $progname (GNU libtool) 2.4.6.42-b88ce + version: $progname (GNU libtool) 2.4.6.42-b88ce-dirty automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` diff -Nru libmbim-1.22.0/m4/introspection.m4 libmbim-1.24.8/m4/introspection.m4 --- libmbim-1.22.0/m4/introspection.m4 1970-01-01 08:00:00.000000000 +0800 +++ libmbim-1.24.8/m4/introspection.m4 2020-07-10 16:12:29.000000000 +0800 @@ -0,0 +1,97 @@ +dnl -*- mode: autoconf -*- +dnl Copyright 2009 Johan Dahlin +dnl +dnl This file is free software; the author(s) gives unlimited +dnl permission to copy and/or distribute it, with or without +dnl modifications, as long as this notice is preserved. +dnl + +# serial 1 + +m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL], +[ + AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([LT_INIT],[$0])dnl setup libtool first + + dnl enable/disable introspection + m4_if([$2], [require], + [dnl + enable_introspection=yes + ],[dnl + AC_ARG_ENABLE(introspection, + AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]], + [Enable introspection for this build]),, + [enable_introspection=auto]) + ])dnl + + AC_MSG_CHECKING([for gobject-introspection]) + + dnl presence/version checking + AS_CASE([$enable_introspection], + [no], [dnl + found_introspection="no (disabled, use --enable-introspection to enable)" + ],dnl + [yes],[dnl + PKG_CHECK_EXISTS([gobject-introspection-1.0],, + AC_MSG_ERROR([gobject-introspection-1.0 is not installed])) + PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], + found_introspection=yes, + AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME])) + ],dnl + [auto],[dnl + PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no) + dnl Canonicalize enable_introspection + enable_introspection=$found_introspection + ],dnl + [dnl + AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@]) + ])dnl + + AC_MSG_RESULT([$found_introspection]) + + INTROSPECTION_SCANNER= + INTROSPECTION_COMPILER= + INTROSPECTION_GENERATE= + INTROSPECTION_GIRDIR= + INTROSPECTION_TYPELIBDIR= + if test "x$found_introspection" = "xyes"; then + INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` + INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` + INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` + INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0` + INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)" + INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` + INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` + INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection + fi + AC_SUBST(INTROSPECTION_SCANNER) + AC_SUBST(INTROSPECTION_COMPILER) + AC_SUBST(INTROSPECTION_GENERATE) + AC_SUBST(INTROSPECTION_GIRDIR) + AC_SUBST(INTROSPECTION_TYPELIBDIR) + AC_SUBST(INTROSPECTION_CFLAGS) + AC_SUBST(INTROSPECTION_LIBS) + AC_SUBST(INTROSPECTION_MAKEFILE) + + AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes") +]) + + +dnl Usage: +dnl GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version]) + +AC_DEFUN([GOBJECT_INTROSPECTION_CHECK], +[ + _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1]) +]) + +dnl Usage: +dnl GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version]) + + +AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE], +[ + _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require]) +]) + diff -Nru libmbim-1.22.0/m4/ltversion.m4 libmbim-1.24.8/m4/ltversion.m4 --- libmbim-1.22.0/m4/ltversion.m4 2020-01-15 17:57:32.000000000 +0800 +++ libmbim-1.24.8/m4/ltversion.m4 2021-06-02 22:05:58.000000000 +0800 @@ -12,11 +12,11 @@ # serial 4221 ltversion.m4 # This file is part of GNU Libtool -m4_define([LT_PACKAGE_VERSION], [2.4.6.42-b88ce]) +m4_define([LT_PACKAGE_VERSION], [2.4.6.42-b88ce-dirty]) m4_define([LT_PACKAGE_REVISION], [2.4.6.42]) AC_DEFUN([LTVERSION_VERSION], -[macro_version='2.4.6.42-b88ce' +[macro_version='2.4.6.42-b88ce-dirty' macro_revision='2.4.6.42' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) diff -Nru libmbim-1.22.0/missing libmbim-1.24.8/missing --- libmbim-1.22.0/missing 2020-01-15 17:57:37.000000000 +0800 +++ libmbim-1.24.8/missing 2021-06-02 22:06:03.000000000 +0800 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2020 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify diff -Nru libmbim-1.22.0/src/Makefile.in libmbim-1.24.8/src/Makefile.in --- libmbim-1.22.0/src/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/src/Makefile.in 2021-06-02 22:06:04.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -90,9 +90,10 @@ subdir = src ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -193,7 +194,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -207,7 +207,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -224,6 +223,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -333,6 +340,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/src/common/Makefile.in libmbim-1.24.8/src/common/Makefile.in --- libmbim-1.22.0/src/common/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/src/common/Makefile.in 2021-06-02 22:06:04.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -91,9 +91,10 @@ subdir = src/common ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -229,7 +230,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -243,7 +243,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -260,6 +259,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -369,6 +376,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/src/common/test/Makefile.in libmbim-1.24.8/src/common/test/Makefile.in --- libmbim-1.22.0/src/common/test/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/src/common/test/Makefile.in 2021-06-02 22:06:04.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -92,9 +92,10 @@ subdir = src/common/test ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -191,7 +192,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -205,7 +205,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -222,6 +221,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -331,6 +338,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/src/libmbim-glib/Makefile.am libmbim-1.24.8/src/libmbim-glib/Makefile.am --- libmbim-1.22.0/src/libmbim-glib/Makefile.am 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/Makefile.am 2021-06-02 19:05:37.000000000 +0800 @@ -68,3 +68,43 @@ $(NULL) EXTRA_DIST = mbim-version.h.in + +# Introspection + +if HAVE_INTROSPECTION + +INTROSPECTION_GIRS = Mbim-1.0.gir +INTROSPECTION_SCANNER_ARGS = --warn-all +INTROSPECTION_COMPILER_ARGS = + +Mbim-1.0.gir: libmbim-glib.la +Mbim_1_0_gir_INCLUDES = GLib-2.0 GObject-2.0 Gio-2.0 +Mbim_1_0_gir_CFLAGS = $(libmbim_glib_core_la_CPPFLAGS) +Mbim_1_0_gir_LIBS = libmbim-glib.la +Mbim_1_0_gir_EXPORT_PACKAGES = libmbim-glib +Mbim_1_0_gir_SCANNERFLAGS = \ + $(WARN_SCANNERFLAGS) \ + --c-include "libmbim-glib.h" \ + --identifier-prefix=MBIM \ + --identifier-prefix=Mbim \ + --symbol-prefix=mbim_ \ + $(NULL) +Mbim_1_0_gir_FILES = \ + $(include_HEADERS) \ + $(filter-out %.h,$(libmbim_glib_la_SOURCES)) \ + $(filter %.c,$(libmbim_glib_la_SOURCES)) \ + $(wildcard generated/*.h) \ + $(wildcard generated/*.c) \ + $(NULL) + +girdir = $(datadir)/gir-1.0 +nodist_gir_DATA = $(INTROSPECTION_GIRS) + +typelibdir = $(libdir)/girepository-1.0 +nodist_typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) + +CLEANFILES = $(nodist_gir_DATA) $(nodist_typelib_DATA) + +endif # HAVE_INTROSPECTION + +-include $(INTROSPECTION_MAKEFILE) diff -Nru libmbim-1.22.0/src/libmbim-glib/Makefile.in libmbim-1.24.8/src/libmbim-glib/Makefile.in --- libmbim-1.22.0/src/libmbim-glib/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/Makefile.in 2021-06-02 22:06:04.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,6 +15,7 @@ @SET_MAKE@ + VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ @@ -92,9 +93,10 @@ subdir = src/libmbim-glib ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(include_HEADERS) \ @@ -130,7 +132,8 @@ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } -am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includedir)" +am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(girdir)" \ + "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(includedir)" LTLIBRARIES = $(lib_LTLIBRARIES) $(noinst_LTLIBRARIES) libmbim_glib_core_la_LIBADD = am_libmbim_glib_core_la_OBJECTS = libmbim_glib_core_la-mbim-utils.lo \ @@ -213,6 +216,7 @@ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac +DATA = $(nodist_gir_DATA) $(nodist_typelib_DATA) HEADERS = $(include_HEADERS) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive @@ -281,7 +285,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -295,7 +298,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -312,6 +314,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -421,6 +431,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -496,6 +507,36 @@ $(NULL) EXTRA_DIST = mbim-version.h.in + +# Introspection +@HAVE_INTROSPECTION_TRUE@INTROSPECTION_GIRS = Mbim-1.0.gir +@HAVE_INTROSPECTION_TRUE@INTROSPECTION_SCANNER_ARGS = --warn-all +@HAVE_INTROSPECTION_TRUE@INTROSPECTION_COMPILER_ARGS = +@HAVE_INTROSPECTION_TRUE@Mbim_1_0_gir_INCLUDES = GLib-2.0 GObject-2.0 Gio-2.0 +@HAVE_INTROSPECTION_TRUE@Mbim_1_0_gir_CFLAGS = $(libmbim_glib_core_la_CPPFLAGS) +@HAVE_INTROSPECTION_TRUE@Mbim_1_0_gir_LIBS = libmbim-glib.la +@HAVE_INTROSPECTION_TRUE@Mbim_1_0_gir_EXPORT_PACKAGES = libmbim-glib +@HAVE_INTROSPECTION_TRUE@Mbim_1_0_gir_SCANNERFLAGS = \ +@HAVE_INTROSPECTION_TRUE@ $(WARN_SCANNERFLAGS) \ +@HAVE_INTROSPECTION_TRUE@ --c-include "libmbim-glib.h" \ +@HAVE_INTROSPECTION_TRUE@ --identifier-prefix=MBIM \ +@HAVE_INTROSPECTION_TRUE@ --identifier-prefix=Mbim \ +@HAVE_INTROSPECTION_TRUE@ --symbol-prefix=mbim_ \ +@HAVE_INTROSPECTION_TRUE@ $(NULL) + +@HAVE_INTROSPECTION_TRUE@Mbim_1_0_gir_FILES = \ +@HAVE_INTROSPECTION_TRUE@ $(include_HEADERS) \ +@HAVE_INTROSPECTION_TRUE@ $(filter-out %.h,$(libmbim_glib_la_SOURCES)) \ +@HAVE_INTROSPECTION_TRUE@ $(filter %.c,$(libmbim_glib_la_SOURCES)) \ +@HAVE_INTROSPECTION_TRUE@ $(wildcard generated/*.h) \ +@HAVE_INTROSPECTION_TRUE@ $(wildcard generated/*.c) \ +@HAVE_INTROSPECTION_TRUE@ $(NULL) + +@HAVE_INTROSPECTION_TRUE@girdir = $(datadir)/gir-1.0 +@HAVE_INTROSPECTION_TRUE@nodist_gir_DATA = $(INTROSPECTION_GIRS) +@HAVE_INTROSPECTION_TRUE@typelibdir = $(libdir)/girepository-1.0 +@HAVE_INTROSPECTION_TRUE@nodist_typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) +@HAVE_INTROSPECTION_TRUE@CLEANFILES = $(nodist_gir_DATA) $(nodist_typelib_DATA) all: all-recursive .SUFFIXES: @@ -687,6 +728,48 @@ clean-libtool: -rm -rf .libs _libs +install-nodist_girDATA: $(nodist_gir_DATA) + @$(NORMAL_INSTALL) + @list='$(nodist_gir_DATA)'; test -n "$(girdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(girdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(girdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(girdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(girdir)" || exit $$?; \ + done + +uninstall-nodist_girDATA: + @$(NORMAL_UNINSTALL) + @list='$(nodist_gir_DATA)'; test -n "$(girdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(girdir)'; $(am__uninstall_files_from_dir) +install-nodist_typelibDATA: $(nodist_typelib_DATA) + @$(NORMAL_INSTALL) + @list='$(nodist_typelib_DATA)'; test -n "$(typelibdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(typelibdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(typelibdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(typelibdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(typelibdir)" || exit $$?; \ + done + +uninstall-nodist_typelibDATA: + @$(NORMAL_UNINSTALL) + @list='$(nodist_typelib_DATA)'; test -n "$(typelibdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(typelibdir)'; $(am__uninstall_files_from_dir) install-includeHEADERS: $(include_HEADERS) @$(NORMAL_INSTALL) @list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \ @@ -868,10 +951,10 @@ done check-am: all-am check: check-recursive -all-am: Makefile $(LTLIBRARIES) $(HEADERS) +all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS) installdirs: installdirs-recursive installdirs-am: - for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includedir)"; do \ + for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(includedir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-recursive @@ -896,6 +979,7 @@ mostlyclean-generic: clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) @@ -934,7 +1018,8 @@ info-am: -install-data-am: install-includeHEADERS +install-data-am: install-includeHEADERS install-nodist_girDATA \ + install-nodist_typelibDATA install-dvi: install-dvi-recursive @@ -987,7 +1072,8 @@ ps-am: -uninstall-am: uninstall-includeHEADERS uninstall-libLTLIBRARIES +uninstall-am: uninstall-includeHEADERS uninstall-libLTLIBRARIES \ + uninstall-nodist_girDATA uninstall-nodist_typelibDATA .MAKE: $(am__recursive_targets) install-am install-strip @@ -1000,17 +1086,23 @@ install-data install-data-am install-dvi install-dvi-am \ install-exec install-exec-am install-html install-html-am \ install-includeHEADERS install-info install-info-am \ - install-libLTLIBRARIES install-man install-pdf install-pdf-am \ + install-libLTLIBRARIES install-man install-nodist_girDATA \ + install-nodist_typelibDATA install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am uninstall-includeHEADERS \ - uninstall-libLTLIBRARIES + uninstall-libLTLIBRARIES uninstall-nodist_girDATA \ + uninstall-nodist_typelibDATA .PRECIOUS: Makefile +@HAVE_INTROSPECTION_TRUE@Mbim-1.0.gir: libmbim-glib.la + +-include $(INTROSPECTION_MAKEFILE) + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru libmbim-1.22.0/src/libmbim-glib/generated/Makefile.am libmbim-1.24.8/src/libmbim-glib/generated/Makefile.am --- libmbim-1.22.0/src/libmbim-glib/generated/Makefile.am 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/generated/Makefile.am 2021-06-02 19:05:37.000000000 +0800 @@ -55,20 +55,20 @@ # Error types mbim-error-types.h: $(top_srcdir)/src/libmbim-glib/mbim-errors.h $(top_srcdir)/build-aux/templates/mbim-error-types-template.h - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#ifndef __LIBMBIM_GLIB_ERROR_TYPES_H__\n#define __LIBMBIM_GLIB_ERROR_TYPES_H__\n#include \"mbim-errors.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-error-types-template.h \ --ftail "#endif /* __LIBMBIM_GLIB_ERROR_TYPES_H__ */\n" \ $(top_srcdir)/src/libmbim-glib/mbim-errors.h > $@ mbim-error-types.c: $(top_srcdir)/src/libmbim-glib/mbim-errors.h mbim-error-types.h $(top_srcdir)/build-aux/templates/mbim-error-types-template.c - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#include \"mbim-errors.h\"\n#include \"mbim-error-types.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-error-types-template.c \ $(top_srcdir)/src/libmbim-glib/mbim-errors.h > $@ mbim-error-quarks.c: $(top_srcdir)/src/libmbim-glib/mbim-errors.h mbim-error-types.h $(top_srcdir)/build-aux/templates/mbim-error-quarks-template.c - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#include \"mbim-errors.h\"\n#include \"mbim-error-types.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-error-quarks-template.c \ $(top_srcdir)/src/libmbim-glib/mbim-errors.h > $@ @@ -80,14 +80,14 @@ $(top_srcdir)/src/libmbim-glib/mbim-message.h \ $(top_srcdir)/src/libmbim-glib/mbim-enums.h mbim-enum-types.h: $(ENUMS) $(top_srcdir)/build-aux/templates/mbim-enum-types-template.h - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#ifndef __LIBMBIM_GLIB_ENUM_TYPES_H__\n#define __LIBMBIM_GLIB_ENUM_TYPES_H__\n#include \"mbim-uuid.h\"\n#include \"mbim-cid.h\"\n#include \"mbim-message.h\"\n#include \"mbim-enums.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-enum-types-template.h \ --ftail "#endif /* __LIBMBIM_GLIB_ENUM_TYPES_H__ */\n" \ $(ENUMS) > $@ mbim-enum-types.c: $(ENUMS) mbim-enum-types.h $(top_srcdir)/build-aux/templates/mbim-enum-types-template.c - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#include \"mbim-enum-types.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-enum-types-template.c \ $(ENUMS) > $@ diff -Nru libmbim-1.22.0/src/libmbim-glib/generated/Makefile.in libmbim-1.24.8/src/libmbim-glib/generated/Makefile.in --- libmbim-1.22.0/src/libmbim-glib/generated/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/generated/Makefile.in 2021-06-02 22:06:04.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -92,9 +92,10 @@ subdir = src/libmbim-glib/generated ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -254,7 +255,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -268,7 +268,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -285,6 +284,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -394,6 +401,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -829,7 +837,8 @@ done install: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) install-am -install-exec: install-exec-am +install-exec: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data: install-data-am uninstall: uninstall-am @@ -963,7 +972,7 @@ uninstall-am: uninstall-nodist_includeHEADERS -.MAKE: all check install install-am install-strip +.MAKE: all check install install-am install-exec install-strip .PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ clean-generic clean-libtool clean-noinstLTLIBRARIES \ @@ -986,32 +995,32 @@ # Error types mbim-error-types.h: $(top_srcdir)/src/libmbim-glib/mbim-errors.h $(top_srcdir)/build-aux/templates/mbim-error-types-template.h - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#ifndef __LIBMBIM_GLIB_ERROR_TYPES_H__\n#define __LIBMBIM_GLIB_ERROR_TYPES_H__\n#include \"mbim-errors.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-error-types-template.h \ --ftail "#endif /* __LIBMBIM_GLIB_ERROR_TYPES_H__ */\n" \ $(top_srcdir)/src/libmbim-glib/mbim-errors.h > $@ mbim-error-types.c: $(top_srcdir)/src/libmbim-glib/mbim-errors.h mbim-error-types.h $(top_srcdir)/build-aux/templates/mbim-error-types-template.c - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#include \"mbim-errors.h\"\n#include \"mbim-error-types.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-error-types-template.c \ $(top_srcdir)/src/libmbim-glib/mbim-errors.h > $@ mbim-error-quarks.c: $(top_srcdir)/src/libmbim-glib/mbim-errors.h mbim-error-types.h $(top_srcdir)/build-aux/templates/mbim-error-quarks-template.c - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#include \"mbim-errors.h\"\n#include \"mbim-error-types.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-error-quarks-template.c \ $(top_srcdir)/src/libmbim-glib/mbim-errors.h > $@ mbim-enum-types.h: $(ENUMS) $(top_srcdir)/build-aux/templates/mbim-enum-types-template.h - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#ifndef __LIBMBIM_GLIB_ENUM_TYPES_H__\n#define __LIBMBIM_GLIB_ENUM_TYPES_H__\n#include \"mbim-uuid.h\"\n#include \"mbim-cid.h\"\n#include \"mbim-message.h\"\n#include \"mbim-enums.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-enum-types-template.h \ --ftail "#endif /* __LIBMBIM_GLIB_ENUM_TYPES_H__ */\n" \ $(ENUMS) > $@ mbim-enum-types.c: $(ENUMS) mbim-enum-types.h $(top_srcdir)/build-aux/templates/mbim-enum-types-template.c - $(AM_V_GEN) $(GLIB_MKENUMS) \ + $(AM_V_GEN) $(PYTHON) $(top_srcdir)/build-aux/mbim-mkenums \ --fhead "#include \"mbim-enum-types.h\"\n" \ --template $(top_srcdir)/build-aux/templates/mbim-enum-types-template.c \ $(ENUMS) > $@ diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-cid.c libmbim-1.24.8/src/libmbim-glib/mbim-cid.c --- libmbim-1.22.0/src/libmbim-glib/mbim-cid.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-cid.c 2021-06-02 19:05:37.000000000 +0800 @@ -25,14 +25,6 @@ #include "mbim-uuid.h" #include "mbim-enum-types.h" -/** - * SECTION: mbim-cid - * @title: Command IDs - * @short_description: Generic command handling routines. - * - * This section defines the interface of the known command IDs. - */ - typedef struct { gboolean set; gboolean query; @@ -178,15 +170,6 @@ { SET, NO_QUERY, NO_NOTIFY }, /* MBIM_CID_MS_BASIC_CONNECT_EXTENSIONS_DEVICE_RESET */ }; -/** - * mbim_cid_can_set: - * @service: a #MbimService. - * @cid: a command ID. - * - * Checks whether the given command allows setting. - * - * Returns: %TRUE if the command allows setting, %FALSE otherwise. - */ gboolean mbim_cid_can_set (MbimService service, guint cid) @@ -234,15 +217,6 @@ } } -/** - * mbim_cid_can_query: - * @service: a #MbimService. - * @cid: a command ID. - * - * Checks whether the given command allows querying. - * - * Returns: %TRUE if the command allows querying, %FALSE otherwise. - */ gboolean mbim_cid_can_query (MbimService service, guint cid) @@ -290,15 +264,6 @@ } } -/** - * mbim_cid_can_notify: - * @service: a #MbimService. - * @cid: a command ID. - * - * Checks whether the given command allows notifying. - * - * Returns: %TRUE if the command allows notifying, %FALSE otherwise. - */ gboolean mbim_cid_can_notify (MbimService service, guint cid) @@ -346,16 +311,6 @@ } } -/** - * mbim_cid_get_printable: - * @service: a #MbimService. - * @cid: a command ID. - * - * Gets a printable string for the command specified by the @service and the - * @cid. - * - * Returns: (transfer none): a constant string. - */ const gchar * mbim_cid_get_printable (MbimService service, guint cid) diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-cid.h libmbim-1.24.8/src/libmbim-glib/mbim-cid.h --- libmbim-1.22.0/src/libmbim-glib/mbim-cid.h 2019-03-27 21:26:00.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-cid.h 2021-06-02 19:05:37.000000000 +0800 @@ -35,6 +35,14 @@ G_BEGIN_DECLS /** + * SECTION: mbim-cid + * @title: Command IDs + * @short_description: Generic command handling routines. + * + * This section defines the interface of the known command IDs. + */ + +/** * MbimCidBasicConnect: * @MBIM_CID_BASIC_CONNECT_UNKNOWN: Unknown command. * @MBIM_CID_BASIC_CONNECT_DEVICE_CAPS: Device capabilities. @@ -53,7 +61,7 @@ * @MBIM_CID_BASIC_CONNECT_SERVICE_ACTIVATION: Service activation. * @MBIM_CID_BASIC_CONNECT_IP_CONFIGURATION: IP configuration. * @MBIM_CID_BASIC_CONNECT_DEVICE_SERVICES: Device services. - * @MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST: Device service subscribe list. + * @MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST: Device service subscribe list. Since 1.8. * @MBIM_CID_BASIC_CONNECT_PACKET_STATISTICS: Packet statistics. * @MBIM_CID_BASIC_CONNECT_NETWORK_IDLE_HINT: Network idle hint. * @MBIM_CID_BASIC_CONNECT_EMERGENCY_MODE: Emergency mode. @@ -61,8 +69,10 @@ * @MBIM_CID_BASIC_CONNECT_MULTICARRIER_PROVIDERS: Multicarrier providers. * * MBIM commands in the %MBIM_SERVICE_BASIC_CONNECT service. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CID_BASIC_CONNECT_UNKNOWN = 0, MBIM_CID_BASIC_CONNECT_DEVICE_CAPS = 1, MBIM_CID_BASIC_CONNECT_SUBSCRIBER_READY_STATUS = 2, @@ -99,8 +109,10 @@ * @MBIM_CID_SMS_MESSAGE_STORE_STATUS: Store message status. * * MBIM commands in the %MBIM_SERVICE_SMS service. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CID_SMS_UNKNOWN = 0, MBIM_CID_SMS_CONFIGURATION = 1, MBIM_CID_SMS_READ = 2, @@ -111,12 +123,14 @@ /** * MbimCidUssd: - * @MBIM_CID_USSD_UNKNOWN: Unknown command. + * @MBIM_CID_USSD_UNKNOWN: Unknown command. Since 1.4. * @MBIM_CID_USSD: USSD operation. * * MBIM commands in the %MBIM_SERVICE_USSD service. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CID_USSD_UNKNOWN = 0, MBIM_CID_USSD = 1, } MbimCidUssd; @@ -130,8 +144,10 @@ * @MBIM_CID_PHONEBOOK_WRITE: Write. * * MBIM commands in the %MBIM_SERVICE_PHONEBOOK service. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CID_PHONEBOOK_UNKNOWN = 0, MBIM_CID_PHONEBOOK_CONFIGURATION = 1, MBIM_CID_PHONEBOOK_READ = 2, @@ -147,8 +163,10 @@ * @MBIM_CID_STK_ENVELOPE: Envelope. * * MBIM commands in the %MBIM_SERVICE_STK service. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CID_STK_UNKNOWN = 0, MBIM_CID_STK_PAC = 1, MBIM_CID_STK_TERMINAL_RESPONSE = 2, @@ -163,8 +181,10 @@ * @MBIM_CID_AUTH_SIM: SIM. * * MBIM commands in the %MBIM_SERVICE_AUTH service. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CID_AUTH_UNKNOWN = 0, MBIM_CID_AUTH_AKA = 1, MBIM_CID_AUTH_AKAP = 2, @@ -177,8 +197,10 @@ * @MBIM_CID_DSS_CONNECT: Connect. * * MBIM commands in the %MBIM_SERVICE_DSS service. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CID_DSS_UNKNOWN = 0, MBIM_CID_DSS_CONNECT = 1 } MbimCidDss; @@ -189,8 +211,10 @@ * @MBIM_CID_MS_FIRMWARE_ID_GET: Get Firmware ID. * * MBIM commands in the %MBIM_SERVICE_MS_FIRMWARE_ID service. + * + * Since: 1.8 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CID_MS_FIRMWARE_ID_UNKNOWN = 0, MBIM_CID_MS_FIRMWARE_ID_GET = 1 } MbimCidMsFirmwareId; @@ -201,8 +225,10 @@ * @MBIM_CID_MS_HOST_SHUTDOWN_NOTIFY: Notify that the host is shutting down. * * MBIM commands in the %MBIM_SERVICE_MS_HOST_SHUTDOWN service. + * + * Since: 1.8 */ -typedef enum { +typedef enum { /*< since=1.8 >*/ MBIM_CID_MS_HOST_SHUTDOWN_UNKNOWN = 0, MBIM_CID_MS_HOST_SHUTDOWN_NOTIFY = 1 } MbimCidMsHostShutdown; @@ -213,8 +239,10 @@ * @MBIM_CID_PROXY_CONTROL_CONFIGURATION: Configuration. * * MBIM commands in the %MBIM_SERVICE_PROXY_CONTROL service. + * + * Since: 1.10 */ -typedef enum { +typedef enum { /*< since=1.10 >*/ MBIM_CID_PROXY_CONTROL_UNKNOWN = 0, MBIM_CID_PROXY_CONTROL_CONFIGURATION = 1 } MbimCidProxyControl; @@ -225,8 +253,10 @@ * @MBIM_CID_QMI_MSG: Send QMI request and receive QMI response. * * MBIM commands in the %MBIM_SERVICE_QMI service. + * + * Since: 1.14 */ -typedef enum { +typedef enum { /*< since=1.14 >*/ MBIM_CID_QMI_UNKNOWN = 0, MBIM_CID_QMI_MSG = 1 } MbimCidQmi; @@ -241,8 +271,10 @@ * @MBIM_CID_ATDS_REGISTER_STATE: Registration state. * * MBIM commands in the %MBIM_SERVICE_ATDS service. + * + * Since: 1.16 */ -typedef enum { +typedef enum { /*< since=1.16 >*/ MBIM_CID_ATDS_UNKNOWN = 0, MBIM_CID_ATDS_SIGNAL = 1, MBIM_CID_ATDS_LOCATION = 2, @@ -257,8 +289,10 @@ * @MBIM_CID_INTEL_FIRMWARE_UPDATE_MODEM_REBOOT: Reboot modem for firmware update. * * MBIM commands in the %MBIM_SERVICE_INTEL_FIRMWARE_UPDATE service. + * + * Since: 1.16 */ -typedef enum { +typedef enum { /*< since=1.16 >*/ MBIM_CID_INTEL_FIRMWARE_UPDATE_UNKNOWN = 0, MBIM_CID_INTEL_FIRMWARE_UPDATE_MODEM_REBOOT = 1, } MbimCidIntelFirmwareUpdate; @@ -278,8 +312,10 @@ * @MBIM_CID_MS_BASIC_CONNECT_EXTENSIONS_DEVICE_RESET: Device reset. * * MBIM commands in the %MBIM_SERVICE_MS_BASIC_CONNECT_EXTENSIONS service. + * + * Since: 1.18 */ -typedef enum { +typedef enum { /*< since=1.18 >*/ MBIM_CID_MS_BASIC_CONNECT_EXTENSIONS_UNKNOWN = 0, MBIM_CID_MS_BASIC_CONNECT_EXTENSIONS_PROVISIONED_CONTEXTS = 1, MBIM_CID_MS_BASIC_CONNECT_EXTENSIONS_NETWORK_BLACKLIST = 2, @@ -295,12 +331,61 @@ /* Command helpers */ -gboolean mbim_cid_can_set (MbimService service, - guint cid); -gboolean mbim_cid_can_query (MbimService service, - guint cid); -gboolean mbim_cid_can_notify (MbimService service, - guint cid); +/** + * mbim_cid_can_set: + * @service: a #MbimService. + * @cid: a command ID. + * + * Checks whether the given command allows setting. + * + * Returns: %TRUE if the command allows setting, %FALSE otherwise. + * + * Since: 1.0 + */ +gboolean mbim_cid_can_set (MbimService service, + guint cid); + +/** + * mbim_cid_can_query: + * @service: a #MbimService. + * @cid: a command ID. + * + * Checks whether the given command allows querying. + * + * Returns: %TRUE if the command allows querying, %FALSE otherwise. + * + * Since: 1.0 + */ +gboolean mbim_cid_can_query (MbimService service, + guint cid); + +/** + * mbim_cid_can_notify: + * @service: a #MbimService. + * @cid: a command ID. + * + * Checks whether the given command allows notifying. + * + * Returns: %TRUE if the command allows notifying, %FALSE otherwise. + * + * Since: 1.0 + */ +gboolean mbim_cid_can_notify (MbimService service, + guint cid); + + +/** + * mbim_cid_get_printable: + * @service: a #MbimService. + * @cid: a command ID. + * + * Gets a printable string for the command specified by the @service and the + * @cid. + * + * Returns: a constant string. + * + * Since: 1.0 + */ const gchar *mbim_cid_get_printable (MbimService service, guint cid); diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-compat.c libmbim-1.24.8/src/libmbim-glib/mbim-compat.c --- libmbim-1.22.0/src/libmbim-glib/mbim-compat.c 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-compat.c 2021-06-02 19:05:37.000000000 +0800 @@ -20,31 +20,11 @@ #include "mbim-compat.h" -/** - * SECTION: mbim-compat - * @title: Deprecated API - * @short_description: Types and functions flagged as deprecated. - * - * This section defines types and functions that have been deprecated. - */ - #ifndef MBIM_DISABLE_DEPRECATED /*****************************************************************************/ /* 'Service Subscriber List' rename to 'Service Subscribe List' */ -/** - * mbim_message_device_service_subscriber_list_set_new: - * @events_count: the 'EventsCount' field, given as a #guint32. - * @events: the 'Events' field, given as an array of #MbimEventEntrys. - * @error: return location for error or %NULL. - * - * Create a new request for the 'Device Service Subscribe List' set command in the 'Basic Connect' service. - * - * Returns: a newly allocated #MbimMessage, which should be freed with mbim_message_unref(). - * - * Deprecated:1.8.0: Use mbim_message_device_service_subscribe_list_set_new() instead. - */ MbimMessage * mbim_message_device_service_subscriber_list_set_new ( guint32 events_count, @@ -57,19 +37,6 @@ error)); } -/** - * mbim_message_device_service_subscriber_list_response_parse: - * @message: the #MbimMessage. - * @events_count: return location for a #guint32, or %NULL if the 'EventsCount' field is not needed. - * @events: return location for a newly allocated array of #MbimEventEntrys, or %NULL if the 'Events' field is not needed. Free the returned value with mbim_event_entry_array_free(). - * @error: return location for error or %NULL. - * - * Create a new request for the 'Events' response command in the 'Basic Connect' service. - * - * Returns: %TRUE if the message was correctly parsed, %FALSE if @error is set. - * - * Deprecated:1.8.0: Use mbim_message_device_service_subscribe_list_response_parse() instead. - */ gboolean mbim_message_device_service_subscriber_list_response_parse ( const MbimMessage *message, diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-compat.h libmbim-1.24.8/src/libmbim-glib/mbim-compat.h --- libmbim-1.22.0/src/libmbim-glib/mbim-compat.h 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-compat.h 2021-06-02 19:05:37.000000000 +0800 @@ -32,6 +32,14 @@ G_BEGIN_DECLS +/** + * SECTION: mbim-compat + * @title: Deprecated API + * @short_description: Types and functions flagged as deprecated. + * + * This section defines types and functions that have been deprecated. + */ + #ifndef MBIM_DISABLE_DEPRECATED /*****************************************************************************/ @@ -46,7 +54,8 @@ * * Modem should auto-attach to the network after registration. * - * Deprecated:1.8.0: Use MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH instead. + * Since: 1.0 + * Deprecated: 1.8: Use MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH instead. */ #define MBIM_REGISTRATION_FLAG_MANUAL_PACKET_SERVICE_AUTOMATIC_ATTACH (MbimDeprecatedRegistrationFlag) MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH @@ -62,16 +71,44 @@ * * Device service subscribe list. * - * Deprecated:1.8.0: Use MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST instead. + * Since: 1.0 + * Deprecated: 1.8: Use MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST instead. */ #define MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBER_LIST (MbimDeprecatedCidBasicConnect) MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST +/** + * mbim_message_device_service_subscriber_list_set_new: + * @events_count: the 'EventsCount' field, given as a #guint32. + * @events: the 'Events' field, given as an array of #MbimEventEntrys. + * @error: return location for error or %NULL. + * + * Create a new request for the 'Device Service Subscribe List' set command in the 'Basic Connect' service. + * + * Returns: a newly allocated #MbimMessage, which should be freed with mbim_message_unref(). + * + * Since: 1.0 + * Deprecated: 1.8: Use mbim_message_device_service_subscribe_list_set_new() instead. + */ G_DEPRECATED_FOR (mbim_message_device_service_subscribe_list_set_new) MbimMessage *mbim_message_device_service_subscriber_list_set_new ( guint32 events_count, const MbimEventEntry *const *events, GError **error); +/** + * mbim_message_device_service_subscriber_list_response_parse: + * @message: the #MbimMessage. + * @events_count: return location for a #guint32, or %NULL if the 'EventsCount' field is not needed. + * @events: return location for a newly allocated array of #MbimEventEntrys, or %NULL if the 'Events' field is not needed. Free the returned value with mbim_event_entry_array_free(). + * @error: return location for error or %NULL. + * + * Create a new request for the 'Events' response command in the 'Basic Connect' service. + * + * Returns: %TRUE if the message was correctly parsed, %FALSE if @error is set. + * + * Since: 1.0 + * Deprecated: 1.8: Use mbim_message_device_service_subscribe_list_response_parse() instead. + */ G_DEPRECATED_FOR (mbim_message_device_service_subscribe_list_response_parse) gboolean mbim_message_device_service_subscriber_list_response_parse ( const MbimMessage *message, diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-device.c libmbim-1.24.8/src/libmbim-glib/mbim-device.c --- libmbim-1.22.0/src/libmbim-glib/mbim-device.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-device.c 2021-06-02 19:05:37.000000000 +0800 @@ -55,17 +55,6 @@ #include "mbim-proxy.h" #include "mbim-proxy-control.h" -/** - * SECTION:mbim-device - * @title: MbimDevice - * @short_description: Generic MBIM device handling routines - * - * #MbimDevice is a generic type in charge of controlling the access to the - * managed MBIM port. - * - * A #MbimDevice can only handle one single MBIM port. - */ - static void async_initable_iface_init (GAsyncInitableIface *iface); G_DEFINE_TYPE_EXTENDED (MbimDevice, mbim_device, G_TYPE_OBJECT, 0, @@ -169,8 +158,11 @@ if (ctx->fragments) mbim_message_unref (ctx->fragments); - if (ctx->timeout_source) - g_source_destroy (ctx->timeout_source); + if (ctx->timeout_source) { + if (!g_source_is_destroyed (ctx->timeout_source)) + g_source_destroy (ctx->timeout_source); + g_source_unref (ctx->timeout_source); + } if (ctx->cancellable) { if (ctx->cancellable_id) @@ -285,7 +277,7 @@ { GTask *task; TransactionContext *ctx; - GError *error = NULL; + g_autoptr(GError) error = NULL; task = device_release_transaction (wait_ctx->self, wait_ctx->type, @@ -316,8 +308,6 @@ } transaction_task_complete_and_free (task, error); - g_error_free (error); - return G_SOURCE_REMOVE; } @@ -327,7 +317,7 @@ { GTask *task; TransactionContext *ctx; - GError *error = NULL; + g_autoptr(GError) error = NULL; task = device_release_transaction (wait_ctx->self, wait_ctx->type, @@ -347,7 +337,6 @@ MBIM_CORE_ERROR_ABORTED, "Transaction aborted"); transaction_task_complete_and_free (task, error); - g_error_free (error); } static gboolean @@ -383,7 +372,6 @@ ctx->timeout_source = g_timeout_source_new (timeout_ms); g_source_set_callback (ctx->timeout_source, (GSourceFunc)transaction_timed_out, ctx->wait_ctx, NULL); g_source_attach (ctx->timeout_source, g_main_context_get_thread_default ()); - g_source_unref (ctx->timeout_source); } /* Indication transactions don't have cancellable */ @@ -411,14 +399,6 @@ /*****************************************************************************/ -/** - * mbim_device_get_file: - * @self: a #MbimDevice. - * - * Get the #GFile associated with this #MbimDevice. - * - * Returns: a #GFile that must be freed with g_object_unref(). - */ GFile * mbim_device_get_file (MbimDevice *self) { @@ -432,15 +412,6 @@ return file; } -/** - * mbim_device_peek_file: - * @self: a #MbimDevice. - * - * Get the #GFile associated with this #MbimDevice, without increasing the reference count - * on the returned object. - * - * Returns: a #GFile. Do not free the returned object, it is owned by @self. - */ GFile * mbim_device_peek_file (MbimDevice *self) { @@ -449,14 +420,6 @@ return self->priv->file; } -/** - * mbim_device_get_path: - * @self: a #MbimDevice. - * - * Get the system path of the underlying MBIM device. - * - * Returns: the system path of the device. - */ const gchar * mbim_device_get_path (MbimDevice *self) { @@ -465,14 +428,6 @@ return self->priv->path; } -/** - * mbim_device_get_path_display: - * @self: a #MbimDevice. - * - * Get the system path of the underlying MBIM device in UTF-8. - * - * Returns: UTF-8 encoded system path of the device. - */ const gchar * mbim_device_get_path_display (MbimDevice *self) { @@ -481,14 +436,6 @@ return self->priv->path_display; } -/** - * mbim_device_is_open: - * @self: a #MbimDevice. - * - * Checks whether the #MbimDevice is open for I/O. - * - * Returns: %TRUE if @self is open, %FALSE otherwise. - */ gboolean mbim_device_is_open (MbimDevice *self) { @@ -504,26 +451,24 @@ indication_ready (MbimDevice *self, GAsyncResult *res) { - GError *error = NULL; - MbimMessage *indication; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) indication = NULL; if (!(indication = g_task_propagate_pointer (G_TASK (res), &error))) { g_debug ("[%s] Error processing indication message: %s", self->priv->path_display, error->message); - g_error_free (error); return; } g_signal_emit (self, signals[SIGNAL_INDICATE_STATUS], 0, indication); - mbim_message_unref (indication); } static void finalize_pending_open_request (MbimDevice *self) { - GTask *task; - GError *error = NULL; + GTask *task; + g_autoptr(GError) error = NULL; if (!self->priv->open_transaction_id) return; @@ -543,7 +488,6 @@ error = g_error_new (MBIM_CORE_ERROR, MBIM_CORE_ERROR_UNKNOWN_STATE, "device state is unknown"); transaction_task_complete_and_free (task, error); - g_error_free (error); } static void @@ -556,7 +500,7 @@ _mbim_message_fragment_get_total (message) > 1); if (mbim_utils_get_traces_enabled ()) { - gchar *printable; + g_autofree gchar *printable = NULL; printable = mbim_common_str_hex (((GByteArray *)message)->data, ((GByteArray *)message)->len, @@ -569,14 +513,14 @@ is_partial_fragment ? " (partial fragment)" : "", ((GByteArray *)message)->len, printable); - g_free (printable); if (is_partial_fragment) { - printable = mbim_message_get_printable (message, ">>>>>> ", TRUE); + g_autofree gchar *translated = NULL; + + translated = mbim_message_get_printable (message, ">>>>>> ", TRUE); g_debug ("[%s] Received message fragment (translated)...\n%s", self->priv->path_display, - printable); - g_free (printable); + translated); } } @@ -585,7 +529,7 @@ case MBIM_MESSAGE_TYPE_CLOSE_DONE: case MBIM_MESSAGE_TYPE_COMMAND_DONE: case MBIM_MESSAGE_TYPE_INDICATE_STATUS: { - GError *error = NULL; + g_autoptr(GError) error = NULL; GTask *task; TransactionContext *ctx; TransactionType transaction_type = TRANSACTION_TYPE_UNKNOWN; @@ -615,18 +559,16 @@ (MBIM_MESSAGE_GET_MESSAGE_TYPE (message) - 0x80000000), mbim_message_get_transaction_id (message)); if (!task) { - gchar *printable; + g_autofree gchar *printable = NULL; g_debug ("[%s] No transaction matched in received message", self->priv->path_display); /* Attempt to print a user friendly dump of the packet anyway */ printable = mbim_message_get_printable (message, ">>>>>> ", is_partial_fragment); - if (printable) { + if (printable) g_debug ("[%s] Received unexpected message (translated)...\n%s", self->priv->path_display, printable); - g_free (printable); - } /* If we're opening and we get a CLOSE_DONE message without any * matched transaction, finalize the open request right away to @@ -658,7 +600,6 @@ if (error) { device_report_error (self, ctx->transaction_id, error); transaction_task_complete_and_free (task, error); - g_error_free (error); return; } @@ -666,13 +607,12 @@ if (_mbim_message_fragment_collector_complete (ctx->fragments)) { /* Now, translate the whole message */ if (mbim_utils_get_traces_enabled ()) { - gchar *printable; + g_autofree gchar *printable = NULL; printable = mbim_message_get_printable (ctx->fragments, ">>>>>> ", FALSE); g_debug ("[%s] Received message (translated)...\n%s", self->priv->path_display, printable); - g_free (printable); } transaction_task_complete_and_free (task, NULL); @@ -689,8 +629,8 @@ } case MBIM_MESSAGE_TYPE_FUNCTION_ERROR: { - GError *error_indication; - GTask *task; + g_autoptr(GError) error_indication = NULL; + GTask *task; /* Try to match this transaction just per transaction ID */ task = device_release_transaction (self, @@ -703,19 +643,17 @@ self->priv->path_display); if (mbim_utils_get_traces_enabled ()) { - gchar *printable; + g_autofree gchar *printable = NULL; printable = mbim_message_get_printable (message, ">>>>>> ", FALSE); g_debug ("[%s] Received message (translated)...\n%s", self->priv->path_display, printable); - g_free (printable); } /* Signals are emitted regardless of whether the transaction matched or not */ error_indication = mbim_message_error_get_error (message); g_signal_emit (self, signals[SIGNAL_ERROR], 0, error_indication); - g_error_free (error_indication); if (task) { TransactionContext *ctx; @@ -743,12 +681,32 @@ } } +static gboolean +validate_message_type (const MbimMessage *message) +{ + switch (mbim_message_get_message_type (message)) { + case MBIM_MESSAGE_TYPE_OPEN: + case MBIM_MESSAGE_TYPE_CLOSE: + case MBIM_MESSAGE_TYPE_COMMAND: + case MBIM_MESSAGE_TYPE_HOST_ERROR: + case MBIM_MESSAGE_TYPE_OPEN_DONE: + case MBIM_MESSAGE_TYPE_CLOSE_DONE: + case MBIM_MESSAGE_TYPE_COMMAND_DONE: + case MBIM_MESSAGE_TYPE_FUNCTION_ERROR: + case MBIM_MESSAGE_TYPE_INDICATE_STATUS: + return TRUE; + default: + case MBIM_MESSAGE_TYPE_INVALID: + return FALSE; + } +} + static void parse_response (MbimDevice *self) { do { const MbimMessage *message; - guint32 in_length; + guint32 in_length; /* If not even the MBIM header available, just return */ if (self->priv->response->len < 12) @@ -756,9 +714,16 @@ message = (const MbimMessage *)self->priv->response; + /* Fully ignore data that is clearly not a MBIM message */ + if (!validate_message_type (message)) { + g_warning ("[%s] discarding %u bytes in MBIM stream as message type validation fails", + self->priv->path_display, self->priv->response->len); + g_byte_array_remove_range (self->priv->response, 0, self->priv->response->len); + return; + } + /* No full message yet */ in_length = mbim_message_get_message_length (message); - if (self->priv->response->len < in_length) return; @@ -776,13 +741,13 @@ } static gboolean -data_available (GIOChannel *source, - GIOCondition condition, - MbimDevice *self) +data_available (GIOChannel *source, + GIOCondition condition, + MbimDevice *self) { - gsize bytes_read; + gsize bytes_read; GIOStatus status; - gchar buffer[MAX_CONTROL_TRANSFER + 1]; + gchar buffer[MAX_CONTROL_TRANSFER + 1]; if (condition & G_IO_HUP) { g_debug ("[%s] unexpected port hangup!", @@ -815,7 +780,7 @@ g_object_ref (self); { do { - GError *error = NULL; + g_autoptr(GError) error = NULL; /* Port is closed; we're done */ if (!self->priv->iochannel_source) @@ -826,14 +791,10 @@ self->priv->max_control_transfer, &bytes_read, &error); - if (status == G_IO_STATUS_ERROR) { - if (error) { - g_warning ("[%s] error reading from the IOChannel: '%s'", - self->priv->path_display, - error->message); - g_error_free (error); - } - } + if (status == G_IO_STATUS_ERROR && error) + g_warning ("[%s] error reading from the IOChannel: '%s'", + self->priv->path_display, + error->message); /* If no bytes read, just let g_io_channel wait for more data */ if (bytes_read == 0) @@ -871,13 +832,13 @@ static gchar * get_descriptors_filepath (MbimDevice *self) { - GUdevClient *client; - GUdevDevice *device = NULL; - GUdevDevice *parent_device = NULL; - GUdevDevice *grandparent_device = NULL; - gchar *descriptors_path = NULL; - gchar *device_basename = NULL; - GError *error = NULL; + GUdevClient *client; + GUdevDevice *device = NULL; + GUdevDevice *parent_device = NULL; + GUdevDevice *grandparent_device = NULL; + g_autofree gchar *descriptors_path = NULL; + g_autofree gchar *device_basename = NULL; + g_autoptr(GError) error = NULL; client = g_udev_client_new (NULL); if (!G_UDEV_IS_CLIENT (client)) { @@ -902,7 +863,6 @@ if (!device_basename) { g_warning ("[%s] Invalid path for cdc-wdm control port: %s", self->priv->path_display, error->message); - g_clear_error (&error); goto out; } @@ -910,8 +870,9 @@ if (!device) { device = g_udev_client_query_by_subsystem_and_name (client, "usbmisc", device_basename); if (!device) { - g_warning ("[%s] Couldn't find udev device", - self->priv->path_display); + /* possibly using a different driver instead of cdc_mbim */ + g_debug ("[%s] Couldn't find udev device in usb/usbmisc subsystems", + self->priv->path_display); goto out; } } @@ -936,7 +897,6 @@ NULL); out: - g_free (device_basename); if (parent_device) g_object_unref (parent_device); if (grandparent_device) @@ -946,7 +906,7 @@ if (client) g_object_unref (client); - return descriptors_path; + return g_steal_pointer (&descriptors_path); } #else @@ -955,15 +915,15 @@ get_descriptors_filepath (MbimDevice *self) { static const gchar *subsystems[] = { "usbmisc", "usb" }; - guint i; - gchar *device_basename; - gchar *descriptors_path = NULL; + g_autofree gchar *device_basename = NULL; + g_autofree gchar *descriptors_path = NULL; + guint i; device_basename = g_path_get_basename (self->priv->path); - for (i = 0; !descriptors_path && i < G_N_ELEMENTS (subsystems); i++) { - gchar *tmp; - gchar *path; + for (i = 0; i < G_N_ELEMENTS (subsystems); i++) { + g_autofree gchar *tmp = NULL; + g_autofree gchar *path = NULL; /* parent sysfs can be built directly using subsystem and name; e.g. for subsystem * usbmisc and name cdc-wdm0: @@ -972,32 +932,24 @@ */ tmp = g_strdup_printf ("/sys/class/%s/%s/device", subsystems[i], device_basename); path = realpath (tmp, NULL); - g_free (tmp); - if (g_file_test (path, G_FILE_TEST_EXISTS)) { + if (path && g_file_test (path, G_FILE_TEST_EXISTS)) { /* Now look for the parent dir with descriptors file. */ - gchar *dirname; + g_autofree gchar *dirname = NULL; dirname = g_path_get_dirname (path); - descriptors_path = g_build_path (G_DIR_SEPARATOR_S, - dirname, - "descriptors", - NULL); - g_free (dirname); + descriptors_path = g_build_path (G_DIR_SEPARATOR_S, dirname, "descriptors", NULL); + break; } - g_free (path); } - g_free (device_basename); - if (descriptors_path && !g_file_test (descriptors_path, G_FILE_TEST_EXISTS)) { g_warning ("[%s] Descriptors file doesn't exist", self->priv->path_display); - g_free (descriptors_path); - descriptors_path = NULL; + return NULL; } - return descriptors_path; + return g_steal_pointer (&descriptors_path); } #endif @@ -1005,20 +957,24 @@ static guint16 read_max_control_transfer (MbimDevice *self) { - static const guint8 mbim_signature[4] = { 0x0c, 0x24, 0x1b, 0x00 }; - guint16 max = MAX_CONTROL_TRANSFER; - gchar *descriptors_path = NULL; - GError *error = NULL; - gchar *contents = NULL; - gsize length = 0; - guint i; + static const guint8 mbim_signature[4] = { 0x0c, 0x24, 0x1b, 0x00 }; + g_autoptr(GError) error = NULL; + g_autofree gchar *descriptors_path = NULL; + g_autofree gchar *contents = NULL; + gsize length = 0; + guint i; /* Build descriptors filepath */ descriptors_path = get_descriptors_filepath (self); if (!descriptors_path) { - g_warning ("[%s] Couldn't get descriptors file path", - self->priv->path_display); - goto out; + /* If descriptors file doesn't exist, it's probably because we're using + * some other kernel driver, not the cdc_wdm/cdc_mbim pair, so fallback to + * the default and avoid warning about it. */ + g_debug ("[%s] Couldn't find descriptors file, possibly not using cdc_mbim", + self->priv->path_display); + g_debug ("[%s] Fallback to default max control message size: %u", + self->priv->path_display, MAX_CONTROL_TRANSFER); + return MAX_CONTROL_TRANSFER; } if (!g_file_get_contents (descriptors_path, @@ -1028,20 +984,21 @@ g_warning ("[%s] Couldn't read descriptors file: %s", self->priv->path_display, error->message); - g_error_free (error); - goto out; + return MAX_CONTROL_TRANSFER; } i = 0; while (i <= (length - sizeof (struct usb_cdc_mbim_desc))) { /* Try to match the MBIM descriptor signature */ if ((memcmp (&contents[i], mbim_signature, sizeof (mbim_signature)) == 0)) { + guint16 max; + /* Found! */ max = GUINT16_FROM_LE (((struct usb_cdc_mbim_desc *)&contents[i])->wMaxControlMessage); g_debug ("[%s] Read max control message size from descriptors file: %" G_GUINT16_FORMAT, self->priv->path_display, max); - goto out; + return max; } /* The first byte of the descriptor info is the length; so keep on @@ -1051,12 +1008,7 @@ g_warning ("[%s] Couldn't find MBIM signature in descriptors file", self->priv->path_display); - -out: - g_free (contents); - g_free (descriptors_path); - - return max; + return MAX_CONTROL_TRANSFER; } typedef struct { @@ -1181,10 +1133,10 @@ static void create_iochannel_with_socket (GTask *task) { - MbimDevice *self; - CreateIoChannelContext *ctx; - GSocketAddress *socket_address; - GError *error = NULL; + MbimDevice *self; + CreateIoChannelContext *ctx; + g_autoptr(GSocketAddress) socket_address = NULL; + GError *error = NULL; self = g_task_get_source_object (task); ctx = g_task_get_task_data (task); @@ -1211,11 +1163,10 @@ G_SOCKET_CONNECTABLE (socket_address), NULL, &error)); - g_object_unref (socket_address); if (!self->priv->socket_connection) { - gchar **argc; - GSource *source; + g_auto(GStrv) argc = NULL; + g_autoptr(GSource) source = NULL; g_debug ("cannot connect to proxy: %s", error->message); g_clear_error (&error); @@ -1247,13 +1198,11 @@ g_debug ("error spawning mbim-proxy: %s", error->message); g_clear_error (&error); } - g_strfreev (argc); /* Wait some ms and retry */ source = g_timeout_source_new (100); g_source_set_callback (source, (GSourceFunc)wait_for_proxy_cb, task, NULL); g_source_attach (source, g_main_context_get_thread_default ()); - g_source_unref (source); return; } @@ -1326,16 +1275,6 @@ static void device_open_context_step (GTask *task); -/** - * mbim_device_open_full_finish: - * @self: a #MbimDevice. - * @res: a #GAsyncResult. - * @error: Return location for error or %NULL. - * - * Finishes an asynchronous open operation started with mbim_device_open_full(). - * - * Returns: %TRUE if successful, %FALSE if @error is set. - */ gboolean mbim_device_open_full_finish (MbimDevice *self, GAsyncResult *res, @@ -1344,16 +1283,6 @@ return g_task_propagate_boolean (G_TASK (res), error); } -/** - * mbim_device_open_finish: - * @self: a #MbimDevice. - * @res: a #GAsyncResult. - * @error: Return location for error or %NULL. - * - * Finishes an asynchronous open operation started with mbim_device_open(). - * - * Returns: %TRUE if successful, %FALSE if @error is set. - */ gboolean mbim_device_open_finish (MbimDevice *self, GAsyncResult *res, @@ -1369,9 +1298,9 @@ GAsyncResult *res, GTask *task) { - DeviceOpenContext *ctx; - MbimMessage *response; - GError *error = NULL; + DeviceOpenContext *ctx; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; ctx = g_task_get_task_data (task); @@ -1382,7 +1311,6 @@ if (!response) { /* If we get reported that the state is unknown, try to close before open */ if (g_error_matches (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_UNKNOWN_STATE)) { - g_clear_error (&error); ctx->close_before_open = TRUE; ctx->step = DEVICE_OPEN_CONTEXT_STEP_CLOSE_MESSAGE; device_open_context_step (task); @@ -1391,14 +1319,13 @@ /* Check if we should be retrying after a timeout */ if (g_error_matches (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_TIMEOUT)) { - g_clear_error (&error); device_open_context_step (task); return; } g_debug ("error reported in open operation: closed"); self->priv->open_status = OPEN_STATUS_CLOSED; - g_task_return_error (task, error); + g_task_return_error (task, g_steal_pointer (&error)); g_object_unref (task); return; } @@ -1406,14 +1333,11 @@ if (!mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_OPEN_DONE, &error)) { g_debug ("getting open done result failed: closed"); self->priv->open_status = OPEN_STATUS_CLOSED; - mbim_message_unref (response); - g_task_return_error (task, error); + g_task_return_error (task, g_steal_pointer (&error)); g_object_unref (task); return; } - mbim_message_unref (response); - /* go on */ ctx->step++; device_open_context_step (task); @@ -1422,8 +1346,8 @@ static void open_message (GTask *task) { - MbimDevice *self; - MbimMessage *request; + MbimDevice *self; + g_autoptr(MbimMessage) request = NULL; self = g_task_get_source_object (task); @@ -1437,7 +1361,6 @@ g_task_get_cancellable (task), (GAsyncReadyCallback)open_message_ready, task); - mbim_message_unref (request); } static void @@ -1445,9 +1368,9 @@ GAsyncResult *res, GTask *task) { - DeviceOpenContext *ctx; - MbimMessage *response; - GError *error = NULL; + DeviceOpenContext *ctx; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; ctx = g_task_get_task_data (task); @@ -1457,10 +1380,6 @@ else if (!mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_CLOSE_DONE, &error)) g_debug ("getting close done result failed: %s (ignored)", error->message); - g_clear_error (&error); - if (response) - mbim_message_unref (response); - /* go on */ ctx->step++; device_open_context_step (task); @@ -1469,8 +1388,8 @@ static void close_message_before_open (GTask *task) { - MbimDevice *self; - MbimMessage *request; + MbimDevice *self; + g_autoptr(MbimMessage) request = NULL; self = g_task_get_source_object (task); @@ -1482,7 +1401,6 @@ g_task_get_cancellable (task), (GAsyncReadyCallback)close_message_before_open_ready, task); - mbim_message_unref (request); } static void @@ -1490,9 +1408,9 @@ GAsyncResult *res, GTask *task) { - DeviceOpenContext *ctx; - MbimMessage *response; - GError *error = NULL; + DeviceOpenContext *ctx; + GError *error = NULL; + g_autoptr(MbimMessage) response = NULL; ctx = g_task_get_task_data (task); @@ -1506,8 +1424,6 @@ return; } - mbim_message_unref (response); - ctx->step++; device_open_context_step (task); } @@ -1515,15 +1431,15 @@ static void proxy_cfg_message (GTask *task) { - MbimDevice *self; - DeviceOpenContext *ctx; - GError *error = NULL; - MbimMessage *request; + MbimDevice *self; + DeviceOpenContext *ctx; + g_autoptr(MbimMessage) request = NULL; self = g_task_get_source_object (task); ctx = g_task_get_task_data (task); - request = mbim_message_proxy_control_configuration_set_new (self->priv->path, ctx->timeout, &error); + request = mbim_message_proxy_control_configuration_set_new (self->priv->path, ctx->timeout, NULL); + g_assert (request); /* This message is no longer a direct reply; as the proxy will also try to open the device * directly. If it cannot open the device, it will return an error. */ @@ -1533,16 +1449,15 @@ g_task_get_cancellable (task), (GAsyncReadyCallback)proxy_cfg_message_ready, task); - mbim_message_unref (request); } static void -create_iochannel_ready (MbimDevice *self, +create_iochannel_ready (MbimDevice *self, GAsyncResult *res, - GTask *task) + GTask *task) { DeviceOpenContext *ctx; - GError *error = NULL; + GError *error = NULL; if (!create_iochannel_finish (self, res, &error)) { g_debug ("creating iochannel failed: closed"); @@ -1561,11 +1476,11 @@ static void device_open_context_step (GTask *task) { - MbimDevice *self; + MbimDevice *self; DeviceOpenContext *ctx; self = g_task_get_source_object (task); - ctx = g_task_get_task_data (task); + ctx = g_task_get_task_data (task); /* Timed out? */ if (g_timer_elapsed (ctx->timer, NULL) > ctx->timeout) { @@ -1654,23 +1569,6 @@ g_assert_not_reached (); } -/** - * mbim_device_open_full: - * @self: a #MbimDevice. - * @flags: a set of #MbimDeviceOpenFlags. - * @timeout: maximum time, in seconds, to wait for the device to be opened. - * @cancellable: optional #GCancellable object, #NULL to ignore. - * @callback: a #GAsyncReadyCallback to call when the operation is finished. - * @user_data: the data to pass to callback function. - * - * Asynchronously opens a #MbimDevice for I/O. - * - * This method is an extension of the generic mbim_device_open(), which allows - * launching the #MbimDevice with proxy support. - * - * When the operation is finished @callback will be called. You can then call - * mbim_device_open_full_finish() to get the result of the operation. - */ void mbim_device_open_full (MbimDevice *self, MbimDeviceOpenFlags flags, @@ -1680,7 +1578,7 @@ gpointer user_data) { DeviceOpenContext *ctx; - GTask *task; + GTask *task; g_return_if_fail (MBIM_IS_DEVICE (self)); g_return_if_fail (timeout > 0); @@ -1699,19 +1597,6 @@ device_open_context_step (task); } -/** - * mbim_device_open: - * @self: a #MbimDevice. - * @timeout: maximum time, in seconds, to wait for the device to be opened. - * @cancellable: optional #GCancellable object, #NULL to ignore. - * @callback: a #GAsyncReadyCallback to call when the operation is finished. - * @user_data: the data to pass to callback function. - * - * Asynchronously opens a #MbimDevice for I/O. - * - * When the operation is finished @callback will be called. You can then call - * mbim_device_open_finish() to get the result of the operation. - */ void mbim_device_open (MbimDevice *self, guint timeout, @@ -1773,15 +1658,6 @@ return TRUE; } -/** - * mbim_device_close_force: - * @self: a #MbimDevice. - * @error: Return location for error or %NULL. - * - * Forces the #MbimDevice to be closed. - * - * Returns: %TRUE if @self if no error happens, otherwise %FALSE and @error is set. - */ gboolean mbim_device_close_force (MbimDevice *self, GError **error) @@ -1801,16 +1677,6 @@ g_slice_free (DeviceCloseContext, ctx); } -/** - * mbim_device_close_finish: - * @self: a #MbimDevice. - * @res: a #GAsyncResult. - * @error: Return location for error or %NULL. - * - * Finishes an asynchronous close operation started with mbim_device_close(). - * - * Returns: %TRUE if successful, %FALSE if @error is set. - */ gboolean mbim_device_close_finish (MbimDevice *self, GAsyncResult *res, @@ -1824,8 +1690,8 @@ GAsyncResult *res, GTask *task) { - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimMessage) response = NULL; + GError *error = NULL; response = mbim_device_command_finish (self, res, &error); if (!response) @@ -1836,26 +1702,9 @@ g_task_return_error (task, error); else g_task_return_boolean (task, TRUE); - - if (response) - mbim_message_unref (response); - g_object_unref (task); } -/** - * mbim_device_close: - * @self: a #MbimDevice. - * @timeout: maximum time, in seconds, to wait for the device to be closed. - * @cancellable: optional #GCancellable object, #NULL to ignore. - * @callback: a #GAsyncReadyCallback to call when the operation is finished. - * @user_data: the data to pass to callback function. - * - * Asynchronously closes a #MbimDevice for I/O. - * - * When the operation is finished @callback will be called. You can then call - * mbim_device_close_finish() to get the result of the operation. - */ void mbim_device_close (MbimDevice *self, guint timeout, @@ -1863,9 +1712,9 @@ GAsyncReadyCallback callback, gpointer user_data) { - MbimMessage *request; - DeviceCloseContext *ctx; - GTask *task; + g_autoptr(MbimMessage) request = NULL; + DeviceCloseContext *ctx; + GTask *task; g_return_if_fail (MBIM_IS_DEVICE (self)); @@ -1902,20 +1751,10 @@ cancellable, (GAsyncReadyCallback) close_message_ready, task); - mbim_message_unref (request); } /*****************************************************************************/ -/** - * mbim_device_get_next_transaction_id: - * @self: A #MbimDevice. - * - * Acquire the next transaction ID of this #MbimDevice. - * The internal transaction ID gets incremented. - * - * Returns: the next transaction ID. - */ guint32 mbim_device_get_next_transaction_id (MbimDevice *self) { @@ -1937,13 +1776,23 @@ /*****************************************************************************/ +guint32 +mbim_device_get_transaction_id (MbimDevice *self) +{ + g_return_val_if_fail (MBIM_IS_DEVICE (self), 0); + + return self->priv->transaction_id; +} + +/*****************************************************************************/ + static gboolean device_write (MbimDevice *self, const guint8 *data, guint32 data_length, GError **error) { - gsize written; + gsize written; GIOStatus write_status; written = 0; @@ -1987,33 +1836,32 @@ MbimMessage *message, GError **error) { - const guint8 *raw_message; - guint32 raw_message_len; - struct fragment_info *fragments; - guint n_fragments; - guint i; + const guint8 *raw_message; + guint32 raw_message_len; + g_autofree struct fragment_info *fragments = NULL; + guint n_fragments; + guint i; raw_message = mbim_message_get_raw (message, &raw_message_len, NULL); g_assert (raw_message); if (mbim_utils_get_traces_enabled ()) { - gchar *printable; + g_autofree gchar *hex = NULL; + g_autofree gchar *printable = NULL; - printable = mbim_common_str_hex (raw_message, raw_message_len, ':'); + hex = mbim_common_str_hex (raw_message, raw_message_len, ':'); g_debug ("[%s] Sent message...\n" "<<<<<< RAW:\n" "<<<<<< length = %u\n" "<<<<<< data = %s\n", self->priv->path_display, ((GByteArray *)message)->len, - printable); - g_free (printable); + hex); printable = mbim_message_get_printable (message, "<<<<<< ", FALSE); g_debug ("[%s] Sent message (translated)...\n%s", self->priv->path_display, printable); - g_free (printable); } /* Single fragment? Send it! */ @@ -2023,16 +1871,14 @@ /* The message to send must be able to handle fragments */ g_assert (_mbim_message_is_fragment (message)); - fragments = _mbim_message_split_fragments (message, - MAX_CONTROL_TRANSFER, - &n_fragments); + fragments = _mbim_message_split_fragments (message, MAX_CONTROL_TRANSFER, &n_fragments); for (i = 0; i < n_fragments; i++) { if (mbim_utils_get_traces_enabled ()) { - GByteArray *bytearray; - gchar *printable; - gchar *printable_h; - gchar *printable_fh; - gchar *printable_d; + g_autoptr(GByteArray) bytearray = NULL; + g_autofree gchar *printable = NULL; + g_autofree gchar *printable_h = NULL; + g_autofree gchar *printable_fh = NULL; + g_autofree gchar *printable_d = NULL; printable_h = mbim_common_str_hex (&fragments[i].header, sizeof (fragments[i].header), ':'); printable_fh = mbim_common_str_hex (&fragments[i].fragment_header, sizeof (fragments[i].fragment_header), ':'); @@ -2046,9 +1892,6 @@ sizeof (fragments[i].fragment_header) + fragments[i].data_length), printable_h, printable_fh, printable_d); - g_free (printable_h); - g_free (printable_fh); - g_free (printable_d); /* Dummy message for printable purposes only */ bytearray = g_byte_array_new (); @@ -2058,8 +1901,6 @@ g_debug ("[%s] Sent fragment (translated)...\n%s", self->priv->path_display, printable); - g_free (printable); - g_byte_array_unref (bytearray); } /* Write fragment headers */ @@ -2082,7 +1923,6 @@ error)) return FALSE; } - g_free (fragments); return TRUE; } @@ -2108,14 +1948,12 @@ { /* Device must be open */ if (ctx->self->priv->iochannel) { - GError *error = NULL; + g_autoptr(GError) error = NULL; - if (!device_send (ctx->self, ctx->message, &error)) { + if (!device_send (ctx->self, ctx->message, &error)) g_warning ("[%s] Couldn't send host error message: %s", ctx->self->priv->path_display, error->message); - g_error_free (error); - } } device_report_error_context_free (ctx); @@ -2128,7 +1966,7 @@ const GError *error) { ReportErrorContext *ctx; - GSource *source; + g_autoptr(GSource) source = NULL; /* Only protocol errors to be reported to the modem */ if (error->domain != MBIM_PROTOCOL_ERROR) @@ -2141,22 +1979,11 @@ source = g_idle_source_new (); g_source_set_callback (source, (GSourceFunc)device_report_error_in_idle, ctx, NULL); g_source_attach (source, g_main_context_get_thread_default ()); - g_source_unref (source); } /*****************************************************************************/ /* Command */ -/** - * mbim_device_command_finish: - * @self: a #MbimDevice. - * @res: a #GAsyncResult. - * @error: Return location for error or %NULL. - * - * Finishes an operation started with mbim_device_command(). - * - * Returns: a #MbimMessage response, or #NULL if @error is set. The returned value should be freed with mbim_message_unref(). - */ MbimMessage * mbim_device_command_finish (MbimDevice *self, GAsyncResult *res, @@ -2165,20 +1992,6 @@ return g_task_propagate_pointer (G_TASK (res), error); } -/** - * mbim_device_command: - * @self: a #MbimDevice. - * @message: the message to send. - * @timeout: maximum time, in seconds, to wait for the response. - * @cancellable: a #GCancellable, or %NULL. - * @callback: a #GAsyncReadyCallback to call when the operation is finished. - * @user_data: the data to pass to callback function. - * - * Asynchronously sends a #MbimMessage to the device. - * - * When the operation is finished @callback will be called. You can then call - * mbim_device_command_finish() to get the result of the operation. - */ void mbim_device_command (MbimDevice *self, MbimMessage *message, @@ -2187,9 +2000,9 @@ GAsyncReadyCallback callback, gpointer user_data) { - GError *error = NULL; - GTask *task; - guint32 transaction_id; + g_autoptr(GError) error = NULL; + GTask *task; + guint32 transaction_id; g_return_if_fail (MBIM_IS_DEVICE (self)); g_return_if_fail (message != NULL); @@ -2215,7 +2028,6 @@ MBIM_CORE_ERROR_WRONG_STATE, "Device must be open to send commands"); transaction_task_complete_and_free (task, error); - g_error_free (error); return; } @@ -2223,7 +2035,6 @@ if (!device_store_transaction (self, TRANSACTION_TYPE_HOST, task, timeout * 1000, &error)) { g_prefix_error (&error, "Cannot store transaction: "); transaction_task_complete_and_free (task, error); - g_error_free (error); return; } @@ -2234,7 +2045,6 @@ MBIM_MESSAGE_GET_MESSAGE_TYPE (message), mbim_message_get_transaction_id (message)); transaction_task_complete_and_free (task, error); - g_error_free (error); return; } @@ -2244,15 +2054,6 @@ /*****************************************************************************/ /* New MBIM device */ -/** - * mbim_device_new_finish: - * @res: a #GAsyncResult. - * @error: Return location for error or %NULL. - * - * Finishes an operation started with mbim_device_new(). - * - * Returns: A newly created #MbimDevice, or #NULL if @error is set. - */ MbimDevice * mbim_device_new_finish (GAsyncResult *res, GError **error) @@ -2267,17 +2068,6 @@ return (ret ? MBIM_DEVICE (ret) : NULL); } -/** - * mbim_device_new: - * @file: a #GFile. - * @cancellable: optional #GCancellable object, #NULL to ignore. - * @callback: a #GAsyncReadyCallback to call when the initialization is finished. - * @user_data: the data to pass to callback function. - * - * Asynchronously creates a #MbimDevice object to manage @file. - * When the operation is finished, @callback will be invoked. You can then call - * mbim_device_new_finish() to get the result of the operation. - */ void mbim_device_new (GFile *file, GCancellable *cancellable, @@ -2490,6 +2280,11 @@ object_class->finalize = finalize; object_class->dispose = dispose; + /** + * MbimDevice:device-file + * + * Since: 1.0 + */ properties[PROP_FILE] = g_param_spec_object (MBIM_DEVICE_FILE, "Device file", @@ -2498,6 +2293,11 @@ G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY); g_object_class_install_property (object_class, PROP_FILE, properties[PROP_FILE]); + /** + * MbimDevice:device-transaction-id + * + * Since: 1.2 + */ properties[PROP_TRANSACTION_ID] = g_param_spec_uint (MBIM_DEVICE_TRANSACTION_ID, "Transaction ID", @@ -2508,6 +2308,11 @@ G_PARAM_READWRITE); g_object_class_install_property (object_class, PROP_TRANSACTION_ID, properties[PROP_TRANSACTION_ID]); + /** + * MbimDevice:in-session + * + * Since: 1.4 + */ properties[PROP_IN_SESSION] = g_param_spec_boolean (MBIM_DEVICE_IN_SESSION, "In session", @@ -2522,6 +2327,8 @@ * @message: the #MbimMessage indication * * The ::device-indication-status signal is emitted when a MBIM indication is received. + * + * Since: 1.0 */ signals[SIGNAL_INDICATE_STATUS] = g_signal_new (MBIM_DEVICE_SIGNAL_INDICATE_STATUS, @@ -2541,6 +2348,8 @@ * @message: the #MbimMessage error * * The ::device-error signal is emitted when a MBIM error is received. + * + * Since: 1.0 */ signals[SIGNAL_ERROR] = g_signal_new (MBIM_DEVICE_SIGNAL_ERROR, @@ -2560,6 +2369,8 @@ * @message: None * * The ::device-removed signal is emitted when an unexpected port hang-up is received. + * + * Since: 1.10 */ signals[SIGNAL_REMOVED] = g_signal_new (MBIM_DEVICE_SIGNAL_REMOVED, diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-device.h libmbim-1.24.8/src/libmbim-glib/mbim-device.h --- libmbim-1.22.0/src/libmbim-glib/mbim-device.h 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-device.h 2021-06-02 19:05:37.000000000 +0800 @@ -34,6 +34,17 @@ G_BEGIN_DECLS +/** + * SECTION:mbim-device + * @title: MbimDevice + * @short_description: Generic MBIM device handling routines + * + * #MbimDevice is a generic type in charge of controlling the access to the + * managed MBIM port. + * + * A #MbimDevice can only handle one single MBIM port. + */ + #define MBIM_TYPE_DEVICE (mbim_device_get_type ()) #define MBIM_DEVICE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MBIM_TYPE_DEVICE, MbimDevice)) #define MBIM_DEVICE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MBIM_TYPE_DEVICE, MbimDeviceClass)) @@ -45,19 +56,67 @@ typedef struct _MbimDeviceClass MbimDeviceClass; typedef struct _MbimDevicePrivate MbimDevicePrivate; -#define MBIM_DEVICE_FILE "device-file" +/** + * MBIM_DEVICE_FILE: + * + * Symbol defining the #MbimDevice:device-file property. + * + * Since: 1.0 + */ +#define MBIM_DEVICE_FILE "device-file" + +/** + * MBIM_DEVICE_TRANSACTION_ID: + * + * Symbol defining the #MbimDevice:device-transaction-id property. + * + * Since: 1.2 + */ #define MBIM_DEVICE_TRANSACTION_ID "device-transaction-id" -#define MBIM_DEVICE_IN_SESSION "device-in-session" +/** + * MBIM_DEVICE_IN_SESSION: + * + * Symbol defining the #MbimDevice:device-in-session property. + * + * Since: 1.4 + */ +#define MBIM_DEVICE_IN_SESSION "device-in-session" + +/** + * MBIM_DEVICE_SIGNAL_INDICATE_STATUS: + * + * Symbol defining the #MbimDevice::device-indicate-status signal. + * + * Since: 1.0 + */ #define MBIM_DEVICE_SIGNAL_INDICATE_STATUS "device-indicate-status" -#define MBIM_DEVICE_SIGNAL_ERROR "device-error" -#define MBIM_DEVICE_SIGNAL_REMOVED "device-removed" + +/** + * MBIM_DEVICE_SIGNAL_ERROR: + * + * Symbol defining the #MbimDevice::device-error signal. + * + * Since: 1.0 + */ +#define MBIM_DEVICE_SIGNAL_ERROR "device-error" + +/** + * MBIM_DEVICE_SIGNAL_REMOVED: + * + * Symbol defining the #MbimDevice::device-removed signal. + * + * Since: 1.10 + */ +#define MBIM_DEVICE_SIGNAL_REMOVED "device-removed" /** * MbimDevice: * * The #MbimDevice structure contains private data and should only be accessed * using the provided API. + * + * Since: 1.0 */ struct _MbimDevice { /*< private >*/ @@ -71,19 +130,100 @@ }; GType mbim_device_get_type (void); +G_DEFINE_AUTOPTR_CLEANUP_FUNC (MbimDevice, g_object_unref) -void mbim_device_new (GFile *file, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data); -MbimDevice *mbim_device_new_finish (GAsyncResult *res, - GError **error); - -GFile *mbim_device_get_file (MbimDevice *self); -GFile *mbim_device_peek_file (MbimDevice *self); -const gchar *mbim_device_get_path (MbimDevice *self); +/** + * mbim_device_new: + * @file: a #GFile. + * @cancellable: optional #GCancellable object, #NULL to ignore. + * @callback: a #GAsyncReadyCallback to call when the initialization is finished. + * @user_data: the data to pass to callback function. + * + * Asynchronously creates a #MbimDevice object to manage @file. + * When the operation is finished, @callback will be invoked. You can then call + * mbim_device_new_finish() to get the result of the operation. + * + * Since: 1.0 + */ +void mbim_device_new (GFile *file, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +/** + * mbim_device_new_finish: + * @res: a #GAsyncResult. + * @error: Return location for error or %NULL. + * + * Finishes an operation started with mbim_device_new(). + * + * Returns: (transfer full): a newly created #MbimDevice, or #NULL if @error is set. + * + * Since: 1.0 + */ +MbimDevice *mbim_device_new_finish (GAsyncResult *res, + GError **error); + +/** + * mbim_device_get_file: (skip) + * @self: a #MbimDevice. + * + * Get the #GFile associated with this #MbimDevice. + * + * Returns: (transfer full): a #GFile that must be freed with g_object_unref(). + * + * Since: 1.0 + */ +GFile *mbim_device_get_file (MbimDevice *self); + +/** + * mbim_device_peek_file: (skip) + * @self: a #MbimDevice. + * + * Get the #GFile associated with this #MbimDevice, without increasing the reference count + * on the returned object. + * + * Returns: (transfer none): a #GFile. Do not free the returned object, it is owned by @self. + * + * Since: 1.0 + */ +GFile *mbim_device_peek_file (MbimDevice *self); + +/** + * mbim_device_get_path: + * @self: a #MbimDevice. + * + * Get the system path of the underlying MBIM device. + * + * Returns: the system path of the device. + * + * Since: 1.0 + */ +const gchar *mbim_device_get_path (MbimDevice *self); + +/** + * mbim_device_get_path_display: + * @self: a #MbimDevice. + * + * Get the system path of the underlying MBIM device in UTF-8. + * + * Returns: UTF-8 encoded system path of the device. + * + * Since: 1.0 + */ const gchar *mbim_device_get_path_display (MbimDevice *self); -gboolean mbim_device_is_open (MbimDevice *self); + +/** + * mbim_device_is_open: + * @self: a #MbimDevice. + * + * Checks whether the #MbimDevice is open for I/O. + * + * Returns: %TRUE if @self is open, %FALSE otherwise. + * + * Since: 1.0 + */ +gboolean mbim_device_is_open (MbimDevice *self); /** * MbimDeviceOpenFlags: @@ -91,54 +231,208 @@ * @MBIM_DEVICE_OPEN_FLAGS_PROXY: Try to open the port through the 'mbim-proxy'. * * Flags to specify which actions to be performed when the device is open. + * + * Since: 1.10 */ -typedef enum { +typedef enum { /*< since=1.10 >*/ MBIM_DEVICE_OPEN_FLAGS_NONE = 0, MBIM_DEVICE_OPEN_FLAGS_PROXY = 1 << 0 } MbimDeviceOpenFlags; -void mbim_device_open_full (MbimDevice *self, - MbimDeviceOpenFlags flags, - guint timeout, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data); -gboolean mbim_device_open_full_finish (MbimDevice *self, - GAsyncResult *res, - GError **error); - -void mbim_device_open (MbimDevice *self, - guint timeout, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data); -gboolean mbim_device_open_finish (MbimDevice *self, - GAsyncResult *res, - GError **error); - -void mbim_device_close (MbimDevice *self, - guint timeout, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data); -gboolean mbim_device_close_finish (MbimDevice *self, - GAsyncResult *res, - GError **error); +/** + * mbim_device_open_full: + * @self: a #MbimDevice. + * @flags: a set of #MbimDeviceOpenFlags. + * @timeout: maximum time, in seconds, to wait for the device to be opened. + * @cancellable: optional #GCancellable object, #NULL to ignore. + * @callback: a #GAsyncReadyCallback to call when the operation is finished. + * @user_data: the data to pass to callback function. + * + * Asynchronously opens a #MbimDevice for I/O. + * + * This method is an extension of the generic mbim_device_open(), which allows + * launching the #MbimDevice with proxy support. + * + * When the operation is finished @callback will be called. You can then call + * mbim_device_open_full_finish() to get the result of the operation. + * + * Since: 1.10 + */ +void mbim_device_open_full (MbimDevice *self, + MbimDeviceOpenFlags flags, + guint timeout, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +/** + * mbim_device_open_full_finish: + * @self: a #MbimDevice. + * @res: a #GAsyncResult. + * @error: Return location for error or %NULL. + * + * Finishes an asynchronous open operation started with mbim_device_open_full(). + * + * Returns: %TRUE if successful, %FALSE if @error is set. + * + * Since: 1.10 + */ +gboolean mbim_device_open_full_finish (MbimDevice *self, + GAsyncResult *res, + GError **error); -gboolean mbim_device_close_force (MbimDevice *self, - GError **error); +/** + * mbim_device_open: + * @self: a #MbimDevice. + * @timeout: maximum time, in seconds, to wait for the device to be opened. + * @cancellable: optional #GCancellable object, #NULL to ignore. + * @callback: a #GAsyncReadyCallback to call when the operation is finished. + * @user_data: the data to pass to callback function. + * + * Asynchronously opens a #MbimDevice for I/O. + * + * When the operation is finished @callback will be called. You can then call + * mbim_device_open_finish() to get the result of the operation. + * + * Since: 1.0 + */ +void mbim_device_open (MbimDevice *self, + guint timeout, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +/** + * mbim_device_open_finish: + * @self: a #MbimDevice. + * @res: a #GAsyncResult. + * @error: Return location for error or %NULL. + * + * Finishes an asynchronous open operation started with mbim_device_open(). + * + * Returns: %TRUE if successful, %FALSE if @error is set. + * + * Since: 1.0 + */ +gboolean mbim_device_open_finish (MbimDevice *self, + GAsyncResult *res, + GError **error); + +/** + * mbim_device_close: + * @self: a #MbimDevice. + * @timeout: maximum time, in seconds, to wait for the device to be closed. + * @cancellable: optional #GCancellable object, #NULL to ignore. + * @callback: a #GAsyncReadyCallback to call when the operation is finished. + * @user_data: the data to pass to callback function. + * + * Asynchronously closes a #MbimDevice for I/O. + * + * When the operation is finished @callback will be called. You can then call + * mbim_device_close_finish() to get the result of the operation. + * + * Since: 1.0 + */ +void mbim_device_close (MbimDevice *self, + guint timeout, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +/** + * mbim_device_close_finish: + * @self: a #MbimDevice. + * @res: a #GAsyncResult. + * @error: Return location for error or %NULL. + * + * Finishes an asynchronous close operation started with mbim_device_close(). + * + * Returns: %TRUE if successful, %FALSE if @error is set. + * + * Since: 1.0 + */ +gboolean mbim_device_close_finish (MbimDevice *self, + GAsyncResult *res, + GError **error); + +/** + * mbim_device_close_force: + * @self: a #MbimDevice. + * @error: Return location for error or %NULL. + * + * Forces the #MbimDevice to be closed. + * + * Returns: %TRUE if @self if no error happens, otherwise %FALSE and @error is set. + * + * Since: 1.0 + */ +gboolean mbim_device_close_force (MbimDevice *self, + GError **error); + +/** + * mbim_device_get_next_transaction_id: + * @self: A #MbimDevice. + * + * Acquire the next transaction ID of this #MbimDevice. + * The internal transaction ID gets incremented. + * + * Returns: the next transaction ID. + * + * Since: 1.0 + */ guint32 mbim_device_get_next_transaction_id (MbimDevice *self); -void mbim_device_command (MbimDevice *self, - MbimMessage *message, - guint timeout, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data); -MbimMessage *mbim_device_command_finish (MbimDevice *self, - GAsyncResult *res, - GError **error); +/** + * mbim_device_get_transaction_id: + * @self: A #MbimDevice. + * + * Acquire the transaction ID of this #MbimDevice without + * incrementing the internal transaction ID. + * + * Returns: the current transaction ID. + * + * Since: 1.24.4 + */ +guint32 mbim_device_get_transaction_id (MbimDevice *self); + +/** + * mbim_device_command: + * @self: a #MbimDevice. + * @message: the message to send. + * @timeout: maximum time, in seconds, to wait for the response. + * @cancellable: a #GCancellable, or %NULL. + * @callback: a #GAsyncReadyCallback to call when the operation is finished. + * @user_data: the data to pass to callback function. + * + * Asynchronously sends a #MbimMessage to the device. + * + * When the operation is finished @callback will be called. You can then call + * mbim_device_command_finish() to get the result of the operation. + * + * Since: 1.0 + */ +void mbim_device_command (MbimDevice *self, + MbimMessage *message, + guint timeout, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +/** + * mbim_device_command_finish: + * @self: a #MbimDevice. + * @res: a #GAsyncResult. + * @error: Return location for error or %NULL. + * + * Finishes an operation started with mbim_device_command(). + * + * Returns: a #MbimMessage response, or #NULL if @error is set. The returned value should be freed with mbim_message_unref(). + * + * Since: 1.0 + */ +MbimMessage *mbim_device_command_finish (MbimDevice *self, + GAsyncResult *res, + GError **error); G_END_DECLS diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-enums.h libmbim-1.24.8/src/libmbim-glib/mbim-enums.h --- libmbim-1.22.0/src/libmbim-glib/mbim-enums.h 2019-03-27 21:26:00.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-enums.h 2021-06-02 19:05:37.000000000 +0800 @@ -49,8 +49,10 @@ * @MBIM_DEVICE_TYPE_REMOTE: Device is remote. * * Type of device. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_DEVICE_TYPE_UNKNOWN = 0, MBIM_DEVICE_TYPE_EMBEDDED = 1, MBIM_DEVICE_TYPE_REMOVABLE = 2, @@ -63,8 +65,10 @@ * @MBIM_CELLULAR_CLASS_CDMA: Device is 3GPP2. * * Cellular class. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CELLULAR_CLASS_GSM = 1 << 0, MBIM_CELLULAR_CLASS_CDMA = 1 << 1 } MbimCellularClass; @@ -77,8 +81,10 @@ * @MBIM_VOICE_CLASS_SIMULTANEOUS_VOICE_DATA: Device supports simultaneous voice and data connections. * * Voice class. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_VOICE_CLASS_UNKNOWN = 0, MBIM_VOICE_CLASS_NO_VOICE = 1, MBIM_VOICE_CLASS_SEPARATED_VOICE_DATA = 2, @@ -91,8 +97,10 @@ * @MBIM_SIM_CLASS_REMOVABLE: Physical removable SIM. * * SIM class. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_SIM_CLASS_LOGICAL = 1 << 0, MBIM_SIM_CLASS_REMOVABLE = 1 << 1 } MbimSimClass; @@ -115,8 +123,10 @@ * @MBIM_DATA_CLASS_CUSTOM: Custom. * * Data class. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_DATA_CLASS_GPRS = 1 << 0, MBIM_DATA_CLASS_EDGE = 1 << 1, MBIM_DATA_CLASS_UMTS = 1 << 2, @@ -143,8 +153,10 @@ * @MBIM_SMS_CAPS_TEXT_SEND: Can send in text mode. * * SMS capabilities. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_SMS_CAPS_PDU_RECEIVE = 1 << 0, MBIM_SMS_CAPS_PDU_SEND = 1 << 1, MBIM_SMS_CAPS_TEXT_RECEIVE = 1 << 2, @@ -160,8 +172,10 @@ * @MBIM_CTRL_CAPS_MULTI_CARRIER: Device can work with multiple providers. * * Control capabilities. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CTRL_CAPS_REG_MANUAL = 1 << 0, MBIM_CTRL_CAPS_HW_RADIO_SWITCH = 1 << 1, MBIM_CTRL_CAPS_CDMA_MOBILE_IP = 1 << 2, @@ -183,8 +197,10 @@ * @MBIM_SUBSCRIBER_READY_STATE_DEVICE_LOCKED: Device locked. * * Ready state of the subscriber. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_SUBSCRIBER_READY_STATE_NOT_INITIALIZED = 0, MBIM_SUBSCRIBER_READY_STATE_INITIALIZED = 1, MBIM_SUBSCRIBER_READY_STATE_SIM_NOT_INSERTED = 2, @@ -196,10 +212,14 @@ /** * MbimReadyInfoFlag: - * @MBIM_READY_INFO_FLAG_NONE: Device in normal mode. + * @MBIM_READY_INFO_FLAG_NONE: Device in normal mode. Since 1.16. * @MBIM_READY_INFO_FLAG_PROTECT_UNIQUE_ID: Request to avoid displaying subscriber ID. + * + * Flag specifying how the ready info is treated. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_READY_INFO_FLAG_NONE = 0, MBIM_READY_INFO_FLAG_PROTECT_UNIQUE_ID = 1 << 0 } MbimReadyInfoFlag; @@ -213,8 +233,10 @@ * @MBIM_RADIO_SWITCH_STATE_ON: Radio is on. * * Radio switch state. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_RADIO_SWITCH_STATE_OFF = 0, MBIM_RADIO_SWITCH_STATE_ON = 1 } MbimRadioSwitchState; @@ -244,8 +266,10 @@ * @MBIM_PIN_TYPE_CORPORATE_PUK: The corporate personalization unlock key. * * PIN Types. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_PIN_TYPE_UNKNOWN = 0, MBIM_PIN_TYPE_CUSTOM = 1, MBIM_PIN_TYPE_PIN1 = 2, @@ -272,8 +296,10 @@ * @MBIM_PIN_STATE_LOCKED: The device requires the user to enter a PIN. * * PIN States. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_PIN_STATE_UNLOCKED = 0, MBIM_PIN_STATE_LOCKED = 1 } MbimPinState; @@ -284,8 +310,12 @@ * @MBIM_PIN_OPERATION_ENABLE: Enable the specified PIN. * @MBIM_PIN_OPERATION_DISABLE: Disable the specified PIN. * @MBIM_PIN_OPERATION_CHANGE: Change the specified PIN. -*/ -typedef enum { + * + * Operation to perform on the PIN. + * + * Since: 1.0 + */ +typedef enum { /*< since=1.0 >*/ MBIM_PIN_OPERATION_ENTER = 0, MBIM_PIN_OPERATION_ENABLE = 1, MBIM_PIN_OPERATION_DISABLE = 2, @@ -302,8 +332,10 @@ * @MBIM_PIN_MODE_DISABLED: Disabled. * * Whether the lock is enabled or disabled. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_PIN_MODE_NOT_SUPPORTED = 0, MBIM_PIN_MODE_ENABLED = 1, MBIM_PIN_MODE_DISABLED = 2 @@ -316,8 +348,10 @@ * @MBIM_PIN_FORMAT_ALPHANUMERIC: Alphanumeric format. * * Format of the expected PIN code. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_PIN_FORMAT_UNKNOWN = 0, MBIM_PIN_FORMAT_NUMERIC = 1, MBIM_PIN_FORMAT_ALPHANUMERIC = 2 @@ -337,8 +371,10 @@ * @MBIM_PROVIDER_STATE_PREFERRED_MULTICARRIER: Provider is a preferred multicarrier network. * * State of the provider. + * + * Since: 1.2 */ -typedef enum { +typedef enum { /*< since=1.2 >*/ MBIM_PROVIDER_STATE_UNKNOWN = 0, MBIM_PROVIDER_STATE_HOME = 1 << 0, MBIM_PROVIDER_STATE_FORBIDDEN = 1 << 1, @@ -357,8 +393,10 @@ * @MBIM_VISIBLE_PROVIDERS_ACTION_RESTRICTED_SCAN: Locate preferred multicarrier providers. * * Type of action to perform when listing visible providers. + * + * Since: 1.2 */ -typedef enum { +typedef enum { /*< since=1.2 >*/ MBIM_VISIBLE_PROVIDERS_ACTION_FULL_SCAN = 0, MBIM_VISIBLE_PROVIDERS_ACTION_RESTRICTED_SCAN = 1 } MbimVisibleProvidersAction; @@ -370,54 +408,56 @@ * MbimNwError: * @MBIM_NW_ERROR_UNKNOWN: Unknown or unset error. * @MBIM_NW_ERROR_IMSI_UNKNOWN_IN_HLR: IMSI unknown in the HLR. - * @MBIM_NW_ERROR_ILLEGAL_MS: Illegal MS. + * @MBIM_NW_ERROR_ILLEGAL_MS: Illegal MS. Since 1.10. * @MBIM_NW_ERROR_IMSI_UNKNOWN_IN_VLR: IMSI unknown in the VLR. - * @MBIM_NW_ERROR_IMEI_NOT_ACCEPTED: IMEI not accepted. + * @MBIM_NW_ERROR_IMEI_NOT_ACCEPTED: IMEI not accepted. Since 1.10. * @MBIM_NW_ERROR_ILLEGAL_ME: Illegal ME. * @MBIM_NW_ERROR_GPRS_NOT_ALLOWED: GPRS not allowed. * @MBIM_NW_ERROR_GPRS_AND_NON_GPRS_NOT_ALLOWED: GPRS and non-GPRS not allowed. - * @MBIM_NW_ERROR_MS_IDENTITY_NOT_DERIVED_BY_NETWORK: MS identity cannot be derived by the network. - * @MBIM_NW_ERROR_IMPLICITLY_DETACHED: Implicitly detached. + * @MBIM_NW_ERROR_MS_IDENTITY_NOT_DERIVED_BY_NETWORK: MS identity cannot be derived by the network. Since 1.10. + * @MBIM_NW_ERROR_IMPLICITLY_DETACHED: Implicitly detached. Since 1.10. * @MBIM_NW_ERROR_PLMN_NOT_ALLOWED: PLMN not allowed. * @MBIM_NW_ERROR_LOCATION_AREA_NOT_ALLOWED: Location area not allowed. * @MBIM_NW_ERROR_ROAMING_NOT_ALLOWED_IN_LOCATION_AREA: Roaming not allowed in the location area. * @MBIM_NW_ERROR_GPRS_NOT_ALLOWED_IN_PLMN: GPRS not allowed in PLMN. * @MBIM_NW_ERROR_NO_CELLS_IN_LOCATION_AREA: No cells in location area. - * @MBIM_NW_ERROR_MSC_TEMPORARILY_NOT_REACHABLE: MSC temporarily not reachable. + * @MBIM_NW_ERROR_MSC_TEMPORARILY_NOT_REACHABLE: MSC temporarily not reachable. Since 1.10. * @MBIM_NW_ERROR_NETWORK_FAILURE: Network failure. - * @MBIM_NW_ERROR_MAC_FAILURE: MAC failure. - * @MBIM_NW_ERROR_SYNCH_FAILURE: Synch failure. + * @MBIM_NW_ERROR_MAC_FAILURE: MAC failure. Since 1.10. + * @MBIM_NW_ERROR_SYNCH_FAILURE: Synch failure. Since 1.10. * @MBIM_NW_ERROR_CONGESTION: Congestion. - * @MBIM_NW_ERROR_GSM_AUTHENTICATION_UNACCEPTABLE: GSM authentication unacceptable. - * @MBIM_NW_ERROR_NOT_AUTHORIZED_FOR_CSG: Not authorized for this CSG. - * @MBIM_NW_ERROR_INSUFFICIENT_RESOURCES: Insufficient resources. - * @MBIM_NW_ERROR_MISSING_OR_UNKNOWN_APN: Missing or unknown access point name. - * @MBIM_NW_ERROR_UNKNOWN_PDP_ADDRESS_OR_TYPE: Unknown PDP address or PDP type. - * @MBIM_NW_ERROR_USER_AUTHENTICATION_FAILED: User authentication failed. - * @MBIM_NW_ERROR_ACTIVATION_REJECTED_BY_GGSN_OR_GW: Activation rejected by GGSN, Serving GW or PDN GW. - * @MBIM_NW_ERROR_ACTIVATION_REJECTED_UNSPECIFIED: Activation rejected, unspecified. - * @MBIM_NW_ERROR_SERVICE_OPTION_NOT_SUPPORTED: Service option not supported. - * @MBIM_NW_ERROR_REQUESTED_SERVICE_OPTION_NOT_SUBSCRIBED: Requested service option not subscribed. - * @MBIM_NW_ERROR_SERVICE_OPTION_TEMPORARILY_OUT_OF_ORDER: Service option temporarily out of order. - * @MBIM_NW_ERROR_NO_PDP_CONTEXT_ACTIVATED: No PDP context activated. - * @MBIM_NW_ERROR_PDP_TYPE_IPV4_ONLY_ALLOWED: PDP type IPv4 only allowed. - * @MBIM_NW_ERROR_PDP_TYPE_IPV6_ONLY_ALLOWED: PDP type IPv6 only allowed. - * @MBIM_NW_ERROR_MAXIMUM_NUMBER_OF_PDP_CONTEXTS_REACHED: Maximum number of PDP contexts reached. - * @MBIM_NW_ERROR_REQUESTED_APN_NOT_SUPPORTED_IN_CURRENT_RAT_AND_PLMN: Requested APN not supported in current RAT and PLMN combination. - * @MBIM_NW_ERROR_SEMANTICALLY_INCORRECT_MESSAGE: Semantically incorrect message. - * @MBIM_NW_ERROR_INVALID_MANDATORY_INFORMATION: Invalid mandatory information. - * @MBIM_NW_ERROR_MESSAGE_TYPE_NON_EXISTENT_OR_NOT_IMPLEMENTED: Message type non-existent or not implemented. - * @MBIM_NW_ERROR_MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE: Message type not compatible with protocol state. - * @MBIM_NW_ERROR_INFORMATION_ELEMENT_NON_EXISTENT_OR_NOT_IMPLEMENTED: Information element non-existent or not implemented. - * @MBIM_NW_ERROR_CONDITIONAL_IE_ERROR: Conditional IE error. - * @MBIM_NW_ERROR_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE: Message not compatible with protocol state. - * @MBIM_NW_ERROR_PROTOCOL_ERROR_UNSPECIFIED: Protocol error, unspecified. - * @MBIM_NW_ERROR_APN_RESTRICTION_VALUE_INCOMPATIBLE_WITH_ACTIVE_PDP_CONTEXT: APN restriction value incompatible with active PDP context. - * @MBIM_NW_ERROR_MULTIPLE_ACCESSES_TO_A_PDN_CONNECTION_NOT_ALLOWED: Multiple accesses to a PDN connection not allowed. + * @MBIM_NW_ERROR_GSM_AUTHENTICATION_UNACCEPTABLE: GSM authentication unacceptable. Since 1.10. + * @MBIM_NW_ERROR_NOT_AUTHORIZED_FOR_CSG: Not authorized for this CSG. Since 1.10. + * @MBIM_NW_ERROR_INSUFFICIENT_RESOURCES: Insufficient resources. Since 1.18. + * @MBIM_NW_ERROR_MISSING_OR_UNKNOWN_APN: Missing or unknown access point name. Since 1.10. + * @MBIM_NW_ERROR_UNKNOWN_PDP_ADDRESS_OR_TYPE: Unknown PDP address or PDP type. Since 1.18. + * @MBIM_NW_ERROR_USER_AUTHENTICATION_FAILED: User authentication failed. Since 1.18. + * @MBIM_NW_ERROR_ACTIVATION_REJECTED_BY_GGSN_OR_GW: Activation rejected by GGSN, Serving GW or PDN GW. Since 1.18. + * @MBIM_NW_ERROR_ACTIVATION_REJECTED_UNSPECIFIED: Activation rejected, unspecified. Since 1.18. + * @MBIM_NW_ERROR_SERVICE_OPTION_NOT_SUPPORTED: Service option not supported. Since 1.10. + * @MBIM_NW_ERROR_REQUESTED_SERVICE_OPTION_NOT_SUBSCRIBED: Requested service option not subscribed. Since 1.10. + * @MBIM_NW_ERROR_SERVICE_OPTION_TEMPORARILY_OUT_OF_ORDER: Service option temporarily out of order. Since 1.10. + * @MBIM_NW_ERROR_NO_PDP_CONTEXT_ACTIVATED: No PDP context activated. Since 1.10. + * @MBIM_NW_ERROR_PDP_TYPE_IPV4_ONLY_ALLOWED: PDP type IPv4 only allowed. Since 1.18. + * @MBIM_NW_ERROR_PDP_TYPE_IPV6_ONLY_ALLOWED: PDP type IPv6 only allowed. Since 1.18. + * @MBIM_NW_ERROR_MAXIMUM_NUMBER_OF_PDP_CONTEXTS_REACHED: Maximum number of PDP contexts reached. Since 1.18. + * @MBIM_NW_ERROR_REQUESTED_APN_NOT_SUPPORTED_IN_CURRENT_RAT_AND_PLMN: Requested APN not supported in current RAT and PLMN combination. Since 1.18. + * @MBIM_NW_ERROR_SEMANTICALLY_INCORRECT_MESSAGE: Semantically incorrect message. Since 1.10. + * @MBIM_NW_ERROR_INVALID_MANDATORY_INFORMATION: Invalid mandatory information. Since 1.10. + * @MBIM_NW_ERROR_MESSAGE_TYPE_NON_EXISTENT_OR_NOT_IMPLEMENTED: Message type non-existent or not implemented. Since 1.10. + * @MBIM_NW_ERROR_MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE: Message type not compatible with protocol state. Since 1.10. + * @MBIM_NW_ERROR_INFORMATION_ELEMENT_NON_EXISTENT_OR_NOT_IMPLEMENTED: Information element non-existent or not implemented. Since 1.10. + * @MBIM_NW_ERROR_CONDITIONAL_IE_ERROR: Conditional IE error. Since 1.10. + * @MBIM_NW_ERROR_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE: Message not compatible with protocol state. Since 1.10. + * @MBIM_NW_ERROR_PROTOCOL_ERROR_UNSPECIFIED: Protocol error, unspecified. Since 1.10. + * @MBIM_NW_ERROR_APN_RESTRICTION_VALUE_INCOMPATIBLE_WITH_ACTIVE_PDP_CONTEXT: APN restriction value incompatible with active PDP context. Since 1.18. + * @MBIM_NW_ERROR_MULTIPLE_ACCESSES_TO_A_PDN_CONNECTION_NOT_ALLOWED: Multiple accesses to a PDN connection not allowed. Since 1.18. + * + * Network errors. * - * Network errors. + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_NW_ERROR_UNKNOWN = 0, MBIM_NW_ERROR_IMSI_UNKNOWN_IN_HLR = 2, MBIM_NW_ERROR_ILLEGAL_MS = 3, @@ -472,8 +512,10 @@ * @MBIM_REGISTER_ACTION_MANUAL: Manual registration. * * Type of registration requested. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_REGISTER_ACTION_AUTOMATIC = 0, MBIM_REGISTER_ACTION_MANUAL = 1 } MbimRegisterAction; @@ -489,8 +531,10 @@ * @MBIM_REGISTER_STATE_DENIED: Registration denied. * * Registration state. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_REGISTER_STATE_UNKNOWN = 0, MBIM_REGISTER_STATE_DEREGISTERED = 1, MBIM_REGISTER_STATE_SEARCHING = 2, @@ -507,8 +551,10 @@ * @MBIM_REGISTER_MODE_MANUAL: Manual registration. * * Type of registration requested. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_REGISTER_MODE_UNKNOWN = 0, MBIM_REGISTER_MODE_AUTOMATIC = 1, MBIM_REGISTER_MODE_MANUAL = 2 @@ -518,11 +564,13 @@ * MbimRegistrationFlag: * @MBIM_REGISTRATION_FLAG_NONE: None. * @MBIM_REGISTRATION_FLAG_MANUAL_SELECTION_NOT_AVAILABLE: Network doesn't support manual network selection. - * @MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH: Modem should auto-attach to the network after registration. + * @MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH: Modem should auto-attach to the network after registration. Since 1.8. * * Registration flags. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_REGISTRATION_FLAG_NONE = 0, MBIM_REGISTRATION_FLAG_MANUAL_SELECTION_NOT_AVAILABLE = 1 << 0, MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH = 1 << 1, @@ -537,8 +585,10 @@ * @MBIM_PACKET_SERVICE_ACTION_DETACH: Detach. * * Packet Service Action. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_PACKET_SERVICE_ACTION_ATTACH = 0, MBIM_PACKET_SERVICE_ACTION_DETACH = 1 } MbimPacketServiceAction; @@ -552,8 +602,10 @@ * @MBIM_PACKET_SERVICE_STATE_DETACHED: Detached. * * Packet Service State. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_PACKET_SERVICE_STATE_UNKNOWN = 0, MBIM_PACKET_SERVICE_STATE_ATTACHING = 1, MBIM_PACKET_SERVICE_STATE_ATTACHED = 2, @@ -570,8 +622,10 @@ * @MBIM_ACTIVATION_COMMAND_ACTIVATE: Activate. * * Activation Command. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_ACTIVATION_COMMAND_DEACTIVATE = 0, MBIM_ACTIVATION_COMMAND_ACTIVATE = 1 } MbimActivationCommand; @@ -582,8 +636,10 @@ * @MBIM_COMPRESSION_ENABLE: Enable. * * Compression. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_COMPRESSION_NONE = 0, MBIM_COMPRESSION_ENABLE = 1 } MbimCompression; @@ -596,8 +652,10 @@ * @MBIM_AUTH_PROTOCOL_MSCHAPV2: V2. * * Auth Protocol. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_AUTH_PROTOCOL_NONE = 0, MBIM_AUTH_PROTOCOL_PAP = 1, MBIM_AUTH_PROTOCOL_CHAP = 2, @@ -613,8 +671,10 @@ * @MBIM_CONTEXT_IP_TYPE_IPV4_AND_IPV6: Both an IPv4 and an IPv6 context. * * Context IP Type. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CONTEXT_IP_TYPE_DEFAULT = 0, MBIM_CONTEXT_IP_TYPE_IPV4 = 1, MBIM_CONTEXT_IP_TYPE_IPV6 = 2, @@ -631,8 +691,10 @@ * @MBIM_ACTIVATION_STATE_DEACTIVATING: Deactivating. * * Activation State. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_ACTIVATION_STATE_UNKNOWN = 0, MBIM_ACTIVATION_STATE_ACTIVATED = 1, MBIM_ACTIVATION_STATE_ACTIVATING = 2, @@ -647,8 +709,10 @@ * @MBIM_VOICE_CALL_STATE_HANG_UP: Up. * * Voice Call State. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_VOICE_CALL_STATE_NONE = 0, MBIM_VOICE_CALL_STATE_IN_PROGRESS = 1, MBIM_VOICE_CALL_STATE_HANG_UP = 2 @@ -666,8 +730,10 @@ * @MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_MTU: MTU info available. * * Mask of available information about an IP address. + * + * Since: 1.0 */ -typedef enum { /*< underscore_name=mbim_ip_configuration_available_flag >*/ +typedef enum { /*< underscore_name=mbim_ip_configuration_available_flag,since=1.0 >*/ MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_NONE = 0, MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_ADDRESS = 1 << 0, MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_GATEWAY = 1 << 1, @@ -684,8 +750,10 @@ * @MBIM_SMS_STORAGE_STATE_INITIALIZED: Storage initialized. * * State of the SMS storage. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_SMS_STORAGE_STATE_NOT_INITIALIZED = 0, MBIM_SMS_STORAGE_STATE_INITIALIZED = 1 } MbimSmsStorageState; @@ -696,8 +764,10 @@ * @MBIM_SMS_FORMAT_CDMA: CDMA format. * * SMS format. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_SMS_FORMAT_PDU = 0, MBIM_SMS_FORMAT_CDMA = 1 } MbimSmsFormat; @@ -716,8 +786,10 @@ * * Flags to use when requesting to read SMS. @MBIM_SMS_FLAG_ALL and * @MBIM_SMS_FLAG_NEW are mandatory, all the others are optional. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_SMS_FLAG_ALL = 0, MBIM_SMS_FLAG_INDEX = 1, MBIM_SMS_FLAG_NEW = 2, @@ -738,8 +810,10 @@ * @MBIM_SMS_CDMA_LANG_HEBREW: Hebrew. * * Language of a CDMA SMS. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_SMS_CDMA_LANG_UNKNOWN = 0, MBIM_SMS_CDMA_LANG_ENGLISH = 1, MBIM_SMS_CDMA_LANG_FRENCH = 2, @@ -764,8 +838,10 @@ * @MBIM_SMS_CDMA_ENCODING_GSM_7BIT: 7-bit GSM. * * Type of encoding of a CDMA SMS. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_SMS_CDMA_ENCODING_OCTET = 0, MBIM_SMS_CDMA_ENCODING_EPM = 1, MBIM_SMS_CDMA_ENCODING_7BIT_ASCII = 2, @@ -786,8 +862,10 @@ * @MBIM_SMS_STATUS_SENT: Sent. * * Status of a SMS message. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_SMS_STATUS_NEW = 0, MBIM_SMS_STATUS_OLD = 1, MBIM_SMS_STATUS_DRAFT = 2, @@ -804,8 +882,10 @@ * @MBIM_SMS_STATUS_FLAG_NEW_MESSAGE: New non-Class 0 message arrived. * * SMS status flags. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_SMS_STATUS_FLAG_NONE = 0, MBIM_SMS_STATUS_FLAG_MESSAGE_STORE_FULL = 1, MBIM_SMS_STATUS_FLAG_NEW_MESSAGE = 2 @@ -821,8 +901,10 @@ * @MBIM_USSD_ACTION_CANCEL: Cancel USSD session. * * USSD action. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_USSD_ACTION_INITIATE = 0, MBIM_USSD_ACTION_CONTINUE = 1, MBIM_USSD_ACTION_CANCEL = 2 @@ -838,8 +920,10 @@ * @MBIM_USSD_RESPONSE_NETWORK_TIMEOUT: Network timeout. * * USSD response. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_USSD_RESPONSE_NO_ACTION_REQUIRED = 0, MBIM_USSD_RESPONSE_ACTION_REQUIRED = 1, MBIM_USSD_RESPONSE_TERMINATED_BY_NETWORK = 2, @@ -854,8 +938,10 @@ * @MBIM_USSD_SESSION_STATE_EXISTING_SESSION: Existing session. * * Session state. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_USSD_SESSION_STATE_NEW_SESSION = 0, MBIM_USSD_SESSION_STATE_EXISTING_SESSION = 1 } MbimUssdSessionState; @@ -869,8 +955,10 @@ * @MBIM_PHONEBOOK_STATE_INITIALIZED: Initialized * * Phonebook state. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_PHONEBOOK_STATE_NOT_INITIALIZED = 0, MBIM_PHONEBOOK_STATE_INITIALIZED = 1 } MbimPhonebookState; @@ -884,8 +972,10 @@ * @MBIM_PHONEBOOK_FLAG_INDEX: Request single entry by index. * * Flags to use when reading the phonebook. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_PHONEBOOK_FLAG_ALL = 0, MBIM_PHONEBOOK_FLAG_INDEX = 1 } MbimPhonebookFlag; @@ -896,8 +986,10 @@ * @MBIM_PHONEBOOK_WRITE_FLAG_SAVE_INDEX: Index where to store the record. * * Flags to use when writing the phonebook. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_PHONEBOOK_WRITE_FLAG_SAVE_UNUSED = 0, MBIM_PHONEBOOK_WRITE_FLAG_SAVE_INDEX = 1, } MbimPhonebookWriteFlag; @@ -917,8 +1009,10 @@ * @MBIM_STK_PAC_PROFILE_HANDLED_BY_HOST_FUNCTION_ABLE_TO_HANDLE: Command will be forwarded to the host. If the host decides not to receive the command, the function will handle it. * * Proactive command profile. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_STK_PAC_PROFILE_NOT_HANDLED_BY_FUNCTION_HANDLED_BY_HOST = 0, MBIM_STK_PAC_PROFILE_NOT_HANDLED_BY_FUNCTION_MAY_BE_HANDLED_BY_HOST = 1, MBIM_STK_PAC_PROFILE_HANDLED_BY_FUNCTION_ONLY_TRANSPARENT_TO_HOST = 2, @@ -935,8 +1029,10 @@ * @MBIM_STK_PAC_TYPE_NOTIFICATION: Proactive command is handled by the function, but the host is notified. * * Type of proactive command. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_STK_PAC_TYPE_PROACTIVE_COMMAND = 0, MBIM_STK_PAC_TYPE_NOTIFICATION = 1 } MbimStkPacType; @@ -950,8 +1046,10 @@ * @MBIM_NETWORK_IDLE_HINT_STATE_ENABLED: Enabled. * * Enable or disable network idle hint. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_NETWORK_IDLE_HINT_STATE_DISABLED = 0, MBIM_NETWORK_IDLE_HINT_STATE_ENABLED = 1 } MbimNetworkIdleHintState; @@ -965,8 +1063,10 @@ * @MBIM_EMERGENCY_MODE_STATE_ON: On. * * Emergency mode state. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_EMERGENCY_MODE_STATE_OFF = 0, MBIM_EMERGENCY_MODE_STATE_ON = 1 } MbimEmergencyModeState; @@ -980,8 +1080,10 @@ * @MBIM_DSS_LINK_STATE_ACTIVATE: Activate. * * Action performed in the link state. + * + * Since: 1.4 */ -typedef enum { +typedef enum { /*< since=1.4 >*/ MBIM_DSS_LINK_STATE_DEACTIVATE = 0, MBIM_DSS_LINK_STATE_ACTIVATE = 1 } MbimDssLinkState; @@ -997,8 +1099,10 @@ * @MBIM_ATDS_RAT_MODE_4G_ONLY: 4G only. * * RAT mode preferences. + * + * Since: 1.16 */ -typedef enum { +typedef enum { /*< since=1.16 >*/ MBIM_ATDS_RAT_MODE_AUTOMATIC = 0, MBIM_ATDS_RAT_MODE_2G_ONLY = 1, MBIM_ATDS_RAT_MODE_3G_ONLY = 2, @@ -1015,8 +1119,10 @@ * @MBIM_ATDS_PROVIDER_PLMN_MODE_LTE: LTE. * * Provider PLMN mode. + * + * Since: 1.16 */ -typedef enum { +typedef enum { /*< since=1.16 >*/ MBIM_ATDS_PROVIDER_PLMN_MODE_GSM = 0, MBIM_ATDS_PROVIDER_PLMN_MODE_UTRAN = 6, MBIM_ATDS_PROVIDER_PLMN_MODE_LTE = 7, @@ -1031,8 +1137,10 @@ * @MBIM_PCO_TYPE_PARTIAL: The PCO structure is a subset of what was received from the network. * * Type of PCO structure. + * + * Since: 1.18 */ -typedef enum { +typedef enum { /*< since=1.18 >*/ MBIM_PCO_TYPE_COMPLETE = 0, MBIM_PCO_TYPE_PARTIAL = 1 } MbimPcoType; @@ -1046,8 +1154,10 @@ * @MBIM_LTE_ATTACH_CONTEXT_OPERATION_RESTORE_FACTORY: Restore factory preconfigured contexts. * * Command to run when updating LTE attach configuration. + * + * Since: 1.18 */ -typedef enum { +typedef enum { /*< since=1.18 >*/ MBIM_LTE_ATTACH_CONTEXT_OPERATION_DEFAULT = 0, MBIM_LTE_ATTACH_CONTEXT_OPERATION_RESTORE_FACTORY = 1 } MbimLteAttachContextOperation; @@ -1057,8 +1167,12 @@ * @MBIM_LTE_ATTACH_CONTEXT_ROAMING_CONTROL_HOME: Context allowed to be used on home network. * @MBIM_LTE_ATTACH_CONTEXT_ROAMING_CONTROL_PARTNER: Context allowed to be used on partner network. * @MBIM_LTE_ATTACH_CONTEXT_ROAMING_CONTROL_NON_PARTNER: Context allowed to be used on non-partner network. + * + * Type of roaming control. + * + * Since: 1.18 */ -typedef enum { +typedef enum { /*< since=1.18 >*/ MBIM_LTE_ATTACH_CONTEXT_ROAMING_CONTROL_HOME = 0, MBIM_LTE_ATTACH_CONTEXT_ROAMING_CONTROL_PARTNER = 1, MBIM_LTE_ATTACH_CONTEXT_ROAMING_CONTROL_NON_PARTNER = 2 @@ -1073,8 +1187,10 @@ * @MBIM_CONTEXT_SOURCE_DEVICE: Context created by OS APN database. * * Source of context creation. + * + * Since: 1.18 */ -typedef enum { +typedef enum { /*< since=1.18 >*/ MBIM_CONTEXT_SOURCE_ADMIN = 0, MBIM_CONTEXT_SOURCE_USER = 1, MBIM_CONTEXT_SOURCE_OPERATOR = 2, @@ -1088,8 +1204,10 @@ * @MBIM_LTE_ATTACH_STATE_ATTACHED: Attached. * * LTE attach state. + * + * Since: 1.18 */ -typedef enum { +typedef enum { /*< since=1.18 >*/ MBIM_LTE_ATTACH_STATE_DETACHED = 0, MBIM_LTE_ATTACH_STATE_ATTACHED = 1 } MbimLteAttachState; diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-errors.h libmbim-1.24.8/src/libmbim-glib/mbim-errors.h --- libmbim-1.22.0/src/libmbim-glib/mbim-errors.h 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-errors.h 2020-07-10 16:12:29.000000000 +0800 @@ -50,11 +50,13 @@ * @MBIM_CORE_ERROR_INVALID_MESSAGE: MBIM message is invalid. * @MBIM_CORE_ERROR_UNSUPPORTED: Not supported. * @MBIM_CORE_ERROR_ABORTED: Operation aborted. - * @MBIM_CORE_ERROR_UNKNOWN_STATE: State is unknown. + * @MBIM_CORE_ERROR_UNKNOWN_STATE: State is unknown. Since 1.16. * * Common errors that may be reported by libmbim-glib. + * + * Since: 1.0 */ -typedef enum { /*< underscore_name=mbim_core_error >*/ +typedef enum { /*< since=1.0 >*/ MBIM_CORE_ERROR_FAILED = 0, /*< nick=Failed >*/ MBIM_CORE_ERROR_WRONG_STATE = 1, /*< nick=WrongState >*/ MBIM_CORE_ERROR_TIMEOUT = 2, /*< nick=Timeout >*/ @@ -78,8 +80,10 @@ * @MBIM_PROTOCOL_ERROR_MAX_TRANSFER: Maximum control transfer not supported. * * MBIM protocol errors. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_PROTOCOL_ERROR_INVALID = 0, /*< nick=Invalid >*/ MBIM_PROTOCOL_ERROR_TIMEOUT_FRAGMENT = 1, /*< nick=TimeoutFragment >*/ MBIM_PROTOCOL_ERROR_FRAGMENT_OUT_OF_SEQUENCE = 2, /*< nick=FragmentOutOfSequence >*/ @@ -131,7 +135,7 @@ * @MBIM_STATUS_ERROR_AUTH_INCORRECT_AUTN: Incorrect AUTN when sending authentication. * @MBIM_STATUS_ERROR_AUTH_SYNC_FAILURE: Synchronization failure during the authentication. * @MBIM_STATUS_ERROR_AUTH_AMF_NOT_SET: AMF bit not set in the authentication. - * @MBIM_STATUS_ERROR_CONTEXT_NOT_SUPPORTED: ContextType not supported by the operation. + * @MBIM_STATUS_ERROR_CONTEXT_NOT_SUPPORTED: ContextType not supported by the operation. Since 1.16. * @MBIM_STATUS_ERROR_SMS_UNKNOWN_SMSC_ADDRESS: Unknown SMSC address. * @MBIM_STATUS_ERROR_SMS_NETWORK_TIMEOUT: Network timeout when sending SMS. * @MBIM_STATUS_ERROR_SMS_LANG_NOT_SUPPORTED: Language not supported in SMS. @@ -139,8 +143,10 @@ * @MBIM_STATUS_ERROR_SMS_FORMAT_NOT_SUPPORTED: Format not supported in SMS. * * Status of the MBIM request. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_STATUS_ERROR_NONE = 0, /*< nick=None >*/ MBIM_STATUS_ERROR_BUSY = 1, /*< nick=Busy >*/ MBIM_STATUS_ERROR_FAILURE = 2, /*< nick=Failure >*/ diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-message-private.h libmbim-1.24.8/src/libmbim-glib/mbim-message-private.h --- libmbim-1.22.0/src/libmbim-glib/mbim-message-private.h 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-message-private.h 2021-06-02 19:05:37.000000000 +0800 @@ -279,7 +279,7 @@ guint32 **array, GError **error); gboolean _mbim_message_read_guint64 (const MbimMessage *self, - guint64 relative_offset, + guint32 relative_offset, guint64 *value, GError **error); gboolean _mbim_message_read_string (const MbimMessage *self, diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-message.c libmbim-1.24.8/src/libmbim-glib/mbim-message.c --- libmbim-1.22.0/src/libmbim-glib/mbim-message.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-message.c 2021-06-02 19:05:37.000000000 +0800 @@ -47,15 +47,6 @@ #include "mbim-intel-firmware-update.h" #include "mbim-ms-basic-connect-extensions.h" -/** - * SECTION:mbim-message - * @title: MbimMessage - * @short_description: Generic MBIM message handling routines - * - * #MbimMessage is a generic type representing a MBIM message of any kind - * (request, response, indication). - **/ - /*****************************************************************************/ static void @@ -99,18 +90,18 @@ GType mbim_message_get_type (void) { - static volatile gsize g_define_type_id__volatile = 0; + static gsize g_define_type_id_initialized = 0; - if (g_once_init_enter (&g_define_type_id__volatile)) { + if (g_once_init_enter (&g_define_type_id_initialized)) { GType g_define_type_id = g_boxed_type_register_static (g_intern_static_string ("MbimMessage"), (GBoxedCopyFunc) mbim_message_ref, (GBoxedFreeFunc) mbim_message_unref); - g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); + g_once_init_leave (&g_define_type_id_initialized, g_define_type_id); } - return g_define_type_id__volatile; + return g_define_type_id_initialized; } /*****************************************************************************/ @@ -177,17 +168,17 @@ guint32 *value, GError **error) { - guint32 required_size; + guint64 required_size; guint32 information_buffer_offset; g_assert (value); information_buffer_offset = _mbim_message_get_information_buffer_offset (self); - required_size = information_buffer_offset + relative_offset + 4; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + 4; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read 32bit unsigned integer (4 bytes) (%u < %u)", + "cannot read 32bit unsigned integer (4 bytes) (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -206,7 +197,7 @@ guint32 **array, GError **error) { - guint32 required_size; + guint64 required_size; guint i; guint32 information_buffer_offset; @@ -219,11 +210,11 @@ information_buffer_offset = _mbim_message_get_information_buffer_offset (self); - required_size = information_buffer_offset + relative_offset_array_start + (4 * array_size); - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset_array_start + (4 * (guint64)array_size); + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read 32bit unsigned integer array (%u bytes) (%u < %u)", - (4 * array_size), self->len, required_size); + "cannot read 32bit unsigned integer array (%" G_GUINT64_FORMAT " bytes) (%u < %" G_GUINT64_FORMAT ")", + (4 * (guint64)array_size), self->len, (guint64)required_size); return FALSE; } @@ -242,21 +233,21 @@ gboolean _mbim_message_read_guint64 (const MbimMessage *self, - guint64 relative_offset, + guint32 relative_offset, guint64 *value, GError **error) { - guint32 required_size; - guint64 information_buffer_offset; + guint64 required_size; + guint32 information_buffer_offset; g_assert (value != NULL); information_buffer_offset = _mbim_message_get_information_buffer_offset (self); - required_size = information_buffer_offset + relative_offset + 8; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + 8; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read 64bit unsigned integer (8 bytes) (%u < %u)", + "cannot read 64bit unsigned integer (8 bytes) (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -275,19 +266,19 @@ gchar **str, GError **error) { - guint32 required_size; - guint32 offset; - guint32 size; - guint32 information_buffer_offset; - gunichar2 *utf16d = NULL; - const gunichar2 *utf16 = NULL; + guint64 required_size; + guint32 offset; + guint32 size; + guint32 information_buffer_offset; + g_autofree gunichar2 *utf16d = NULL; + const gunichar2 *utf16 = NULL; information_buffer_offset = _mbim_message_get_information_buffer_offset (self); - required_size = information_buffer_offset + relative_offset + 8; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + 8; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read string offset and size (%u < %u)", + "cannot read string offset and size (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -305,10 +296,10 @@ return TRUE; } - required_size = information_buffer_offset + struct_start_offset + offset + size; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)struct_start_offset + (guint64)offset + (guint64)size; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read string data (%u bytes) (%u < %u)", + "cannot read string data (%u bytes) (%u < %" G_GUINT64_FORMAT ")", size, self->len, required_size); return FALSE; } @@ -330,8 +321,6 @@ NULL, error); - g_free (utf16d); - if (!(*str)) { g_prefix_error (error, "Error converting string to UTF-8: "); return FALSE; @@ -403,16 +392,16 @@ /* (a) Offset + Length pair in static buffer, data in variable buffer. */ if (has_offset && has_length) { guint32 offset; - guint32 required_size; + guint64 required_size; g_assert (array_size != NULL); g_assert (explicit_array_size == 0); /* requires 8 bytes in relative offset */ - required_size = information_buffer_offset + relative_offset + 8; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + 8; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read byte array offset and size (%u < %u)", + "cannot read byte array offset and size (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -427,10 +416,10 @@ (information_buffer_offset + relative_offset + 4))); /* requires array_size bytes in offset */ - required_size = information_buffer_offset + struct_start_offset + offset + *array_size; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)struct_start_offset + (guint64)offset + (guint64)(*array_size); + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read byte array data (%u bytes) (%u < %u)", + "cannot read byte array data (%u bytes) (%u < %" G_GUINT64_FORMAT ")", *array_size, self->len, required_size); return FALSE; } @@ -442,16 +431,16 @@ /* (b) Just length in static buffer, data just afterwards. */ if (!has_offset && has_length) { - guint32 required_size; + guint64 required_size; g_assert (array_size != NULL); g_assert (explicit_array_size == 0); /* requires 4 bytes in relative offset */ - required_size = information_buffer_offset + relative_offset + 4; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + 4; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read byte array size (%u < %u)", + "cannot read byte array size (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -462,10 +451,10 @@ (information_buffer_offset + relative_offset))); /* requires array_size bytes in after the array_size variable */ - required_size += *array_size; - if (self->len < required_size) { + required_size += (guint64)(*array_size); + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read byte array data (%u bytes) (%u < %u)", + "cannot read byte array data (%u bytes) (%u < %" G_GUINT64_FORMAT ")", *array_size, self->len, required_size); return FALSE; } @@ -477,16 +466,16 @@ /* (c) Just offset in static buffer, length given in another variable, data in variable buffer. */ if (has_offset && !has_length) { - guint32 required_size; + guint64 required_size; guint32 offset; g_assert (array_size == NULL); /* requires 4 bytes in relative offset */ - required_size = information_buffer_offset + relative_offset + 4; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + 4; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read byte array offset (%u < %u)", + "cannot read byte array offset (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -497,10 +486,10 @@ (information_buffer_offset + relative_offset))); /* requires explicit_array_size bytes in offset */ - required_size = information_buffer_offset + struct_start_offset + offset + explicit_array_size; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)struct_start_offset + (guint64)offset + (guint64)explicit_array_size; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read byte array data (%u bytes) (%u < %u)", + "cannot read byte array data (%u bytes) (%u < %" G_GUINT64_FORMAT ")", explicit_array_size, self->len, required_size); return FALSE; } @@ -519,13 +508,13 @@ * length */ *array_size = self->len - (information_buffer_offset + relative_offset); } else { - guint32 required_size; + guint64 required_size; /* requires explicit_array_size bytes in offset */ - required_size = information_buffer_offset + relative_offset + explicit_array_size; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + (guint64)explicit_array_size; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read byte array data (%u bytes) (%u < %u)", + "cannot read byte array data (%u bytes) (%u < %" G_GUINT64_FORMAT ")", explicit_array_size, self->len, required_size); return FALSE; } @@ -545,17 +534,17 @@ const MbimUuid **uuid, GError **error) { - guint32 required_size; + guint64 required_size; guint32 information_buffer_offset; g_assert (uuid); information_buffer_offset = _mbim_message_get_information_buffer_offset (self); - required_size = information_buffer_offset + relative_offset + 16; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + 16; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read UUID (16 bytes) (%u < %u)", + "cannot read UUID (16 bytes) (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -572,7 +561,7 @@ const MbimIPv4 **ipv4, GError **error) { - guint32 required_size; + guint64 required_size; guint32 information_buffer_offset; guint32 offset; @@ -581,10 +570,10 @@ information_buffer_offset = _mbim_message_get_information_buffer_offset (self); if (ref) { - required_size = information_buffer_offset + relative_offset + 4; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + 4; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read IPv4 offset (4 bytes) (%u < %u)", + "cannot read IPv4 offset (4 bytes) (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -599,10 +588,10 @@ } else offset = relative_offset; - required_size = information_buffer_offset + offset + 4; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)offset + 4; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read IPv4 (4 bytes) (%u < %u)", + "cannot read IPv4 (4 bytes) (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -619,7 +608,7 @@ MbimIPv4 **array, GError **error) { - guint32 required_size; + guint64 required_size; guint32 offset; guint32 i; guint32 information_buffer_offset; @@ -633,10 +622,10 @@ information_buffer_offset = _mbim_message_get_information_buffer_offset (self); - required_size = information_buffer_offset + relative_offset_array_start + 4; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset_array_start + 4; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read IPv4 array offset (4 bytes) (%u < %u)", + "cannot read IPv4 array offset (4 bytes) (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -646,11 +635,11 @@ self->data, (information_buffer_offset + relative_offset_array_start))); - required_size = information_buffer_offset + offset + (4 * array_size); - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)offset + (4 * (guint64)array_size); + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read IPv4 array data (%u bytes) (%u < %u)", - (4 * array_size), self->len, required_size); + "cannot read IPv4 array data (%" G_GUINT64_FORMAT " bytes) (%u < %" G_GUINT64_FORMAT ")", + (4 * (guint64)array_size), self->len, required_size); return FALSE; } @@ -672,7 +661,7 @@ const MbimIPv6 **ipv6, GError **error) { - guint32 required_size; + guint64 required_size; guint32 information_buffer_offset; guint32 offset; @@ -681,10 +670,10 @@ information_buffer_offset = _mbim_message_get_information_buffer_offset (self); if (ref) { - required_size = information_buffer_offset + relative_offset + 4; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset + 4; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read IPv6 offset (4 bytes) (%u < %u)", + "cannot read IPv6 offset (4 bytes) (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -699,10 +688,10 @@ } else offset = relative_offset; - required_size = information_buffer_offset + offset + 16; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)offset + 16; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read IPv6 (16 bytes) (%u < %u)", + "cannot read IPv6 (16 bytes) (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -719,7 +708,7 @@ MbimIPv6 **array, GError **error) { - guint32 required_size; + guint64 required_size; guint32 offset; guint32 i; guint32 information_buffer_offset; @@ -733,10 +722,10 @@ information_buffer_offset = _mbim_message_get_information_buffer_offset (self); - required_size = information_buffer_offset + relative_offset_array_start + 4; - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)relative_offset_array_start + 4; + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read IPv6 array offset (4 bytes) (%u < %u)", + "cannot read IPv6 array offset (4 bytes) (%u < %" G_GUINT64_FORMAT ")", self->len, required_size); return FALSE; } @@ -746,11 +735,11 @@ self->data, (information_buffer_offset + relative_offset_array_start))); - required_size = information_buffer_offset + offset + (16 * array_size); - if (self->len < required_size) { + required_size = (guint64)information_buffer_offset + (guint64)offset + (16 * (guint64)array_size); + if ((guint64)self->len < required_size) { g_set_error (error, MBIM_CORE_ERROR, MBIM_CORE_ERROR_INVALID_MESSAGE, - "cannot read IPv6 array data (%u bytes) (%u < %u)", - (16 * array_size), self->len, required_size); + "cannot read IPv6 array data (%" G_GUINT64_FORMAT " bytes) (%u < %" G_GUINT64_FORMAT ")", + (16 * (guint64)array_size), self->len, required_size); return FALSE; } @@ -947,18 +936,18 @@ _mbim_struct_builder_append_string (MbimStructBuilder *builder, const gchar *value) { - guint32 offset; - guint32 length; - gunichar2 *utf16 = NULL; - guint32 utf16_bytes = 0; - GError *error = NULL; + guint32 offset; + guint32 length; + g_autofree gunichar2 *utf16 = NULL; + guint32 utf16_bytes = 0; /* A string consists of Offset+Size in the static buffer, plus the * string itself in the variable buffer */ /* Convert the string from UTF-8 to UTF-16HE */ if (value && value[0]) { - glong items_written = 0; + g_autoptr(GError) error = NULL; + glong items_written = 0; utf16 = g_utf8_to_utf16 (value, -1, @@ -967,7 +956,6 @@ &error); if (!utf16) { g_warning ("Error converting string: %s", error->message); - g_error_free (error); return; } @@ -1009,7 +997,6 @@ g_byte_array_append (builder->variable_buffer, (const guint8 *)utf16, (guint)utf16_bytes); bytearray_apply_padding (builder->variable_buffer, &utf16_bytes); } - g_free (utf16); } void @@ -1234,14 +1221,6 @@ /*****************************************************************************/ /* Generic message interface */ -/** - * mbim_message_ref: - * @self: a #MbimMessage. - * - * Atomically increments the reference count of @self by one. - * - * Returns: (transfer full) the new reference to @self. - */ MbimMessage * mbim_message_ref (MbimMessage *self) { @@ -1250,13 +1229,6 @@ return (MbimMessage *) g_byte_array_ref ((GByteArray *)self); } -/** - * mbim_message_unref: - * @self: a #MbimMessage. - * - * Atomically decrements the reference count of @self by one. - * If the reference count drops to 0, @self is completely disposed. - */ void mbim_message_unref (MbimMessage *self) { @@ -1265,14 +1237,6 @@ g_byte_array_unref ((GByteArray *)self); } -/** - * mbim_message_get_message_type: - * @self: a #MbimMessage. - * - * Gets the message type. - * - * Returns: a #MbimMessageType. - */ MbimMessageType mbim_message_get_message_type (const MbimMessage *self) { @@ -1281,14 +1245,6 @@ return MBIM_MESSAGE_GET_MESSAGE_TYPE (self); } -/** - * mbim_message_get_message_length: - * @self: a #MbimMessage. - * - * Gets the whole message length. - * - * Returns: the length of the message. - */ guint32 mbim_message_get_message_length (const MbimMessage *self) { @@ -1297,14 +1253,6 @@ return MBIM_MESSAGE_GET_MESSAGE_LENGTH (self); } -/** - * mbim_message_get_transaction_id: - * @self: a #MbimMessage. - * - * Gets the transaction ID of the message. - * - * Returns: the transaction ID. - */ guint32 mbim_message_get_transaction_id (const MbimMessage *self) { @@ -1313,13 +1261,6 @@ return MBIM_MESSAGE_GET_TRANSACTION_ID (self); } -/** - * mbim_message_set_transaction_id: - * @self: a #MbimMessage. - * @transaction_id: the transaction id. - * - * Sets the transaction ID of the message. - */ void mbim_message_set_transaction_id (MbimMessage *self, guint32 transaction_id) @@ -1329,15 +1270,6 @@ ((struct header *)(self->data))->transaction_id = GUINT32_TO_LE (transaction_id); } -/** - * mbim_message_new: - * @data: contents of the message. - * @data_length: length of the message. - * - * Create a #MbimMessage with the given contents. - * - * Returns: (transfer full): a newly created #MbimMessage, which should be freed with mbim_message_unref(). - */ MbimMessage * mbim_message_new (const guint8 *data, guint32 data_length) @@ -1351,14 +1283,6 @@ return (MbimMessage *)out; } -/** - * mbim_message_dup: - * @self: a #MbimMessage to duplicate. - * - * Create a #MbimMessage with the same contents as @self. - * - * Returns: (transfer full): a newly created #MbimMessage, which should be freed with mbim_message_unref(). - */ MbimMessage * mbim_message_dup (const MbimMessage *self) { @@ -1368,16 +1292,6 @@ MBIM_MESSAGE_GET_MESSAGE_LENGTH (self)); } -/** - * mbim_message_get_raw: - * @self: a #MbimMessage. - * @length: (out): return location for the size of the output buffer. - * @error: return location for error or %NULL. - * - * Gets the whole raw data buffer of the #MbimMessage. - * - * Returns: (transfer none): The raw data buffer, or #NULL if @error is set. - */ const guint8 * mbim_message_get_raw (const MbimMessage *self, guint32 *length, @@ -1398,16 +1312,6 @@ return self->data; } -/** - * mbim_message_get_printable: - * @self: a #MbimMessage. - * @line_prefix: prefix string to use in each new generated line. - * @headers_only: %TRUE if only basic headers should be printed. - * - * Gets a printable string with the contents of the whole MBIM message. - * - * Returns: (transfer full): a newly allocated string, which should be freed with g_free(). - */ gchar * mbim_message_get_printable (const MbimMessage *self, const gchar *line_prefix, @@ -1499,8 +1403,8 @@ line_prefix, _mbim_message_fragment_get_total (self), line_prefix, _mbim_message_fragment_get_current (self)); if (!headers_only) { - gchar *uuid_printable; - const gchar *cid_printable; + g_autofree gchar *uuid_printable = NULL; + const gchar *cid_printable; service_read_fields = mbim_message_command_get_service (self); @@ -1516,7 +1420,6 @@ line_prefix, mbim_service_lookup_name (mbim_message_command_get_service (self)), uuid_printable, line_prefix, cid_printable, mbim_message_command_get_cid (self), line_prefix, mbim_message_command_type_get_string (mbim_message_command_get_command_type (self)), mbim_message_command_get_command_type (self)); - g_free (uuid_printable); } break; @@ -1529,9 +1432,9 @@ line_prefix, _mbim_message_fragment_get_total (self), line_prefix, _mbim_message_fragment_get_current (self)); if (!headers_only) { - gchar *uuid_printable; - MbimStatusError status; - const gchar *cid_printable; + g_autofree gchar *uuid_printable = NULL; + MbimStatusError status; + const gchar *cid_printable; service_read_fields = mbim_message_command_done_get_service (self); @@ -1548,7 +1451,6 @@ line_prefix, mbim_status_error_get_string (status), status, line_prefix, mbim_service_lookup_name (mbim_message_command_done_get_service (self)), uuid_printable, line_prefix, cid_printable, mbim_message_command_done_get_cid (self)); - g_free (uuid_printable); } break; @@ -1561,8 +1463,8 @@ line_prefix, _mbim_message_fragment_get_total (self), line_prefix, _mbim_message_fragment_get_current (self)); if (!headers_only) { - gchar *uuid_printable; - const gchar *cid_printable; + g_autofree gchar *uuid_printable = NULL; + const gchar *cid_printable; service_read_fields = mbim_message_indicate_status_get_service (self); @@ -1576,7 +1478,6 @@ line_prefix, line_prefix, mbim_service_lookup_name (mbim_message_indicate_status_get_service (self)), uuid_printable, line_prefix, cid_printable, mbim_message_indicate_status_get_cid (self)); - g_free (uuid_printable); } break; @@ -1585,8 +1486,8 @@ } if (service_read_fields != MBIM_SERVICE_INVALID) { - gchar *fields_printable = NULL; - GError *error = NULL; + g_autofree gchar *fields_printable = NULL; + g_autoptr(GError) error = NULL; switch (service_read_fields) { case MBIM_SERVICE_BASIC_CONNECT: @@ -1638,19 +1539,15 @@ break; } - if (error) { + if (error) g_string_append_printf (printable, "%sFields: %s\n", line_prefix, error->message); - g_error_free (error); - } else if (fields_printable) { - if (fields_printable[0]) - g_string_append_printf (printable, - "%sFields:\n" - "%s", - line_prefix, fields_printable); - g_free (fields_printable); - } + else if (fields_printable && fields_printable[0]) + g_string_append_printf (printable, + "%sFields:\n" + "%s", + line_prefix, fields_printable); } return g_string_free (printable, FALSE); @@ -1860,17 +1757,6 @@ /*****************************************************************************/ /* 'Open' message interface */ -/** - * mbim_message_open_new: - * @transaction_id: transaction ID. - * @max_control_transfer: maximum control transfer. - * - * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_OPEN with the specified - * parameters. - * - * Returns: (transfer full): a newly created #MbimMessage. The returned value - * should be freed with mbim_message_unref(). - */ MbimMessage * mbim_message_open_new (guint32 transaction_id, guint32 max_control_transfer) @@ -1887,15 +1773,6 @@ return (MbimMessage *)self; } -/** - * mbim_message_open_get_max_control_transfer: - * @self: a #MbimMessage. - * - * Get the maximum control transfer set to be used in the #MbimMessage of type - * %MBIM_MESSAGE_TYPE_OPEN. - * - * Returns: the maximum control transfer. - */ guint32 mbim_message_open_get_max_control_transfer (const MbimMessage *self) { @@ -1908,16 +1785,6 @@ /*****************************************************************************/ /* 'Open Done' message interface */ -/** - * mbim_message_open_done_new: - * @transaction_id: transaction ID. - * @error_status_code: a #MbimStatusError. - * - * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_OPEN_DONE with the specified - * parameters. - * - * Returns: (transfer full): a newly created #MbimMessage, which should be freed with mbim_message_unref(). - */ MbimMessage * mbim_message_open_done_new (guint32 transaction_id, MbimStatusError error_status_code) @@ -1934,14 +1801,6 @@ return (MbimMessage *)self; } -/** - * mbim_message_open_done_get_status_code: - * @self: a #MbimMessage. - * - * Get status code from the %MBIM_MESSAGE_TYPE_OPEN_DONE message. - * - * Returns: a #MbimStatusError. - */ MbimStatusError mbim_message_open_done_get_status_code (const MbimMessage *self) { @@ -1951,15 +1810,6 @@ return (MbimStatusError) GUINT32_FROM_LE (((struct full_message *)(self->data))->message.open_done.status_code); } -/** - * mbim_message_open_done_get_result: - * @self: a #MbimMessage. - * @error: return location for error or %NULL. - * - * Gets the result of the 'Open' operation in the %MBIM_MESSAGE_TYPE_OPEN_DONE message. - * - * Returns: %TRUE if the operation succeeded, %FALSE if @error is set. - */ gboolean mbim_message_open_done_get_result (const MbimMessage *self, GError **error) @@ -1980,16 +1830,6 @@ /*****************************************************************************/ /* 'Close' message interface */ -/** - * mbim_message_close_new: - * @transaction_id: transaction ID. - * - * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_CLOSE with the specified - * parameters. - * - * Returns: (transfer full): a newly created #MbimMessage. The returned value - * should be freed with mbim_message_unref(). - */ MbimMessage * mbim_message_close_new (guint32 transaction_id) { @@ -2001,16 +1841,6 @@ /*****************************************************************************/ /* 'Close Done' message interface */ -/** - * mbim_message_close_done_new: - * @transaction_id: transaction ID. - * @error_status_code: a #MbimStatusError. - * - * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_CLOSE_DONE with the specified - * parameters. - * - * Returns: (transfer full): a newly created #MbimMessage, which should be freed with mbim_message_unref(). - */ MbimMessage * mbim_message_close_done_new (guint32 transaction_id, MbimStatusError error_status_code) @@ -2027,14 +1857,6 @@ return (MbimMessage *)self; } -/** - * mbim_message_close_done_get_status_code: - * @self: a #MbimMessage. - * - * Get status code from the %MBIM_MESSAGE_TYPE_CLOSE_DONE message. - * - * Returns: a #MbimStatusError. - */ MbimStatusError mbim_message_close_done_get_status_code (const MbimMessage *self) { @@ -2044,15 +1866,6 @@ return (MbimStatusError) GUINT32_FROM_LE (((struct full_message *)(self->data))->message.close_done.status_code); } -/** - * mbim_message_close_done_get_result: - * @self: a #MbimMessage. - * @error: return location for error or %NULL. - * - * Gets the result of the 'Close' operation in the %MBIM_MESSAGE_TYPE_CLOSE_DONE message. - * - * Returns: %TRUE if the operation succeeded, %FALSE if @error is set. - */ gboolean mbim_message_close_done_get_result (const MbimMessage *self, GError **error) @@ -2073,17 +1886,6 @@ /*****************************************************************************/ /* 'Error' message interface */ -/** - * mbim_message_error_new: - * @transaction_id: transaction ID. - * @error_status_code: a #MbimProtocolError. - * - * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_HOST_ERROR with the specified - * parameters. - * - * Returns: (transfer full): a newly created #MbimMessage. The returned value - * should be freed with mbim_message_unref(). - */ MbimMessage * mbim_message_error_new (guint32 transaction_id, MbimProtocolError error_status_code) @@ -2100,17 +1902,6 @@ return (MbimMessage *)self; } -/** - * mbim_message_function_error_new: - * @transaction_id: transaction ID. - * @error_status_code: a #MbimProtocolError. - * - * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_FUNCTION_ERROR with the specified - * parameters. - * - * Returns: (transfer full): a newly created #MbimMessage. The returned value - * should be freed with mbim_message_unref(). - */ MbimMessage * mbim_message_function_error_new (guint32 transaction_id, MbimProtocolError error_status_code) @@ -2127,15 +1918,6 @@ return (MbimMessage *)self; } -/** - * mbim_message_error_get_error_status_code: - * @self: a #MbimMessage. - * - * Get the error code in a %MBIM_MESSAGE_TYPE_HOST_ERROR or - * %MBIM_MESSAGE_TYPE_FUNCTION_ERROR message. - * - * Returns: a #MbimProtocolError. - */ MbimProtocolError mbim_message_error_get_error_status_code (const MbimMessage *self) { @@ -2147,15 +1929,6 @@ return (MbimProtocolError) GUINT32_FROM_LE (((struct full_message *)(self->data))->message.error.error_status_code); } -/** - * mbim_message_error_get_error: - * @self: a #MbimMessage. - * - * Get the error in a %MBIM_MESSAGE_TYPE_HOST_ERROR or - * %MBIM_MESSAGE_TYPE_FUNCTION_ERROR message. - * - * Returns: a newly allocated #GError, which should be freed with g_error_free(). - */ GError * mbim_message_error_get_error (const MbimMessage *self) { @@ -2178,19 +1951,6 @@ /*****************************************************************************/ /* 'Command' message interface */ -/** - * mbim_message_command_new: - * @transaction_id: transaction ID. - * @service: a #MbimService. - * @cid: the command ID. - * @command_type: the command type. - * - * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_COMMAND with the - * specified parameters and an empty information buffer. - * - * Returns: (transfer full): a newly created #MbimMessage. The returned value - * should be freed with mbim_message_unref(). - */ MbimMessage * mbim_message_command_new (guint32 transaction_id, MbimService service, @@ -2221,14 +1981,6 @@ return (MbimMessage *)self; } -/** - * mbim_message_command_append: - * @self: a #MbimMessage. - * @buffer: raw buffer to append to the message. - * @buffer_size: length of the data in @buffer. - * - * Appends the contents of @buffer to @self. - */ void mbim_message_command_append (MbimMessage *self, const guint8 *buffer, @@ -2243,14 +1995,6 @@ GUINT32_TO_LE (GUINT32_FROM_LE (((struct full_message *)(self->data))->message.command.buffer_length) + buffer_size); } -/** - * mbim_message_command_get_service: - * @self: a #MbimMessage. - * - * Get the service of a %MBIM_MESSAGE_TYPE_COMMAND message. - * - * Returns: a #MbimService. - */ MbimService mbim_message_command_get_service (const MbimMessage *self) { @@ -2260,14 +2004,6 @@ return mbim_uuid_to_service ((const MbimUuid *)&(((struct full_message *)(self->data))->message.command.service_id)); } -/** - * mbim_message_command_get_service_id: - * @self: a #MbimMessage. - * - * Get the service UUID of a %MBIM_MESSAGE_TYPE_COMMAND message. - * - * Returns: a #MbimUuid. - */ const MbimUuid * mbim_message_command_get_service_id (const MbimMessage *self) { @@ -2277,14 +2013,6 @@ return (const MbimUuid *)&(((struct full_message *)(self->data))->message.command.service_id); } -/** - * mbim_message_command_get_cid: - * @self: a #MbimMessage. - * - * Get the command id of a %MBIM_MESSAGE_TYPE_COMMAND message. - * - * Returns: a CID. - */ guint32 mbim_message_command_get_cid (const MbimMessage *self) { @@ -2294,14 +2022,6 @@ return GUINT32_FROM_LE (((struct full_message *)(self->data))->message.command.command_id); } -/** - * mbim_message_command_get_command_type: - * @self: a #MbimMessage. - * - * Get the command type of a %MBIM_MESSAGE_TYPE_COMMAND message. - * - * Returns: a #MbimMessageCommandType. - */ MbimMessageCommandType mbim_message_command_get_command_type (const MbimMessage *self) { @@ -2311,15 +2031,6 @@ return (MbimMessageCommandType) GUINT32_FROM_LE (((struct full_message *)(self->data))->message.command.command_type); } -/** - * mbim_message_command_get_raw_information_buffer: - * @self: a #MbimMessage. - * @out_length: (out): return location for the size of the output buffer. - * - * Gets the information buffer of the %MBIM_MESSAGE_TYPE_COMMAND message. - * - * Returns: (transfer none): The raw data buffer, or #NULL if empty. - */ const guint8 * mbim_message_command_get_raw_information_buffer (const MbimMessage *self, guint32 *out_length) @@ -2341,14 +2052,6 @@ /*****************************************************************************/ /* 'Command Done' message interface */ -/** - * mbim_message_command_done_get_service: - * @self: a #MbimMessage. - * - * Get the service of a %MBIM_MESSAGE_TYPE_COMMAND_DONE message. - * - * Returns: a #MbimService. - */ MbimService mbim_message_command_done_get_service (const MbimMessage *self) { @@ -2358,14 +2061,6 @@ return mbim_uuid_to_service ((const MbimUuid *)&(((struct full_message *)(self->data))->message.command_done.service_id)); } -/** - * mbim_message_command_done_get_service_id: - * @self: a #MbimMessage. - * - * Get the service UUID of a %MBIM_MESSAGE_TYPE_COMMAND_DONE message. - * - * Returns: a #MbimUuid. - */ const MbimUuid * mbim_message_command_done_get_service_id (const MbimMessage *self) { @@ -2375,14 +2070,6 @@ return (const MbimUuid *)&(((struct full_message *)(self->data))->message.command_done.service_id); } -/** - * mbim_message_command_done_get_cid: - * @self: a #MbimMessage. - * - * Get the command id of a %MBIM_MESSAGE_TYPE_COMMAND_DONE message. - * - * Returns: a CID. - */ guint32 mbim_message_command_done_get_cid (const MbimMessage *self) { @@ -2392,14 +2079,6 @@ return GUINT32_FROM_LE (((struct full_message *)(self->data))->message.command_done.command_id); } -/** - * mbim_message_command_done_get_status_code: - * @self: a #MbimMessage. - * - * Get status code from the %MBIM_MESSAGE_TYPE_COMMAND_DONE message. - * - * Returns: a #MbimStatusError. - */ MbimStatusError mbim_message_command_done_get_status_code (const MbimMessage *self) { @@ -2409,15 +2088,6 @@ return (MbimStatusError) GUINT32_FROM_LE (((struct full_message *)(self->data))->message.command_done.status_code); } -/** - * mbim_message_command_done_get_result: - * @self: a #MbimMessage. - * @error: return location for error or %NULL. - * - * Gets the result of the 'Command' operation in the %MBIM_MESSAGE_TYPE_COMMAND_DONE message. - * - * Returns: %TRUE if the operation succeeded, %FALSE if @error is set. - */ gboolean mbim_message_command_done_get_result (const MbimMessage *self, GError **error) @@ -2435,15 +2105,6 @@ return FALSE; } -/** - * mbim_message_command_done_get_raw_information_buffer: - * @self: a #MbimMessage. - * @out_length: (out): return location for the size of the output buffer. - * - * Gets the information buffer of the %MBIM_MESSAGE_TYPE_COMMAND_DONE message. - * - * Returns: (transfer none): The raw data buffer, or #NULL if empty. - */ const guint8 * mbim_message_command_done_get_raw_information_buffer (const MbimMessage *self, guint32 *out_length) @@ -2465,14 +2126,6 @@ /*****************************************************************************/ /* 'Indicate Status' message interface */ -/** - * mbim_message_indicate_status_get_service: - * @self: a #MbimMessage. - * - * Get the service of a %MBIM_MESSAGE_TYPE_INDICATE_STATUS message. - * - * Returns: a #MbimService. - */ MbimService mbim_message_indicate_status_get_service (const MbimMessage *self) { @@ -2482,14 +2135,6 @@ return mbim_uuid_to_service ((const MbimUuid *)&(((struct full_message *)(self->data))->message.indicate_status.service_id)); } -/** - * mbim_message_indicate_status_get_service_id: - * @self: a #MbimMessage. - * - * Get the service UUID of a %MBIM_MESSAGE_TYPE_INDICATE_STATUS message. - * - * Returns: a #MbimUuid. - */ const MbimUuid * mbim_message_indicate_status_get_service_id (const MbimMessage *self) { @@ -2499,14 +2144,6 @@ return (const MbimUuid *)&(((struct full_message *)(self->data))->message.indicate_status.service_id); } -/** - * mbim_message_indicate_status_get_cid: - * @self: a #MbimMessage. - * - * Get the command id of a %MBIM_MESSAGE_TYPE_INDICATE_STATUS message. - * - * Returns: a CID. - */ guint32 mbim_message_indicate_status_get_cid (const MbimMessage *self) { @@ -2516,15 +2153,6 @@ return GUINT32_FROM_LE (((struct full_message *)(self->data))->message.indicate_status.command_id); } -/** - * mbim_message_indicate_status_get_raw_information_buffer: - * @self: a #MbimMessage. - * @out_length: (out): return location for the size of the output buffer. - * - * Gets the information buffer of the %MBIM_MESSAGE_TYPE_INDICATE_STATUS message. - * - * Returns: (transfer none): The raw data buffer, or #NULL if empty. - */ const guint8 * mbim_message_indicate_status_get_raw_information_buffer (const MbimMessage *self, guint32 *out_length) @@ -2546,18 +2174,6 @@ /*****************************************************************************/ /* Other helpers */ -/** - * mbim_message_response_get_result: - * @self: a #MbimMessage response message. - * @expected: expected #MbimMessageType if there isn't any error in the operation. - * @error: return location for error or %NULL. - * - * Gets the result of the operation from the response message, which - * can be either a %MBIM_MESSAGE_TYPE_FUNCTION_ERROR message or a message of the - * specified @expected type. - * - * Returns: %TRUE if the operation succeeded, %FALSE if @error is set. - */ gboolean mbim_message_response_get_result (const MbimMessage *self, MbimMessageType expected, diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-message.h libmbim-1.24.8/src/libmbim-glib/mbim-message.h --- libmbim-1.22.0/src/libmbim-glib/mbim-message.h 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-message.h 2020-07-10 16:12:29.000000000 +0800 @@ -37,9 +37,20 @@ G_BEGIN_DECLS /** + * SECTION:mbim-message + * @title: MbimMessage + * @short_description: Generic MBIM message handling routines + * + * #MbimMessage is a generic type representing a MBIM message of any kind + * (request, response, indication). + **/ + +/** * MbimMessage: * * An opaque type representing a MBIM message. + * + * Since: 1.0 */ typedef struct _MbimMessage MbimMessage; @@ -51,6 +62,8 @@ * @addr: 4 bytes specifying the IPv4 address. * * An IPv4 address. + * + * Since: 1.0 */ typedef struct _MbimIPv4 MbimIPv4; struct _MbimIPv4 { @@ -62,6 +75,8 @@ * @addr: 16 bytes specifying the IPv6 address. * * An IPv6 address. + * + * Since: 1.0 */ typedef struct _MbimIPv6 MbimIPv6; struct _MbimIPv6 { @@ -82,8 +97,10 @@ * @MBIM_MESSAGE_TYPE_INDICATE_STATUS: Unsolicited message from the function. * * Type of MBIM messages. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_MESSAGE_TYPE_INVALID = 0x00000000, /* From Host to Function */ MBIM_MESSAGE_TYPE_OPEN = 0x00000001, @@ -101,65 +118,334 @@ /*****************************************************************************/ /* Generic message interface */ -MbimMessage *mbim_message_new (const guint8 *data, - guint32 data_length); -MbimMessage *mbim_message_dup (const MbimMessage *self); -MbimMessage *mbim_message_ref (MbimMessage *self); -void mbim_message_unref (MbimMessage *self); - -gchar *mbim_message_get_printable (const MbimMessage *self, - const gchar *line_prefix, - gboolean headers_only); -const guint8 *mbim_message_get_raw (const MbimMessage *self, - guint32 *length, - GError **error); - -MbimMessageType mbim_message_get_message_type (const MbimMessage *self); -guint32 mbim_message_get_message_length (const MbimMessage *self); -guint32 mbim_message_get_transaction_id (const MbimMessage *self); +/** + * mbim_message_new: + * @data: contents of the message. + * @data_length: length of the message. + * + * Create a #MbimMessage with the given contents. + * + * Returns: (transfer full): a newly created #MbimMessage, which should be freed with mbim_message_unref(). + * + * Since: 1.0 + */ +MbimMessage *mbim_message_new (const guint8 *data, + guint32 data_length); -void mbim_message_set_transaction_id (MbimMessage *self, - guint32 transaction_id); +/** + * mbim_message_dup: + * @self: a #MbimMessage to duplicate. + * + * Create a #MbimMessage with the same contents as @self. + * + * Returns: (transfer full): a newly created #MbimMessage, which should be freed with mbim_message_unref(). + * + * Since: 1.0 + */ +MbimMessage *mbim_message_dup (const MbimMessage *self); + +/** + * mbim_message_ref: + * @self: a #MbimMessage. + * + * Atomically increments the reference count of @self by one. + * + * Returns: (transfer full): the new reference to @self. + * + * Since: 1.0 + */ +MbimMessage *mbim_message_ref (MbimMessage *self); + +/** + * mbim_message_unref: + * @self: a #MbimMessage. + * + * Atomically decrements the reference count of @self by one. + * If the reference count drops to 0, @self is completely disposed. + * + * Since: 1.0 + */ +void mbim_message_unref (MbimMessage *self); + +/** + * mbim_message_get_printable: + * @self: a #MbimMessage. + * @line_prefix: prefix string to use in each new generated line. + * @headers_only: %TRUE if only basic headers should be printed. + * + * Gets a printable string with the contents of the whole MBIM message. + * + * Returns: a newly allocated string, which should be freed with g_free(). + * + * Since: 1.0 + */ +gchar *mbim_message_get_printable (const MbimMessage *self, + const gchar *line_prefix, + gboolean headers_only); + +/** + * mbim_message_get_raw: + * @self: a #MbimMessage. + * @length: (out): return location for the size of the output buffer. + * @error: return location for error or %NULL. + * + * Gets the whole raw data buffer of the #MbimMessage. + * + * Returns: The raw data buffer, or #NULL if @error is set. + * + * Since: 1.0 + */ +const guint8 *mbim_message_get_raw (const MbimMessage *self, + guint32 *length, + GError **error); + +/** + * mbim_message_get_message_type: + * @self: a #MbimMessage. + * + * Gets the message type. + * + * Returns: a #MbimMessageType. + * + * Since: 1.0 + */ +MbimMessageType mbim_message_get_message_type (const MbimMessage *self); + +/** + * mbim_message_get_message_length: + * @self: a #MbimMessage. + * + * Gets the whole message length. + * + * Returns: the length of the message. + * + * Since: 1.0 + */ +guint32 mbim_message_get_message_length (const MbimMessage *self); + +/** + * mbim_message_get_transaction_id: + * @self: a #MbimMessage. + * + * Gets the transaction ID of the message. + * + * Returns: the transaction ID. + * + * Since: 1.0 + */ +guint32 mbim_message_get_transaction_id (const MbimMessage *self); + +/** + * mbim_message_set_transaction_id: + * @self: a #MbimMessage. + * @transaction_id: the transaction id. + * + * Sets the transaction ID of the message. + * + * Since: 1.0 + */ +void mbim_message_set_transaction_id (MbimMessage *self, + guint32 transaction_id); + +G_DEFINE_AUTOPTR_CLEANUP_FUNC (MbimMessage, mbim_message_unref) /*****************************************************************************/ /* 'Open' message interface */ -MbimMessage *mbim_message_open_new (guint32 transaction_id, - guint32 max_control_transfer); -guint32 mbim_message_open_get_max_control_transfer (const MbimMessage *self); +/** + * mbim_message_open_new: + * @transaction_id: transaction ID. + * @max_control_transfer: maximum control transfer. + * + * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_OPEN with the specified + * parameters. + * + * Returns: (transfer full): a newly created #MbimMessage. The returned value + * should be freed with mbim_message_unref(). + * + * Since: 1.0 + */ +MbimMessage *mbim_message_open_new (guint32 transaction_id, + guint32 max_control_transfer); + +/** + * mbim_message_open_get_max_control_transfer: + * @self: a #MbimMessage. + * + * Get the maximum control transfer set to be used in the #MbimMessage of type + * %MBIM_MESSAGE_TYPE_OPEN. + * + * Returns: the maximum control transfer. + * + * Since: 1.0 + */ +guint32 mbim_message_open_get_max_control_transfer (const MbimMessage *self); /*****************************************************************************/ /* 'Open Done' message interface */ -MbimMessage *mbim_message_open_done_new (guint32 transaction_id, - MbimStatusError error_status_code); -MbimStatusError mbim_message_open_done_get_status_code (const MbimMessage *self); -gboolean mbim_message_open_done_get_result (const MbimMessage *self, - GError **error); +/** + * mbim_message_open_done_new: + * @transaction_id: transaction ID. + * @error_status_code: a #MbimStatusError. + * + * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_OPEN_DONE with the specified + * parameters. + * + * Returns: (transfer full): a newly created #MbimMessage, which should be freed with mbim_message_unref(). + * + * Since: 1.10 + */ +MbimMessage *mbim_message_open_done_new (guint32 transaction_id, + MbimStatusError error_status_code); + +/** + * mbim_message_open_done_get_status_code: + * @self: a #MbimMessage. + * + * Get status code from the %MBIM_MESSAGE_TYPE_OPEN_DONE message. + * + * Returns: a #MbimStatusError. + * + * Since: 1.0 + */ +MbimStatusError mbim_message_open_done_get_status_code (const MbimMessage *self); + +/** + * mbim_message_open_done_get_result: + * @self: a #MbimMessage. + * @error: return location for error or %NULL. + * + * Gets the result of the 'Open' operation in the %MBIM_MESSAGE_TYPE_OPEN_DONE message. + * + * Returns: %TRUE if the operation succeeded, %FALSE if @error is set. + * + * Since: 1.0 + */ +gboolean mbim_message_open_done_get_result (const MbimMessage *self, + GError **error); /*****************************************************************************/ /* 'Close' message interface */ +/** + * mbim_message_close_new: + * @transaction_id: transaction ID. + * + * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_CLOSE with the specified + * parameters. + * + * Returns: (transfer full): a newly created #MbimMessage. The returned value + * should be freed with mbim_message_unref(). + * + * Since: 1.0 + */ MbimMessage *mbim_message_close_new (guint32 transaction_id); /*****************************************************************************/ /* 'Close Done' message interface */ -MbimMessage *mbim_message_close_done_new (guint32 transaction_id, - MbimStatusError error_status_code); -MbimStatusError mbim_message_close_done_get_status_code (const MbimMessage *self); -gboolean mbim_message_close_done_get_result (const MbimMessage *self, - GError **error); +/** + * mbim_message_close_done_new: + * @transaction_id: transaction ID. + * @error_status_code: a #MbimStatusError. + * + * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_CLOSE_DONE with the specified + * parameters. + * + * Returns: (transfer full): a newly created #MbimMessage, which should be freed with mbim_message_unref(). + * + * Since: 1.10 + */ +MbimMessage *mbim_message_close_done_new (guint32 transaction_id, + MbimStatusError error_status_code); + +/** + * mbim_message_close_done_get_status_code: + * @self: a #MbimMessage. + * + * Get status code from the %MBIM_MESSAGE_TYPE_CLOSE_DONE message. + * + * Returns: a #MbimStatusError. + * + * Since: 1.0 + */ +MbimStatusError mbim_message_close_done_get_status_code (const MbimMessage *self); + +/** + * mbim_message_close_done_get_result: + * @self: a #MbimMessage. + * @error: return location for error or %NULL. + * + * Gets the result of the 'Close' operation in the %MBIM_MESSAGE_TYPE_CLOSE_DONE message. + * + * Returns: %TRUE if the operation succeeded, %FALSE if @error is set. + * + * Since: 1.0 + */ +gboolean mbim_message_close_done_get_result (const MbimMessage *self, + GError **error); /*****************************************************************************/ /* 'Error' message interface */ -MbimMessage *mbim_message_error_new (guint32 transaction_id, - MbimProtocolError error_status_code); -MbimMessage *mbim_message_function_error_new (guint32 transaction_id, - MbimProtocolError error_status_code); -MbimProtocolError mbim_message_error_get_error_status_code (const MbimMessage *self); -GError *mbim_message_error_get_error (const MbimMessage *self); +/** + * mbim_message_error_new: + * @transaction_id: transaction ID. + * @error_status_code: a #MbimProtocolError. + * + * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_HOST_ERROR with the specified + * parameters. + * + * Returns: (transfer full): a newly created #MbimMessage. The returned value + * should be freed with mbim_message_unref(). + * + * Since: 1.0 + */ +MbimMessage *mbim_message_error_new (guint32 transaction_id, + MbimProtocolError error_status_code); + +/** + * mbim_message_function_error_new: + * @transaction_id: transaction ID. + * @error_status_code: a #MbimProtocolError. + * + * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_FUNCTION_ERROR with the specified + * parameters. + * + * Returns: (transfer full): a newly created #MbimMessage. The returned value + * should be freed with mbim_message_unref(). + * + * Since: 1.12 + */ +MbimMessage *mbim_message_function_error_new (guint32 transaction_id, + MbimProtocolError error_status_code); + +/** + * mbim_message_error_get_error_status_code: + * @self: a #MbimMessage. + * + * Get the error code in a %MBIM_MESSAGE_TYPE_HOST_ERROR or + * %MBIM_MESSAGE_TYPE_FUNCTION_ERROR message. + * + * Returns: a #MbimProtocolError. + * + * Since: 1.0 + */ +MbimProtocolError mbim_message_error_get_error_status_code (const MbimMessage *self); + +/** + * mbim_message_error_get_error: + * @self: a #MbimMessage. + * + * Get the error in a %MBIM_MESSAGE_TYPE_HOST_ERROR or + * %MBIM_MESSAGE_TYPE_FUNCTION_ERROR message. + * + * Returns: a newly allocated #GError, which should be freed with g_error_free(). + * + * Since: 1.0 + */ +GError *mbim_message_error_get_error (const MbimMessage *self); /*****************************************************************************/ /* 'Command' message interface */ @@ -171,52 +457,260 @@ * @MBIM_MESSAGE_COMMAND_TYPE_SET: Set command. * * Type of command message. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_MESSAGE_COMMAND_TYPE_UNKNOWN = -1, MBIM_MESSAGE_COMMAND_TYPE_QUERY = 0, MBIM_MESSAGE_COMMAND_TYPE_SET = 1 } MbimMessageCommandType; -MbimMessage *mbim_message_command_new (guint32 transaction_id, - MbimService service, - guint32 cid, - MbimMessageCommandType command_type); -void mbim_message_command_append (MbimMessage *self, - const guint8 *buffer, - guint32 buffer_size); - -MbimService mbim_message_command_get_service (const MbimMessage *self); -const MbimUuid *mbim_message_command_get_service_id (const MbimMessage *self); -guint32 mbim_message_command_get_cid (const MbimMessage *self); -MbimMessageCommandType mbim_message_command_get_command_type (const MbimMessage *self); -const guint8 *mbim_message_command_get_raw_information_buffer (const MbimMessage *self, - guint32 *out_length); +/** + * mbim_message_command_new: + * @transaction_id: transaction ID. + * @service: a #MbimService. + * @cid: the command ID. + * @command_type: the command type. + * + * Create a new #MbimMessage of type %MBIM_MESSAGE_TYPE_COMMAND with the + * specified parameters and an empty information buffer. + * + * Returns: (transfer full): a newly created #MbimMessage. The returned value + * should be freed with mbim_message_unref(). + * + * Since: 1.0 + */ +MbimMessage *mbim_message_command_new (guint32 transaction_id, + MbimService service, + guint32 cid, + MbimMessageCommandType command_type); + +/** + * mbim_message_command_append: + * @self: a #MbimMessage. + * @buffer: raw buffer to append to the message. + * @buffer_size: length of the data in @buffer. + * + * Appends the contents of @buffer to @self. + * + * Since: 1.0 + */ +void mbim_message_command_append (MbimMessage *self, + const guint8 *buffer, + guint32 buffer_size); + +/** + * mbim_message_command_get_service: + * @self: a #MbimMessage. + * + * Get the service of a %MBIM_MESSAGE_TYPE_COMMAND message. + * + * Returns: a #MbimService. + * + * Since: 1.0 + */ +MbimService mbim_message_command_get_service (const MbimMessage *self); + +/** + * mbim_message_command_get_service_id: + * @self: a #MbimMessage. + * + * Get the service UUID of a %MBIM_MESSAGE_TYPE_COMMAND message. + * + * Returns: a #MbimUuid. + * + * Since: 1.0 + */ +const MbimUuid *mbim_message_command_get_service_id (const MbimMessage *self); + +/** + * mbim_message_command_get_cid: + * @self: a #MbimMessage. + * + * Get the command id of a %MBIM_MESSAGE_TYPE_COMMAND message. + * + * Returns: a CID. + * + * Since: 1.0 + */ +guint32 mbim_message_command_get_cid (const MbimMessage *self); + +/** + * mbim_message_command_get_command_type: + * @self: a #MbimMessage. + * + * Get the command type of a %MBIM_MESSAGE_TYPE_COMMAND message. + * + * Returns: a #MbimMessageCommandType. + * + * Since: 1.0 + */ +MbimMessageCommandType mbim_message_command_get_command_type (const MbimMessage *self); + +/** + * mbim_message_command_get_raw_information_buffer: + * @self: a #MbimMessage. + * @out_length: (out): return location for the size of the output buffer. + * + * Gets the information buffer of the %MBIM_MESSAGE_TYPE_COMMAND message. + * + * Returns: (transfer none): The raw data buffer, or #NULL if empty. + * + * Since: 1.0 + */ +const guint8 *mbim_message_command_get_raw_information_buffer (const MbimMessage *self, + guint32 *out_length); /*****************************************************************************/ /* 'Command Done' message interface */ -MbimService mbim_message_command_done_get_service (const MbimMessage *self); -const MbimUuid *mbim_message_command_done_get_service_id (const MbimMessage *self); -guint32 mbim_message_command_done_get_cid (const MbimMessage *self); -MbimStatusError mbim_message_command_done_get_status_code (const MbimMessage *self); -gboolean mbim_message_command_done_get_result (const MbimMessage *self, - GError **error); -const guint8 *mbim_message_command_done_get_raw_information_buffer (const MbimMessage *self, - guint32 *out_length); +/** + * mbim_message_command_done_get_service: + * @self: a #MbimMessage. + * + * Get the service of a %MBIM_MESSAGE_TYPE_COMMAND_DONE message. + * + * Returns: a #MbimService. + * + * Since: 1.0 + */ +MbimService mbim_message_command_done_get_service (const MbimMessage *self); + +/** + * mbim_message_command_done_get_service_id: + * @self: a #MbimMessage. + * + * Get the service UUID of a %MBIM_MESSAGE_TYPE_COMMAND_DONE message. + * + * Returns: a #MbimUuid. + * + * Since: 1.0 + */ +const MbimUuid *mbim_message_command_done_get_service_id (const MbimMessage *self); + +/** + * mbim_message_command_done_get_cid: + * @self: a #MbimMessage. + * + * Get the command id of a %MBIM_MESSAGE_TYPE_COMMAND_DONE message. + * + * Returns: a CID. + * + * Since: 1.0 + */ +guint32 mbim_message_command_done_get_cid (const MbimMessage *self); + +/** + * mbim_message_command_done_get_status_code: + * @self: a #MbimMessage. + * + * Get status code from the %MBIM_MESSAGE_TYPE_COMMAND_DONE message. + * + * Returns: a #MbimStatusError. + * + * Since: 1.0 + */ +MbimStatusError mbim_message_command_done_get_status_code (const MbimMessage *self); + +/** + * mbim_message_command_done_get_result: + * @self: a #MbimMessage. + * @error: return location for error or %NULL. + * + * Gets the result of the 'Command' operation in the %MBIM_MESSAGE_TYPE_COMMAND_DONE message. + * + * Returns: %TRUE if the operation succeeded, %FALSE if @error is set. + * + * Since: 1.0 + */ +gboolean mbim_message_command_done_get_result (const MbimMessage *self, + GError **error); + +/** + * mbim_message_command_done_get_raw_information_buffer: + * @self: a #MbimMessage. + * @out_length: (out): return location for the size of the output buffer. + * + * Gets the information buffer of the %MBIM_MESSAGE_TYPE_COMMAND_DONE message. + * + * Returns: (transfer none): The raw data buffer, or #NULL if empty. + * + * Since: 1.0 + */ +const guint8 *mbim_message_command_done_get_raw_information_buffer (const MbimMessage *self, + guint32 *out_length); /*****************************************************************************/ /* 'Indicate Status' message interface */ -MbimService mbim_message_indicate_status_get_service (const MbimMessage *self); -const MbimUuid *mbim_message_indicate_status_get_service_id (const MbimMessage *self); -guint32 mbim_message_indicate_status_get_cid (const MbimMessage *self); -const guint8 *mbim_message_indicate_status_get_raw_information_buffer (const MbimMessage *self, - guint32 *out_length); +/** + * mbim_message_indicate_status_get_service: + * @self: a #MbimMessage. + * + * Get the service of a %MBIM_MESSAGE_TYPE_INDICATE_STATUS message. + * + * Returns: a #MbimService. + * + * Since: 1.0 + */ +MbimService mbim_message_indicate_status_get_service (const MbimMessage *self); + +/** + * mbim_message_indicate_status_get_service_id: + * @self: a #MbimMessage. + * + * Get the service UUID of a %MBIM_MESSAGE_TYPE_INDICATE_STATUS message. + * + * Returns: a #MbimUuid. + * + * Since: 1.0 + */ +const MbimUuid *mbim_message_indicate_status_get_service_id (const MbimMessage *self); + +/** + * mbim_message_indicate_status_get_cid: + * @self: a #MbimMessage. + * + * Get the command id of a %MBIM_MESSAGE_TYPE_INDICATE_STATUS message. + * + * Returns: a CID. + * + * Since: 1.0 + */ +guint32 mbim_message_indicate_status_get_cid (const MbimMessage *self); + +/** + * mbim_message_indicate_status_get_raw_information_buffer: + * @self: a #MbimMessage. + * @out_length: (out): return location for the size of the output buffer. + * + * Gets the information buffer of the %MBIM_MESSAGE_TYPE_INDICATE_STATUS message. + * + * Returns: (transfer none): The raw data buffer, or #NULL if empty. + * + * Since: 1.0 + */ +const guint8 *mbim_message_indicate_status_get_raw_information_buffer (const MbimMessage *self, + guint32 *out_length); /*****************************************************************************/ /* Other helpers */ +/** + * mbim_message_response_get_result: + * @self: a #MbimMessage response message. + * @expected: expected #MbimMessageType if there isn't any error in the operation. + * @error: return location for error or %NULL. + * + * Gets the result of the operation from the response message, which + * can be either a %MBIM_MESSAGE_TYPE_FUNCTION_ERROR message or a message of the + * specified @expected type. + * + * Returns: %TRUE if the operation succeeded, %FALSE if @error is set. + * + * Since: 1.12 + */ gboolean mbim_message_response_get_result (const MbimMessage *self, MbimMessageType expected, GError **error); diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-proxy.c libmbim-1.24.8/src/libmbim-glib/mbim-proxy.c --- libmbim-1.22.0/src/libmbim-glib/mbim-proxy.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-proxy.c 2021-06-02 19:05:37.000000000 +0800 @@ -74,14 +74,6 @@ /*****************************************************************************/ -/** - * mbim_proxy_get_n_clients: - * @self: a #MbimProxy. - * - * Get the number of clients currently connected to the proxy. - * - * Returns: a #guint. - */ guint mbim_proxy_get_n_clients (MbimProxy *self) { @@ -90,14 +82,6 @@ return g_list_length (self->priv->clients); } -/** - * mbim_proxy_get_n_devices: - * @self: a #MbimProxy. - * - * Get the number of devices currently connected to the proxy. - * - * Returns: a #guint. - */ guint mbim_proxy_get_n_devices (MbimProxy *self) { @@ -744,12 +728,12 @@ Client *client, MbimMessage *message) { - Request *request; - MbimDevice *device; - gchar *incoming_path; - gchar *path; - GFile *file; - GError *error = NULL; + Request *request; + MbimDevice *device; + g_autofree gchar *incoming_path = NULL; + g_autofree gchar *path = NULL; + g_autoptr(GFile) file = NULL; + g_autoptr(GError) error = NULL; /* create request holder */ request = request_new (self, client, message); @@ -771,7 +755,6 @@ /* Retrieve path from request */ if (!_mbim_message_read_string (message, 0, 0, &incoming_path, &error)) { g_warning ("Error reading device path from message: %s", error->message); - g_error_free (error); request->response = build_proxy_control_command_done (message, MBIM_STATUS_ERROR_INVALID_PARAMETERS); request_complete_and_free (request); return TRUE; @@ -783,13 +766,10 @@ path = __mbim_utils_get_devpath (incoming_path, &error); if (!path) { g_warning ("Error looking up real device path: %s", error->message); - g_error_free (error); request->response = build_proxy_control_command_done (message, MBIM_STATUS_ERROR_INVALID_PARAMETERS); request_complete_and_free (request); - g_free (incoming_path); return TRUE; } - g_free (incoming_path); /* Only allow subsequent requests with the same path */ if (client->device) { @@ -798,14 +778,12 @@ else request->response = build_proxy_control_command_done (message, MBIM_STATUS_ERROR_FAILURE); request_complete_and_free (request); - g_free (path); return TRUE; } /* Read requested timeout value */ if (!_mbim_message_read_guint32 (message, 8, &request->timeout_secs, &error)) { g_warning ("Error reading requested timeout from message: %s", error->message); - g_error_free (error); request->response = build_proxy_control_command_done (message, MBIM_STATUS_ERROR_INVALID_PARAMETERS); request_complete_and_free (request); return TRUE; @@ -816,13 +794,11 @@ if (device) { /* Keep reference and continue */ client_set_device (client, device); - internal_device_open (self, device, request->timeout_secs, (GAsyncReadyCallback)proxy_config_internal_device_open_ready, request); - g_free (path); return TRUE; } @@ -835,8 +811,6 @@ NULL, (GAsyncReadyCallback)device_new_ready, request); - g_object_unref (file); - g_free (path); return TRUE; } @@ -847,14 +821,13 @@ track_service_subscribe_list (Client *client, MbimMessage *message) { - GError *error = NULL; - MbimEventEntry **mbim_event_entry_array; - gsize mbim_event_entry_array_size; + g_autoptr(GError) error = NULL; + g_autoptr(MbimEventEntryArray) mbim_event_entry_array = NULL; + gsize mbim_event_entry_array_size; mbim_event_entry_array = _mbim_proxy_helper_service_subscribe_request_parse (message, &mbim_event_entry_array_size, &error); if (error) { g_warning ("Invalid subscribe request message: %s", error->message); - g_error_free (error); return; } @@ -862,7 +835,7 @@ * events it's subscribed to, so we can safely recreate the whole array each * time. */ g_clear_pointer (&client->mbim_event_entry_array, mbim_event_entry_array_free); - client->mbim_event_entry_array = mbim_event_entry_array; + client->mbim_event_entry_array = g_steal_pointer (&mbim_event_entry_array); client->mbim_event_entry_array_size = mbim_event_entry_array_size; if (mbim_utils_get_traces_enabled ()) { @@ -877,8 +850,8 @@ MbimStatusError status) { struct command_done_message *command_done; - guint32 raw_len; - const guint8 *raw_data; + guint32 raw_len; + const guint8 *raw_data; /* The raw message data to send back as response to client */ raw_data = mbim_message_command_get_raw_information_buffer (request->message, &raw_len); @@ -904,9 +877,9 @@ GAsyncResult *res, Request *request) { - MbimMessage *tmp_response; - MbimStatusError error_status_code; - GError *error = NULL; + g_autoptr(MbimMessage) tmp_response = NULL; + g_autoptr(GError) error = NULL; + MbimStatusError error_status_code; tmp_response = mbim_device_command_finish (device, res, &error); if (!tmp_response) { @@ -917,16 +890,13 @@ return; } - g_debug ("sending request to device failed: %s", error->message); - g_error_free (error); /* Don't disconnect client, just let the request timeout in its side */ + g_debug ("sending request to device failed: %s", error->message); request_complete_and_free (request); return; } error_status_code = GUINT32_FROM_LE (((struct full_message *)(tmp_response->data))->message.command_done.status_code); - mbim_message_unref (tmp_response); - device_service_subscribe_list_set_complete (request, error_status_code); } @@ -935,9 +905,10 @@ Client *client, MbimMessage *message) { - MbimEventEntry **updated; - gsize updated_size = 0; - Request *request; + MbimEventEntry **updated; + gsize updated_size = 0; + Request *request; + g_autoptr(MbimMessage) request_message = NULL; /* create request holder */ request = request_new (self, client, message); @@ -952,18 +923,16 @@ return TRUE; } - /* the 'updated' array was given to us as transfer-none */ - message = mbim_message_device_service_subscribe_list_set_new (updated_size, (const MbimEventEntry *const *)updated, NULL); - mbim_message_set_transaction_id (message, mbim_device_get_next_transaction_id (client->device)); + /* the 'updated' array was given to us as transfer-none!!!! */ + request_message = mbim_message_device_service_subscribe_list_set_new (updated_size, (const MbimEventEntry *const *)updated, NULL); + mbim_message_set_transaction_id (request_message, mbim_device_get_next_transaction_id (client->device)); mbim_device_command (client->device, - message, + request_message, 300, NULL, (GAsyncReadyCallback)device_service_subscribe_list_set_ready, request); - - mbim_message_unref (message); return TRUE; } @@ -971,11 +940,11 @@ /* Standard command */ static void -device_command_ready (MbimDevice *device, +device_command_ready (MbimDevice *device, GAsyncResult *res, - Request *request) + Request *request) { - GError *error = NULL; + g_autoptr(GError) error = NULL; request->response = mbim_device_command_finish (device, res, &error); if (!request->response) { @@ -986,16 +955,14 @@ return; } - g_debug ("sending request to device failed: %s", error->message); - g_error_free (error); /* Don't disconnect client, just let the request timeout in its side */ + g_debug ("sending request to device failed: %s", error->message); request_complete_and_free (request); return; } /* replace reponse transaction id with the requested transaction id */ mbim_message_set_transaction_id (request->response, request->original_transaction_id); - request_complete_and_free (request); } @@ -1009,8 +976,12 @@ /* create request holder */ request = request_new (self, client, message); - /* replace command transaction id with internal proxy transaction id to avoid collision */ - mbim_message_set_transaction_id (message, mbim_device_get_next_transaction_id (client->device)); + if (_mbim_message_fragment_get_current (message) == _mbim_message_fragment_get_total (message) - 1) + /* replace command transaction id with internal proxy transaction id to avoid collision */ + mbim_message_set_transaction_id (message, mbim_device_get_next_transaction_id (client->device)); + else + /* avoid incrementing transaction until the last fragment is processed */ + mbim_message_set_transaction_id (message, mbim_device_get_transaction_id (client->device)); /* The timeout needs to be big enough for any kind of transaction to * complete, otherwise the remote clients will lose the reply if they @@ -1070,8 +1041,8 @@ Client *client) { do { - MbimMessage *message; - guint32 len = 0; + g_autoptr(MbimMessage) message = NULL; + guint32 len = 0; if (client->buffer->len >= sizeof (struct header) && (len = GUINT32_FROM_LE (((struct header *)client->buffer->data)->length)) > client->buffer->len) { @@ -1085,11 +1056,9 @@ message = mbim_message_new (client->buffer->data, len); if (!message) return; - g_byte_array_remove_range (client->buffer, 0, len); - /* Play with the received message */ + g_byte_array_remove_range (client->buffer, 0, len); process_message (self, client, message); - mbim_message_unref (message); } while (client->buffer->len > 0); } @@ -1098,10 +1067,10 @@ GIOCondition condition, Client *client) { - MbimProxy *self; - guint8 buffer[BUFFER_SIZE]; - GError *error = NULL; - gssize r; + MbimProxy *self; + guint8 buffer[BUFFER_SIZE]; + g_autoptr(GError) error = NULL; + gssize r; /* Recover proxy pointer soon */ self = client->self; @@ -1121,8 +1090,6 @@ &error); if (r < 0) { g_warning ("Error reading from istream: %s", error ? error->message : "unknown"); - if (error) - g_error_free (error); /* Close the device */ untrack_client (self, client); return FALSE; @@ -1143,36 +1110,32 @@ } static void -incoming_cb (GSocketService *service, +incoming_cb (GSocketService *service, GSocketConnection *connection, - GObject *unused, - MbimProxy *self) + GObject *unused, + MbimProxy *self) { - Client *client; - GCredentials *credentials; - GError *error = NULL; - uid_t uid; + Client *client; + g_autoptr(GCredentials) credentials = NULL; + g_autoptr(GError) error = NULL; + uid_t uid; g_debug ("Client (%d) connection open...", g_socket_get_fd (g_socket_connection_get_socket (connection))); credentials = g_socket_get_credentials (g_socket_connection_get_socket (connection), &error); if (!credentials) { g_warning ("Client not allowed: Error getting socket credentials: %s", error->message); - g_error_free (error); return; } uid = g_credentials_get_unix_user (credentials, &error); - g_object_unref (credentials); if (error) { g_warning ("Client not allowed: Error getting unix user id: %s", error->message); - g_error_free (error); return; } if (!__mbim_user_allowed (uid, &error)) { g_warning ("Client not allowed: %s", error->message); - g_error_free (error); return; } @@ -1201,11 +1164,11 @@ } static gboolean -setup_socket_service (MbimProxy *self, - GError **error) +setup_socket_service (MbimProxy *self, + GError **error) { - GSocketAddress *socket_address; - GSocket *socket; + g_autoptr(GSocketAddress) socket_address = NULL; + g_autoptr(GSocket) socket = NULL; socket = g_socket_new (G_SOCKET_FAMILY_UNIX, G_SOCKET_TYPE_STREAM, @@ -1219,20 +1182,14 @@ MBIM_PROXY_SOCKET_PATH, -1, G_UNIX_SOCKET_ADDRESS_ABSTRACT)); - if (!g_socket_bind (socket, socket_address, TRUE, error)) { - g_object_unref (socket_address); - g_object_unref (socket); + if (!g_socket_bind (socket, socket_address, TRUE, error)) return FALSE; - } - g_object_unref (socket_address); g_debug ("creating UNIX socket service..."); /* Listen */ - if (!g_socket_listen (socket, error)) { - g_object_unref (socket); + if (!g_socket_listen (socket, error)) return FALSE; - } /* Create socket service */ self->priv->socket_service = g_socket_service_new (); @@ -1242,13 +1199,11 @@ NULL, /* don't pass an object, will take a reference */ error)) { g_prefix_error (error, "Error adding socket at '%s' to socket service: ", MBIM_PROXY_SOCKET_PATH); - g_object_unref (socket); return FALSE; } g_debug ("starting UNIX socket service at '%s'...", MBIM_PROXY_SOCKET_PATH); g_socket_service_start (self->priv->socket_service); - g_object_unref (socket); return TRUE; } @@ -1298,10 +1253,10 @@ MbimDevice *device, gsize *out_size) { - GList *l; - MbimEventEntry **updated; - gsize updated_size = 0; - DeviceContext *ctx; + GList *l; + g_autoptr(MbimEventEntryArray) updated = NULL; + gsize updated_size = 0; + DeviceContext *ctx; ctx = device_context_get (device); g_assert (ctx); @@ -1331,22 +1286,22 @@ (const MbimEventEntry *const *)updated, updated_size, (const MbimEventEntry *const *)ctx->mbim_event_entry_array, ctx->mbim_event_entry_array_size)) { g_debug ("Merged service subscribe list not updated for device '%s'", mbim_device_get_path (device)); - mbim_event_entry_array_free (updated); return NULL; } /* Lists are different, update stored one */ g_clear_pointer (&ctx->mbim_event_entry_array, mbim_event_entry_array_free); - ctx->mbim_event_entry_array = updated; + ctx->mbim_event_entry_array = g_steal_pointer (&updated); ctx->mbim_event_entry_array_size = updated_size; if (mbim_utils_get_traces_enabled ()) { g_debug ("Merged service subscribe list built for device '%s'", mbim_device_get_path (device)); - _mbim_proxy_helper_service_subscribe_list_debug ((const MbimEventEntry * const *)updated, updated_size); + _mbim_proxy_helper_service_subscribe_list_debug ((const MbimEventEntry * const *)ctx->mbim_event_entry_array, + ctx->mbim_event_entry_array_size); } - *out_size = updated_size; - return updated; + *out_size = ctx->mbim_event_entry_array_size; + return ctx->mbim_event_entry_array; } static void @@ -1407,7 +1362,7 @@ static void proxy_device_removed_cb (MbimDevice *device, - MbimProxy *self) + MbimProxy *self) { untrack_device (self, device); } @@ -1418,10 +1373,7 @@ { GList *l; GList *to_remove = NULL; - DeviceContext *ctx; - ctx = device_context_get (device); - g_assert (ctx); if (!g_list_find (self->priv->devices, device)) return; @@ -1473,31 +1425,28 @@ MbimProxy * mbim_proxy_new (GError **error) { - MbimProxy *self; + g_autoptr(MbimProxy) self = NULL; - if (!__mbim_user_allowed (getuid(), error)) { + if (!__mbim_user_allowed (getuid(), error)) return NULL; - } self = g_object_new (MBIM_TYPE_PROXY, NULL); if (!setup_socket_service (self, error)) - g_clear_object (&self); - return self; + return NULL; + + return g_steal_pointer (&self); } static void mbim_proxy_init (MbimProxy *self) { - /* Setup private data */ - self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, - MBIM_TYPE_PROXY, - MbimProxyPrivate); + self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, MBIM_TYPE_PROXY, MbimProxyPrivate); } static void -get_property (GObject *object, - guint prop_id, - GValue *value, +get_property (GObject *object, + guint prop_id, + GValue *value, GParamSpec *pspec) { MbimProxy *self = MBIM_PROXY (object); @@ -1555,7 +1504,11 @@ object_class->get_property = get_property; object_class->dispose = dispose; - /* Properties */ + /** + * MbimProxy:mbim-proxy-n-clients + * + * Since: 1.10 + */ properties[PROP_N_CLIENTS] = g_param_spec_uint (MBIM_PROXY_N_CLIENTS, "Number of clients", @@ -1566,6 +1519,11 @@ G_PARAM_READABLE); g_object_class_install_property (object_class, PROP_N_CLIENTS, properties[PROP_N_CLIENTS]); + /** + * MbimProxy:mbim-proxy-n-devices + * + * Since: 1.10 + */ properties[PROP_N_DEVICES] = g_param_spec_uint (MBIM_PROXY_N_DEVICES, "Number of devices", diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-proxy.h libmbim-1.24.8/src/libmbim-glib/mbim-proxy.h --- libmbim-1.22.0/src/libmbim-glib/mbim-proxy.h 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-proxy.h 2020-07-10 16:12:29.000000000 +0800 @@ -24,9 +24,29 @@ #ifndef MBIM_PROXY_H #define MBIM_PROXY_H +#if !defined (__LIBMBIM_GLIB_H_INSIDE__) && !defined (LIBMBIM_GLIB_COMPILATION) +#error "Only can be included directly." +#endif + #include #include +G_BEGIN_DECLS + +/** + * SECTION:mbim-proxy + * @title: MbimProxy + * @short_description: MBIM proxy handling routines + * + * The #MbimProxy will setup an abstract socket listening on a predefined + * address, and will take care of synchronizing the access to a set of shared + * MBIM ports. + * + * Multiple #MbimDevice objects may be connected to the #MbimProxy at any given + * time. The #MbimProxy acts as a stateful proxy (all remote #MbimDevice objects + * will need to share the same message sequence). + */ + #define MBIM_TYPE_PROXY (mbim_proxy_get_type ()) #define MBIM_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MBIM_TYPE_PROXY, MbimProxy)) #define MBIM_PROXY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MBIM_TYPE_PROXY, MbimProxyClass)) @@ -38,11 +58,41 @@ typedef struct _MbimProxyClass MbimProxyClass; typedef struct _MbimProxyPrivate MbimProxyPrivate; +/** + * MBIM_PROXY_SOCKET_PATH: + * + * Symbol defining the default abstract socket name where the #MbimProxy will listen. + * + * Since: 1.10 + */ #define MBIM_PROXY_SOCKET_PATH "mbim-proxy" -#define MBIM_PROXY_N_CLIENTS "mbim-proxy-n-clients" -#define MBIM_PROXY_N_DEVICES "mbim-proxy-n-devices" - +/** + * MBIM_PROXY_N_CLIENTS: + * + * Symbol defining the #MbimProxy:mbim-proxy-n-clients property. + * + * Since: 1.10 + */ +#define MBIM_PROXY_N_CLIENTS "mbim-proxy-n-clients" + +/** + * MBIM_PROXY_N_DEVICES: + * + * Symbol defining the #MbimProxy:mbim-proxy-n-devices property. + * + * Since: 1.10 + */ +#define MBIM_PROXY_N_DEVICES "mbim-proxy-n-devices" + +/** + * MbimProxy: + * + * The #MbimProxy structure contains private data and should only be accessed + * using the provided API. + * + * Since: 1.10 + */ struct _MbimProxy { GObject parent; MbimProxyPrivate *priv; @@ -53,9 +103,44 @@ }; GType mbim_proxy_get_type (void); +G_DEFINE_AUTOPTR_CLEANUP_FUNC (MbimProxy, g_object_unref) + +/** + * mbim_proxy_new: + * @error: Return location for error or %NULL. + * + * Creates a #MbimProxy object. + * + * Returns: (transfer full): a newly created #MbimProxy, or #NULL if @error is set. + * + * Since: 1.10 + */ +MbimProxy *mbim_proxy_new (GError **error); + +/** + * mbim_proxy_get_n_clients: (skip) + * @self: a #MbimProxy. + * + * Get the number of clients currently connected to the proxy. + * + * Returns: a #guint. + * + * Since: 1.10 + */ +guint mbim_proxy_get_n_clients (MbimProxy *self); + +/** + * mbim_proxy_get_n_devices: (skip) + * @self: a #MbimProxy. + * + * Get the number of devices currently connected to the proxy. + * + * Returns: a #guint. + * + * Since: 1.10 + */ +guint mbim_proxy_get_n_devices (MbimProxy *self); -MbimProxy *mbim_proxy_new (GError **error); -guint mbim_proxy_get_n_clients (MbimProxy *self); -guint mbim_proxy_get_n_devices (MbimProxy *self); +G_END_DECLS #endif /* MBIM_PROXY_H */ diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-utils.c libmbim-1.24.8/src/libmbim-glib/mbim-utils.c --- libmbim-1.22.0/src/libmbim-glib/mbim-utils.c 2019-11-06 19:05:34.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-utils.c 2021-06-02 19:05:37.000000000 +0800 @@ -123,25 +123,12 @@ static volatile gint __traces_enabled = FALSE; -/** - * mbim_utils_get_traces_enabled: - * - * Checks whether MBIM message traces are currently enabled. - * - * Returns: %TRUE if traces are enabled, %FALSE otherwise. - */ gboolean mbim_utils_get_traces_enabled (void) { return (gboolean) g_atomic_int_get (&__traces_enabled); } -/** - * mbim_utils_set_traces_enabled: - * @enabled: %TRUE to enable traces, %FALSE to disable them. - * - * Sets whether MBIM message traces are enabled or disabled. - */ void mbim_utils_set_traces_enabled (gboolean enabled) { diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-utils.h libmbim-1.24.8/src/libmbim-glib/mbim-utils.h --- libmbim-1.22.0/src/libmbim-glib/mbim-utils.h 2019-11-06 19:05:34.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-utils.h 2021-06-02 19:05:37.000000000 +0800 @@ -33,8 +33,27 @@ G_BEGIN_DECLS /* Enabling/Disabling traces */ + +/** + * mbim_utils_get_traces_enabled: + * + * Checks whether MBIM message traces are currently enabled. + * + * Returns: %TRUE if traces are enabled, %FALSE otherwise. + * + * Since: 1.0 + */ gboolean mbim_utils_get_traces_enabled (void); -void mbim_utils_set_traces_enabled (gboolean enabled); + +/** + * mbim_utils_set_traces_enabled: + * @enabled: %TRUE to enable traces, %FALSE to disable them. + * + * Sets whether MBIM message traces are enabled or disabled. + * + * Since: 1.0 + */ +void mbim_utils_set_traces_enabled (gboolean enabled); /* Other private methods */ diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-uuid.c libmbim-1.24.8/src/libmbim-glib/mbim-uuid.c --- libmbim-1.22.0/src/libmbim-glib/mbim-uuid.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-uuid.c 2021-06-02 19:05:37.000000000 +0800 @@ -30,25 +30,8 @@ #include "mbim-uuid.h" #include "generated/mbim-enum-types.h" -/** - * SECTION: mbim-uuid - * @title: UUIDs - * @short_description: Generic UUID handling routines. - * - * This section defines the data type for unique identifiers. - */ - /*****************************************************************************/ -/** - * mbim_uuid_cmp: - * @a: a #MbimUuid. - * @b: a #MbimUuid. - * - * Compare two %MbimUuid values. - * - * Returns: %TRUE if @a and @b are equal, %FALSE otherwise. - */ gboolean mbim_uuid_cmp (const MbimUuid *a, const MbimUuid *b) @@ -56,14 +39,6 @@ return (memcmp (a, b, sizeof (*a)) == 0); } -/** - * mbim_uuid_get_printable: - * @uuid: a #MbimUuid. - * - * Get a string with the UUID. - * - * Returns: (transfer full): a newly allocated string, which should be freed with g_free(). - */ gchar * mbim_uuid_get_printable (const MbimUuid *uuid) @@ -81,18 +56,6 @@ uuid->e[0], uuid->e[1], uuid->e[2], uuid->e[3], uuid->e[4], uuid->e[5])); } -/** - * mbim_uuid_from_printable: - * @str: a MBIM UUID. - * @uuid: pointer to the target #MbimUuid. - * - * Fills in @uuid from the printable representation give in @str. - * - * Only ccepts @str written with dashes separating items, e.g.: - * a289cc33-bcbb-8b4f-b6b0-133ec2aae6df - * - * Returns: %TRUE if @uuid was correctly set, %FALSE otherwise. - */ gboolean mbim_uuid_from_printable (const gchar *str, MbimUuid *uuid) @@ -268,15 +231,6 @@ gchar *nickname; } MbimCustomService; -/** - * mbim_register_custom_service: - * @uuid: MbimUuid structure corresponding to service - * @nickname: a printable name for service - * - * Register a custom service - * - * Returns: TRUE if service has been registered, FALSE otherwise. - */ guint mbim_register_custom_service (const MbimUuid *uuid, const gchar *nickname) @@ -303,14 +257,6 @@ return s->service_id; } -/** - * mbim_unregister_custom_service: - * @id: ID of the service to unregister.MbimUuid structure corresponding to service - * - * Unregister a custom service. - * - * Returns: TRUE if service has been unregistered, FALSE otherwise. - */ gboolean mbim_unregister_custom_service (const guint id) { @@ -331,14 +277,6 @@ return FALSE; } -/** - * mbim_service_id_is_custom: - * @id: ID of the service - * - * Checks whether @id is a custom or standard service. - * - * Returns: TRUE if service is custom, FALSE otherwise. - */ gboolean mbim_service_id_is_custom (const guint id) { @@ -355,17 +293,6 @@ return FALSE; } -/** - * mbim_service_lookup_name: - * @service: a MbimService or custom service. - * - * Gets the nickname string for the @service. - * - * As opposed to mbim_service_get_string(), this methods takes into account - * custom services that may have been registered by the user. - * - * Returns: (transfer none): a string with the nickname, or %NULL if not found. Do not free the returned value. - */ const gchar * mbim_service_lookup_name (guint service) { @@ -381,17 +308,6 @@ return NULL; } -/** - * mbim_uuid_from_service: - * @service: a #MbimService. - * - * Get the UUID corresponding to @service. - * - * The @service needs to be either a generic one (including #MBIM_SERVICE_INVALID) - * or a custom registered one. - * - * Returns: (transfer none): a #MbimUuid. - */ const MbimUuid * mbim_uuid_from_service (MbimService service) { @@ -441,14 +357,6 @@ } } -/** - * mbim_uuid_to_service: - * @uuid: a #MbimUuid. - * - * Get the service corresponding to @uuid. - * - * Returns: a #MbimService. - */ MbimService mbim_uuid_to_service (const MbimUuid *uuid) { @@ -578,15 +486,6 @@ .e = { 0x03, 0x3C, 0x39, 0xF6, 0x0D, 0xB9 } }; - -/** - * mbim_uuid_from_context_type: - * @context_type: a #MbimContextType. - * - * Get the UUID corresponding to @context_type. - * - * Returns: (transfer none): a #MbimUuid. - */ const MbimUuid * mbim_uuid_from_context_type (MbimContextType context_type) { @@ -618,14 +517,6 @@ } } -/** - * mbim_uuid_to_context_type: - * @uuid: a #MbimUuid. - * - * Get the context type corresponding to @uuid. - * - * Returns: a #MbimContextType. - */ MbimContextType mbim_uuid_to_context_type (const MbimUuid *uuid) { diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-uuid.h libmbim-1.24.8/src/libmbim-glib/mbim-uuid.h --- libmbim-1.22.0/src/libmbim-glib/mbim-uuid.h 2019-11-19 18:45:28.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-uuid.h 2021-06-02 19:05:37.000000000 +0800 @@ -32,12 +32,22 @@ G_BEGIN_DECLS +/** + * SECTION: mbim-uuid + * @title: UUIDs + * @short_description: Generic UUID handling routines. + * + * This section defines the data type for unique identifiers. + */ + /*****************************************************************************/ /** * MbimUuid: * * A UUID as defined in MBIM. + * + * Since: 1.0 */ typedef struct _MbimUuid MbimUuid; #define MBIM_PACKED __attribute__((__packed__)) @@ -50,11 +60,48 @@ }; #undef MBIM_PACKED -gboolean mbim_uuid_cmp (const MbimUuid *a, - const MbimUuid *b); -gchar *mbim_uuid_get_printable (const MbimUuid *uuid); -gboolean mbim_uuid_from_printable (const gchar *str, - MbimUuid *uuid); +/** + * mbim_uuid_cmp: + * @a: a #MbimUuid. + * @b: a #MbimUuid. + * + * Compare two %MbimUuid values. + * + * Returns: %TRUE if @a and @b are equal, %FALSE otherwise. + * + * Since: 1.0 + */ +gboolean mbim_uuid_cmp (const MbimUuid *a, + const MbimUuid *b); + +/** + * mbim_uuid_get_printable: + * @uuid: a #MbimUuid. + * + * Get a string with the UUID. + * + * Returns: (transfer full): a newly allocated string, which should be freed with g_free(). + * + * Since: 1.0 + */ +gchar *mbim_uuid_get_printable (const MbimUuid *uuid); + +/** + * mbim_uuid_from_printable: + * @str: a MBIM UUID. + * @uuid: pointer to the target #MbimUuid. + * + * Fills in @uuid from the printable representation give in @str. + * + * Only ccepts @str written with dashes separating items, e.g.: + * a289cc33-bcbb-8b4f-b6b0-133ec2aae6df + * + * Returns: %TRUE if @uuid was correctly set, %FALSE otherwise. + * + * Since: 1.8 + */ +gboolean mbim_uuid_from_printable (const gchar *str, + MbimUuid *uuid); /*****************************************************************************/ @@ -68,18 +115,20 @@ * @MBIM_SERVICE_STK: SIM toolkit service. * @MBIM_SERVICE_AUTH: Authentication service. * @MBIM_SERVICE_DSS: Device Service Stream service. - * @MBIM_SERVICE_MS_FIRMWARE_ID: Microsoft Firmware ID service. - * @MBIM_SERVICE_MS_HOST_SHUTDOWN: Microsoft Host Shutdown service. - * @MBIM_SERVICE_PROXY_CONTROL: Proxy Control service. - * @MBIM_SERVICE_QMI: QMI-over-MBIM service. - * @MBIM_SERVICE_ATDS: ATT Device service. - * @MBIM_SERVICE_INTEL_FIRMWARE_UPDATE: Intel firmware update service. - * @MBIM_SERVICE_MS_BASIC_CONNECT_EXTENSIONS: Microsoft basic connectivity extensions service. + * @MBIM_SERVICE_MS_FIRMWARE_ID: Microsoft Firmware ID service. Since 1.8. + * @MBIM_SERVICE_MS_HOST_SHUTDOWN: Microsoft Host Shutdown service. Since 1.8. + * @MBIM_SERVICE_PROXY_CONTROL: Proxy Control service. Since 1.10. + * @MBIM_SERVICE_QMI: QMI-over-MBIM service. Since 1.14. + * @MBIM_SERVICE_ATDS: ATT Device service. Since 1.16. + * @MBIM_SERVICE_INTEL_FIRMWARE_UPDATE: Intel firmware update service. Since 1.16. + * @MBIM_SERVICE_MS_BASIC_CONNECT_EXTENSIONS: Microsoft basic connectivity extensions service. Since 1.18. * @MBIM_SERVICE_LAST: Internal value. * * Enumeration of the generic MBIM services. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_SERVICE_INVALID = 0, MBIM_SERVICE_BASIC_CONNECT = 1, MBIM_SERVICE_SMS = 2, @@ -106,6 +155,8 @@ * Get the UUID of the %MBIM_SERVICE_INVALID service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 */ #define MBIM_UUID_INVALID mbim_uuid_from_service (MBIM_SERVICE_INVALID) @@ -115,6 +166,8 @@ * Get the UUID of the %MBIM_SERVICE_BASIC_CONNECT service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 */ #define MBIM_UUID_BASIC_CONNECT mbim_uuid_from_service (MBIM_SERVICE_BASIC_CONNECT) @@ -124,6 +177,8 @@ * Get the UUID of the %MBIM_SERVICE_SMS service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 */ #define MBIM_UUID_SMS mbim_uuid_from_service (MBIM_SERVICE_SMS) @@ -133,6 +188,8 @@ * Get the UUID of the %MBIM_SERVICE_USSD service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 */ #define MBIM_UUID_USSD mbim_uuid_from_service (MBIM_SERVICE_USSD) @@ -142,6 +199,8 @@ * Get the UUID of the %MBIM_SERVICE_PHONEBOOK service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 */ #define MBIM_UUID_PHONEBOOK mbim_uuid_from_service (MBIM_SERVICE_PHONEBOOK) @@ -151,6 +210,8 @@ * Get the UUID of the %MBIM_SERVICE_STK service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 */ #define MBIM_UUID_STK mbim_uuid_from_service (MBIM_SERVICE_STK) @@ -160,6 +221,8 @@ * Get the UUID of the %MBIM_SERVICE_AUTH service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 */ #define MBIM_UUID_AUTH mbim_uuid_from_service (MBIM_SERVICE_AUTH) @@ -169,6 +232,8 @@ * Get the UUID of the %MBIM_SERVICE_DSS service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 */ #define MBIM_UUID_DSS mbim_uuid_from_service (MBIM_SERVICE_DSS) @@ -178,6 +243,8 @@ * Get the UUID of the %MBIM_SERVICE_MS_FIRMWARE_ID service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.8 */ #define MBIM_UUID_MS_FIRMWARE_ID mbim_uuid_from_service (MBIM_SERVICE_MS_FIRMWARE_ID) @@ -187,6 +254,8 @@ * Get the UUID of the %MBIM_SERVICE_MS_HOST_SHUTDOWN service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.8 */ #define MBIM_UUID_MS_HOST_SHUTDOWN mbim_uuid_from_service (MBIM_SERVICE_MS_HOST_SHUTDOWN) @@ -196,6 +265,8 @@ * Get the UUID of the %MBIM_SERVICE_PROXY_CONTROL service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.10 */ #define MBIM_UUID_PROXY_CONTROL mbim_uuid_from_service (MBIM_SERVICE_PROXY_CONTROL) @@ -205,6 +276,8 @@ * Get the UUID of the %MBIM_SERVICE_QMI service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.14 */ #define MBIM_UUID_QMI mbim_uuid_from_service (MBIM_SERVICE_QMI) @@ -214,6 +287,8 @@ * Get the UUID of the %MBIM_SERVICE_ATDS service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.16 */ #define MBIM_UUID_ATDS mbim_uuid_from_service (MBIM_SERVICE_ATDS) @@ -223,6 +298,8 @@ * Get the UUID of the %MBIM_SERVICE_INTEL_FIRMWARE_UPDATE service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.16 */ #define MBIM_UUID_INTEL_FIRMWARE_UPDATE mbim_uuid_from_service (MBIM_SERVICE_INTEL_FIRMWARE_UPDATE) @@ -232,21 +309,90 @@ * Get the UUID of the %MBIM_SERVICE_MS_BASIC_CONNECT_EXTENSIONS service. * * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.18 */ #define MBIM_UUID_MS_BASIC_CONNECT_EXTENSIONS mbim_uuid_from_service (MBIM_SERVICE_MS_BASIC_CONNECT_EXTENSIONS) +/** + * mbim_service_lookup_name: + * @service: a MbimService or custom service. + * + * Gets the nickname string for the @service. + * + * As opposed to mbim_service_get_string(), this methods takes into account + * custom services that may have been registered by the user. + * + * Returns: (transfer none): a string with the nickname, or %NULL if not found. Do not free the returned value. + * + * Since: 1.10 + */ const gchar *mbim_service_lookup_name (guint service); +/** + * mbim_register_custom_service: + * @uuid: MbimUuid structure corresponding to service + * @nickname: a printable name for service + * + * Register a custom service + * + * Returns: TRUE if service has been registered, FALSE otherwise. + * + * Since: 1.10 + */ guint mbim_register_custom_service (const MbimUuid *uuid, - const gchar *nickname); + const gchar *nickname); +/** + * mbim_unregister_custom_service: + * @id: ID of the service to unregister.MbimUuid structure corresponding to service + * + * Unregister a custom service. + * + * Returns: TRUE if service has been unregistered, FALSE otherwise. + * + * Since: 1.10 + */ gboolean mbim_unregister_custom_service (const guint id); +/** + * mbim_service_id_is_custom: + * @id: ID of the service + * + * Checks whether @id is a custom or standard service. + * + * Returns: TRUE if service is custom, FALSE otherwise. + * + * Since: 1.10 + */ gboolean mbim_service_id_is_custom (const guint id); -/* To/From service */ -const MbimUuid *mbim_uuid_from_service (MbimService service); -MbimService mbim_uuid_to_service (const MbimUuid *uuid); +/** + * mbim_uuid_from_service: + * @service: a #MbimService. + * + * Get the UUID corresponding to @service. + * + * The @service needs to be either a generic one (including #MBIM_SERVICE_INVALID) + * or a custom registered one. + * + * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 + */ +const MbimUuid *mbim_uuid_from_service (MbimService service); + +/** + * mbim_uuid_to_service: + * @uuid: a #MbimUuid. + * + * Get the service corresponding to @uuid. + * + * Returns: a #MbimService. + * + * Since: 1.0 + */ +MbimService mbim_uuid_to_service (const MbimUuid *uuid); /*****************************************************************************/ @@ -264,8 +410,10 @@ * @MBIM_CONTEXT_TYPE_LOCAL: A local. * * Enumeration of the generic MBIM context types. + * + * Since: 1.0 */ -typedef enum { +typedef enum { /*< since=1.0 >*/ MBIM_CONTEXT_TYPE_INVALID = 0, MBIM_CONTEXT_TYPE_NONE = 1, MBIM_CONTEXT_TYPE_INTERNET = 2, @@ -278,9 +426,29 @@ MBIM_CONTEXT_TYPE_LOCAL = 9, } MbimContextType; -/* To/From context type */ -const MbimUuid *mbim_uuid_from_context_type (MbimContextType context_type); -MbimContextType mbim_uuid_to_context_type (const MbimUuid *uuid); +/** + * mbim_uuid_from_context_type: + * @context_type: a #MbimContextType. + * + * Get the UUID corresponding to @context_type. + * + * Returns: (transfer none): a #MbimUuid. + * + * Since: 1.0 + */ +const MbimUuid *mbim_uuid_from_context_type (MbimContextType context_type); + +/** + * mbim_uuid_to_context_type: + * @uuid: a #MbimUuid. + * + * Get the context type corresponding to @uuid. + * + * Returns: a #MbimContextType. + * + * Since: 1.0 + */ +MbimContextType mbim_uuid_to_context_type (const MbimUuid *uuid); G_END_DECLS diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-version.h libmbim-1.24.8/src/libmbim-glib/mbim-version.h --- libmbim-1.22.0/src/libmbim-glib/mbim-version.h 2020-01-15 23:09:57.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-version.h 2021-06-02 22:06:12.000000000 +0800 @@ -34,6 +34,8 @@ * * Evaluates to the major version number of libmbim-glib which this source * is compiled against. + * + * Since: 1.2 */ #define MBIM_MAJOR_VERSION (1) @@ -42,16 +44,20 @@ * * Evaluates to the minor version number of libmbim-glib which this source * is compiled against. + * + * Since: 1.2 */ -#define MBIM_MINOR_VERSION (22) +#define MBIM_MINOR_VERSION (24) /** * MBIM_MICRO_VERSION: * * Evaluates to the micro version number of libmbim-glib which this source * compiled against. + * + * Since: 1.2 */ -#define MBIM_MICRO_VERSION (0) +#define MBIM_MICRO_VERSION (8) /** * MBIM_CHECK_VERSION: @@ -61,6 +67,8 @@ * * Returns: %TRUE if the version of the libmbim-glib header files * is the same as or newer than the passed-in version. + * + * Since: 1.2 */ #define MBIM_CHECK_VERSION(major,minor,micro) \ (MBIM_MAJOR_VERSION > (major) || \ diff -Nru libmbim-1.22.0/src/libmbim-glib/mbim-version.h.in libmbim-1.24.8/src/libmbim-glib/mbim-version.h.in --- libmbim-1.22.0/src/libmbim-glib/mbim-version.h.in 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/mbim-version.h.in 2020-07-10 16:12:29.000000000 +0800 @@ -34,6 +34,8 @@ * * Evaluates to the major version number of libmbim-glib which this source * is compiled against. + * + * Since: 1.2 */ #define MBIM_MAJOR_VERSION (@MBIM_MAJOR_VERSION@) @@ -42,6 +44,8 @@ * * Evaluates to the minor version number of libmbim-glib which this source * is compiled against. + * + * Since: 1.2 */ #define MBIM_MINOR_VERSION (@MBIM_MINOR_VERSION@) @@ -50,6 +54,8 @@ * * Evaluates to the micro version number of libmbim-glib which this source * compiled against. + * + * Since: 1.2 */ #define MBIM_MICRO_VERSION (@MBIM_MICRO_VERSION@) @@ -61,6 +67,8 @@ * * Returns: %TRUE if the version of the libmbim-glib header files * is the same as or newer than the passed-in version. + * + * Since: 1.2 */ #define MBIM_CHECK_VERSION(major,minor,micro) \ (MBIM_MAJOR_VERSION > (major) || \ diff -Nru libmbim-1.22.0/src/libmbim-glib/test/Makefile.in libmbim-1.24.8/src/libmbim-glib/test/Makefile.in --- libmbim-1.22.0/src/libmbim-glib/test/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/test/Makefile.in 2021-06-02 22:06:04.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -95,9 +95,10 @@ subdir = src/libmbim-glib/test ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -219,7 +220,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -233,7 +233,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -250,6 +249,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -359,6 +366,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/src/libmbim-glib/test/test-message-parser.c libmbim-1.24.8/src/libmbim-glib/test/test-message-parser.c --- libmbim-1.22.0/src/libmbim-glib/test/test-message-parser.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/libmbim-glib/test/test-message-parser.c 2021-05-26 17:05:23.000000000 +0800 @@ -34,8 +34,8 @@ const guint8 *expected, guint32 expected_size) { - gchar *message_str; - gchar *expected_str; + g_autofree gchar *message_str = NULL; + g_autofree gchar *expected_str = NULL; message_str = mbim_common_str_hex (computed, computed_size, ':'); expected_str = mbim_common_str_hex (expected, expected_size, ':'); @@ -59,9 +59,6 @@ g_print ("Byte [%u] is different (computed: 0x%02X vs expected: 0x%02x)\n", i, computed[i], expected[i]); } } - - g_free (message_str); - g_free (expected_str); } #else #define test_message_trace(...) @@ -70,10 +67,11 @@ static void test_message_parser_basic_connect_visible_providers (void) { - MbimProvider **providers; guint32 n_providers; - MbimMessage *response; - GError *error = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimProviderArray) providers = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -170,22 +168,20 @@ g_assert_cmpuint (providers[1]->cellular_class, ==, MBIM_CELLULAR_CLASS_GSM); g_assert_cmpuint (providers[1]->rssi, ==, 11); g_assert_cmpuint (providers[1]->error_rate, ==, 0); - - mbim_provider_array_free (providers); - mbim_message_unref (response); } static void test_message_parser_basic_connect_subscriber_ready_status (void) { MbimSubscriberReadyState ready_state; - gchar *subscriber_id; - gchar *sim_iccid; MbimReadyInfoFlag ready_info; guint32 telephone_numbers_count; - gchar **telephone_numbers; - MbimMessage *response; - GError *error = NULL; + g_autofree gchar *subscriber_id = NULL; + g_autofree gchar *sim_iccid = NULL; + g_auto(GStrv) telephone_numbers = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -268,18 +264,11 @@ g_assert_cmpstr (telephone_numbers[0], ==, "11111111111"); g_assert_cmpstr (telephone_numbers[1], ==, "00000000000"); g_assert (telephone_numbers[2] == NULL); - - g_free (subscriber_id); - g_free (sim_iccid); - g_strfreev (telephone_numbers); - - mbim_message_unref (response); } static void test_message_parser_basic_connect_device_caps (void) { - MbimMessage *response; MbimDeviceType device_type; MbimCellularClass cellular_class; MbimVoiceClass voice_class; @@ -288,11 +277,13 @@ MbimSmsCaps sms_caps; MbimCtrlCaps ctrl_caps; guint32 max_sessions; - gchar *custom_data_class; - gchar *device_id; - gchar *firmware_info; - gchar *hardware_info; - GError *error = NULL; + g_autofree gchar *custom_data_class = NULL; + g_autofree gchar *device_id = NULL; + g_autofree gchar *firmware_info = NULL; + g_autofree gchar *hardware_info = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { 0x03, 0x00, 0x00, 0x80, 0xD0, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, @@ -382,35 +373,29 @@ g_assert_cmpstr (device_id, ==, "353613048804622"); g_assert_cmpstr (firmware_info, ==, "11.810.09.00.00"); g_assert_cmpstr (hardware_info, ==, "CP1E367UM"); - - g_free (custom_data_class); - g_free (device_id); - g_free (firmware_info); - g_free (hardware_info); - - mbim_message_unref (response); } static void test_message_parser_basic_connect_ip_configuration (void) { - MbimMessage *response; guint32 session_id; MbimIPConfigurationAvailableFlag ipv4configurationavailable; MbimIPConfigurationAvailableFlag ipv6configurationavailable; guint32 ipv4addresscount; - MbimIPv4Element **ipv4address; guint32 ipv6addresscount; - MbimIPv6Element **ipv6address; const MbimIPv4 *ipv4gateway; const MbimIPv6 *ipv6gateway; guint32 ipv4dnsservercount; - MbimIPv4 *ipv4dnsserver; guint32 ipv6dnsservercount; - MbimIPv6 *ipv6dnsserver; guint32 ipv4mtu; guint32 ipv6mtu; - GError *error = NULL; + g_autofree MbimIPv4 *ipv4dnsserver = NULL; + g_autofree MbimIPv6 *ipv6dnsserver = NULL; + g_autoptr(MbimIPv4ElementArray) ipv4address = NULL; + g_autoptr(MbimIPv6ElementArray) ipv6address = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -520,23 +505,17 @@ g_assert (ipv6gateway == NULL); g_assert_cmpuint (ipv6dnsservercount, ==, 0); g_assert (ipv6dnsserver == NULL); - - mbim_ipv4_element_array_free (ipv4address); - mbim_ipv6_element_array_free (ipv6address); - g_free (ipv4dnsserver); - g_free (ipv6dnsserver); - - mbim_message_unref (response); } static void test_message_parser_basic_connect_service_activation (void) { - MbimMessage *response; - GError *error = NULL; guint32 nw_error; const guint8 *databuffer; guint32 databuffer_size; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 expected_databuffer [] = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08 @@ -576,24 +555,23 @@ g_assert_cmpuint (nw_error, ==, MBIM_NW_ERROR_ILLEGAL_ME); g_assert_cmpuint (databuffer_size, ==, sizeof (expected_databuffer)); g_assert (memcmp (databuffer, expected_databuffer, databuffer_size) == 0); - - mbim_message_unref (response); } static void test_message_parser_basic_connect_register_state (void) { - MbimMessage *response; MbimNwError nw_error; MbimRegisterState register_state; MbimRegisterMode register_mode; MbimDataClass available_data_classes; MbimCellularClass current_cellular_class; - gchar *provider_id; - gchar *provider_name; - gchar *roaming_text; MbimRegistrationFlag registration_flag; - GError *error = NULL; + g_autofree gchar *provider_id; + g_autofree gchar *provider_name; + g_autofree gchar *roaming_text; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -630,7 +608,6 @@ response = mbim_message_new (buffer, sizeof (buffer)); - g_assert (mbim_message_register_state_response_parse ( response, &nw_error, @@ -654,21 +631,19 @@ MBIM_DATA_CLASS_HSUPA)); g_assert_cmpuint (current_cellular_class, ==, MBIM_CELLULAR_CLASS_GSM); g_assert_cmpstr (provider_id, ==, "26006"); - g_free (provider_id); g_assert (provider_name == NULL); g_assert (roaming_text == NULL); g_assert_cmpuint (registration_flag, ==, MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH); - - mbim_message_unref (response); } static void test_message_parser_provisioned_contexts (void) { - MbimMessage *response; guint32 provisioned_contexts_count = 0; - MbimProvisionedContextElement **provisioned_contexts = NULL; - GError *error = NULL; + g_autoptr(MbimProvisionedContextElementArray) provisioned_contexts = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -702,10 +677,11 @@ { MbimSmsFormat format; guint32 messages_count; - MbimSmsPduReadRecord **pdu_messages; - MbimSmsCdmaReadRecord **cdma_messages; - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimSmsPduReadRecordArray) pdu_messages = NULL; + g_autoptr(MbimSmsCdmaReadRecordArray) cdma_messages = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -742,8 +718,6 @@ g_assert_cmpuint (messages_count, ==, 0); g_assert (pdu_messages == NULL); g_assert (cdma_messages == NULL); - - mbim_message_unref (response); } static void @@ -751,10 +725,11 @@ { MbimSmsFormat format; guint32 messages_count; - MbimSmsPduReadRecord **pdu_messages; - MbimSmsCdmaReadRecord **cdma_messages; - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimSmsPduReadRecordArray) pdu_messages = NULL; + g_autoptr(MbimSmsCdmaReadRecordArray) cdma_messages = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -819,9 +794,6 @@ sizeof (expected_pdu)); g_assert_cmpuint (pdu_messages[0]->pdu_data_size, ==, sizeof (expected_pdu)); g_assert (memcmp (pdu_messages[0]->pdu_data, expected_pdu, sizeof (expected_pdu)) == 0); - - mbim_sms_pdu_read_record_array_free (pdu_messages); - mbim_message_unref (response); } static void @@ -830,10 +802,11 @@ guint32 idx; MbimSmsFormat format; guint32 messages_count; - MbimSmsPduReadRecord **pdu_messages; - MbimSmsCdmaReadRecord **cdma_messages; - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimSmsPduReadRecordArray) pdu_messages = NULL; + g_autoptr(MbimSmsCdmaReadRecordArray) cdma_messages = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -940,9 +913,6 @@ sizeof (expected_pdu_idx7)); g_assert_cmpuint (pdu_messages[idx]->pdu_data_size, ==, sizeof (expected_pdu_idx7)); g_assert (memcmp (pdu_messages[idx]->pdu_data, expected_pdu_idx7, sizeof (expected_pdu_idx7)) == 0); - - mbim_sms_pdu_read_record_array_free (pdu_messages); - mbim_message_unref (response); } static void @@ -953,8 +923,9 @@ const guint8 *ussd_payload; guint32 ussd_payload_size; guint32 ussd_dcs; - MbimMessage *response; - GError *error = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1013,8 +984,6 @@ sizeof (expected_payload)); g_assert_cmpuint (ussd_payload_size, ==, sizeof (expected_payload)); g_assert (memcmp (ussd_payload, expected_payload, sizeof (expected_payload)) == 0); - - mbim_message_unref (response); } static void @@ -1025,8 +994,9 @@ const guint8 *ik; const guint8 *ck; const guint8 *auts; - MbimMessage *response; - GError *error = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1126,8 +1096,6 @@ expected_auts, sizeof (expected_auts)); g_assert (memcmp (auts, expected_auts, sizeof (expected_auts)) == 0); - - mbim_message_unref (response); } static void @@ -1136,8 +1104,9 @@ const guint8 *databuffer; guint32 databuffer_len; guint32 pac_type; - MbimMessage *response; - GError *error = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x07, 0x00, 0x00, 0x80, /* type */ @@ -1196,16 +1165,15 @@ sizeof (expected_databuffer)); g_assert_cmpuint (databuffer_len, ==, sizeof (expected_databuffer)); g_assert (memcmp (databuffer, expected_databuffer, sizeof (expected_databuffer)) == 0); - - mbim_message_unref (response); } static void test_message_parser_stk_pac_response (void) { const guint8 *databuffer; - MbimMessage *response; - GError *error = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1369,8 +1337,6 @@ expected_databuffer, sizeof (expected_databuffer)); g_assert (memcmp (databuffer, expected_databuffer, sizeof (expected_databuffer)) == 0); - - mbim_message_unref (response); } static void @@ -1379,8 +1345,9 @@ const guint8 *databuffer; guint32 databuffer_len; guint32 status_words; - MbimMessage *response; - GError *error = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1431,16 +1398,15 @@ sizeof (expected_databuffer)); g_assert_cmpuint (databuffer_len, ==, sizeof (expected_databuffer)); g_assert (memcmp (databuffer, expected_databuffer, sizeof (expected_databuffer)) == 0); - - mbim_message_unref (response); } static void test_message_parser_stk_envelope_response (void) { const guint8 *databuffer; - MbimMessage *response; - GError *error = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1492,18 +1458,17 @@ expected_databuffer, sizeof (expected_databuffer)); g_assert (memcmp (databuffer, expected_databuffer, sizeof (expected_databuffer)) == 0); - - mbim_message_unref (response); } static void test_message_parser_basic_connect_ip_packet_filters_none (void) { - MbimPacketFilter **filters = NULL; guint32 n_filters; guint32 session_id; - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimPacketFilterArray) filters = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1538,18 +1503,17 @@ g_assert_cmpuint (session_id, ==, 1); g_assert_cmpuint (n_filters, ==, 0); g_assert (filters == NULL); - - mbim_message_unref (response); } static void test_message_parser_basic_connect_ip_packet_filters_one (void) { - MbimPacketFilter **filters = NULL; guint32 n_filters; guint32 session_id; - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimPacketFilterArray) filters = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1615,20 +1579,17 @@ expected_mask, sizeof (expected_mask)); g_assert (memcmp (filters[0]->packet_mask, expected_mask, sizeof (expected_mask)) == 0); - - mbim_packet_filter_array_free (filters); - - mbim_message_unref (response); } static void test_message_parser_basic_connect_ip_packet_filters_two (void) { - MbimPacketFilter **filters = NULL; guint32 n_filters; guint32 session_id; - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimPacketFilterArray) filters = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1724,18 +1685,15 @@ expected_mask2, sizeof (expected_mask2)); g_assert (memcmp (filters[1]->packet_mask, expected_mask2, sizeof (expected_mask2)) == 0); - - mbim_packet_filter_array_free (filters); - - mbim_message_unref (response); } static void test_message_parser_ms_firmware_id_get (void) { const MbimUuid *firmware_id; - MbimMessage *response; - GError *error = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1776,21 +1734,20 @@ g_assert_no_error (error); g_assert (mbim_uuid_cmp (firmware_id, &expected_firmware_id)); - - mbim_message_unref (response); } static void test_message_parser_basic_connect_connect_short (void) { - MbimMessage *response; - GError *error = NULL; guint32 session_id; MbimActivationState activation_state; MbimVoiceCallState voice_call_state; MbimContextIpType ip_type; const MbimUuid *context_type; guint32 nw_error; + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response = NULL; + const guint8 buffer [] = { /* header */ 0x03, 0x00, 0x00, 0x80, /* type */ @@ -1824,7 +1781,79 @@ &error)); g_assert (error != NULL); - g_error_free (error); +} + +static void +test_message_parser_basic_connect_visible_providers_overflow (void) +{ + guint32 n_providers; + g_autoptr(GError) error = NULL; + g_autoptr(MbimProviderArray) providers = NULL; + g_autoptr(MbimMessage) response = NULL; + gboolean result; + + const guint8 buffer [] = { + /* header */ + 0x03, 0x00, 0x00, 0x80, /* type */ + 0xB4, 0x00, 0x00, 0x00, /* length */ + 0x02, 0x00, 0x00, 0x00, /* transaction id */ + /* fragment header */ + 0x01, 0x00, 0x00, 0x00, /* total */ + 0x00, 0x00, 0x00, 0x00, /* current */ + /* command_done_message */ + 0xA2, 0x89, 0xCC, 0x33, /* service id */ + 0xBC, 0xBB, 0x8B, 0x4F, + 0xB6, 0xB0, 0x13, 0x3E, + 0xC2, 0xAA, 0xE6, 0xDF, + 0x08, 0x00, 0x00, 0x00, /* command id */ + 0x00, 0x00, 0x00, 0x00, /* status code */ + 0x84, 0x00, 0x00, 0x00, /* buffer length */ + /* information buffer */ + 0x02, 0x00, 0x00, 0x00, /* 0x00 providers count */ + 0x14, 0x00, 0x00, 0x00, /* 0x04 provider 0 offset */ + 0x38, 0x00, 0x00, 0x00, /* 0x08 provider 0 length */ + 0x4C, 0x00, 0x00, 0x00, /* 0x0C provider 1 offset */ + 0x38, 0x00, 0x00, 0x00, /* 0x10 provider 1 length */ + /* data buffer... struct provider 0 */ + 0x20, 0x00, 0x00, 0x80, /* 0x14 [0x00] id offset */ /* OFFSET WRONG (0x80 instead of 0x00) */ + 0x0A, 0x00, 0x00, 0x80, /* 0x18 [0x04] id length */ /* LENGTH WRONG (0x80 instead of 0x00) */ + 0x08, 0x00, 0x00, 0x00, /* 0x1C [0x08] state */ + 0x2C, 0x00, 0x00, 0x00, /* 0x20 [0x0C] name offset */ + 0x0C, 0x00, 0x00, 0x00, /* 0x24 [0x10] name length */ + 0x01, 0x00, 0x00, 0x00, /* 0x28 [0x14] cellular class */ + 0x0B, 0x00, 0x00, 0x00, /* 0x2C [0x18] rssi */ + 0x00, 0x00, 0x00, 0x00, /* 0x30 [0x1C] error rate */ + 0x32, 0x00, 0x31, 0x00, /* 0x34 [0x20] id string (10 bytes) */ + 0x34, 0x00, 0x30, 0x00, + 0x33, 0x00, 0x00, 0x00, + 0x4F, 0x00, 0x72, 0x00, /* 0x40 [0x2C] name string (12 bytes) */ + 0x61, 0x00, 0x6E, 0x00, + 0x67, 0x00, 0x65, 0x00, + /* data buffer... struct provider 1 */ + 0x20, 0x00, 0x00, 0x00, /* 0x4C [0x00] id offset */ + 0x0A, 0x00, 0x00, 0x00, /* 0x50 [0x04] id length */ + 0x19, 0x00, 0x00, 0x00, /* 0x51 [0x08] state */ + 0x2C, 0x00, 0x00, 0x00, /* 0x54 [0x0C] name offset */ + 0x0C, 0x00, 0x00, 0x00, /* 0x58 [0x10] name length */ + 0x01, 0x00, 0x00, 0x00, /* 0x5C [0x14] cellular class */ + 0x0B, 0x00, 0x00, 0x00, /* 0x60 [0x18] rssi */ + 0x00, 0x00, 0x00, 0x00, /* 0x64 [0x1C] error rate */ + 0x32, 0x00, 0x31, 0x00, /* 0x68 [0x20] id string (10 bytes) */ + 0x34, 0x00, 0x30, 0x00, + 0x33, 0x00, 0x00, 0x00, + 0x4F, 0x00, 0x72, 0x00, /* 0x74 [0x2C] name string (12 bytes) */ + 0x61, 0x00, 0x6E, 0x00, + 0x67, 0x00, 0x65, 0x00 }; + + response = mbim_message_new (buffer, sizeof (buffer)); + + result = mbim_message_visible_providers_response_parse (response, + &n_providers, + &providers, + &error); + + g_assert (error != NULL); + g_assert (!result); } int main (int argc, char **argv) @@ -1852,6 +1881,7 @@ g_test_add_func ("/libmbim-glib/message/parser/basic-connect/ip-packet-filters/two", test_message_parser_basic_connect_ip_packet_filters_two); g_test_add_func ("/libmbim-glib/message/parser/ms-firmware-id/get", test_message_parser_ms_firmware_id_get); g_test_add_func ("/libmbim-glib/message/parser/basic-connect/connect/short", test_message_parser_basic_connect_connect_short); + g_test_add_func ("/libmbim-glib/message/parser/basic-connect/visible-providers/overflow", test_message_parser_basic_connect_visible_providers_overflow); return g_test_run (); } diff -Nru libmbim-1.22.0/src/mbim-proxy/Makefile.in libmbim-1.24.8/src/mbim-proxy/Makefile.in --- libmbim-1.22.0/src/mbim-proxy/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/src/mbim-proxy/Makefile.in 2021-06-02 22:06:04.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,9 +93,10 @@ subdir = src/mbim-proxy ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -220,7 +221,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -234,7 +234,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -251,6 +250,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -360,6 +367,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/src/mbim-proxy/mbim-proxy.c libmbim-1.24.8/src/mbim-proxy/mbim-proxy.c --- libmbim-1.22.0/src/mbim-proxy/mbim-proxy.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/mbim-proxy/mbim-proxy.c 2021-06-02 19:05:37.000000000 +0800 @@ -136,6 +136,7 @@ message); } +G_GNUC_NORETURN static void print_version_and_exit (void) { @@ -209,8 +210,8 @@ int main (int argc, char **argv) { - GError *error = NULL; - GOptionContext *context; + g_autoptr(GError) error = NULL; + g_autoptr(GOptionContext) context = NULL; setlocale (LC_ALL, ""); @@ -218,11 +219,9 @@ context = g_option_context_new ("- Proxy for MBIM devices"); g_option_context_add_main_entries (context, main_entries, NULL); if (!g_option_context_parse (context, &argc, &argv, &error)) { - g_printerr ("error: %s\n", - error->message); + g_printerr ("error: %s\n", error->message); exit (EXIT_FAILURE); } - g_option_context_free (context); if (version_flag) print_version_and_exit (); diff -Nru libmbim-1.22.0/src/mbimcli/Makefile.in libmbim-1.24.8/src/mbimcli/Makefile.in --- libmbim-1.22.0/src/mbimcli/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/Makefile.in 2021-06-02 22:06:04.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -92,9 +92,10 @@ subdir = src/mbimcli ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -207,7 +208,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -221,7 +221,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -238,6 +237,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -347,6 +354,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli-atds.c libmbim-1.24.8/src/mbimcli/mbimcli-atds.c --- libmbim-1.22.0/src/mbimcli/mbimcli-atds.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli-atds.c 2020-07-10 16:12:29.000000000 +0800 @@ -61,7 +61,7 @@ GOptionGroup *group; group = g_option_group_new ("atds", - "AT&T Device Service options", + "AT&T Device Service options:", "Show AT&T Device Service options", NULL, NULL); @@ -116,23 +116,20 @@ query_signal_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autofree gchar *rssi_str = NULL; + g_autofree gchar *error_rate_str = NULL; + g_autofree gchar *rscp_str = NULL; + g_autofree gchar *ecno_str = NULL; + g_autofree gchar *rsrq_str = NULL; + g_autofree gchar *rsrp_str = NULL; + g_autofree gchar *rssnr_str = NULL; guint32 rssi = 0, error_rate = 0, rscp = 0, ecno = 0, rsrq = 0, rsrp = 0, rssnr = 0; - gchar *rssi_str = NULL; - gchar *error_rate_str = NULL; - gchar *rscp_str = NULL; - gchar *ecno_str = NULL; - gchar *rsrq_str = NULL; - gchar *rsrp_str = NULL; - gchar *rssnr_str = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -148,8 +145,6 @@ &rssnr, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -239,15 +234,6 @@ VALIDATE_UNKNOWN (rsrp_str), VALIDATE_UNKNOWN (rssnr_str)); - g_free (rssi_str); - g_free (error_rate_str); - g_free (rscp_str); - g_free (ecno_str); - g_free (rsrq_str); - g_free (rsrp_str); - g_free (rssnr_str); - - mbim_message_unref (response); shutdown (TRUE); } @@ -255,16 +241,13 @@ query_location_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; guint32 lac = 0, tac = 0, cellid = 0; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -276,8 +259,6 @@ &cellid, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -291,7 +272,6 @@ tac, cellid); - mbim_message_unref (response); shutdown (TRUE); } @@ -299,6 +279,8 @@ mbimcli_atds_run (MbimDevice *device, GCancellable *cancellable) { + g_autoptr(MbimMessage) request = NULL; + /* Initialize context */ ctx = g_slice_new (Context); ctx->device = g_object_ref (device); @@ -306,8 +288,6 @@ /* Request to get signal info? */ if (query_signal_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying signal info..."); request = (mbim_message_atds_signal_query_new (NULL)); mbim_device_command (ctx->device, @@ -316,14 +296,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_signal_ready, NULL); - mbim_message_unref (request); return; } /* Request to get cell location? */ if (query_location_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying cell location..."); request = (mbim_message_atds_location_query_new (NULL)); mbim_device_command (ctx->device, @@ -332,7 +309,6 @@ ctx->cancellable, (GAsyncReadyCallback)query_location_ready, NULL); - mbim_message_unref (request); return; } diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli-basic-connect.c libmbim-1.24.8/src/mbimcli/mbimcli-basic-connect.c --- libmbim-1.22.0/src/mbimcli/mbimcli-basic-connect.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli-basic-connect.c 2021-06-02 19:05:37.000000000 +0800 @@ -214,7 +214,7 @@ GOptionGroup *group; group = g_option_group_new ("basic-connect", - "Basic Connect options", + "Basic Connect options:", "Show Basic Connect Service options", NULL, NULL); @@ -335,34 +335,31 @@ query_device_caps_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimDeviceType device_type; - const gchar *device_type_str; - MbimCellularClass cellular_class; - gchar *cellular_class_str; - MbimVoiceClass voice_class; - const gchar *voice_class_str; - MbimSimClass sim_class; - gchar *sim_class_str; - MbimDataClass data_class; - gchar *data_class_str; - MbimSmsCaps sms_caps; - gchar *sms_caps_str; - MbimCtrlCaps ctrl_caps; - gchar *ctrl_caps_str; - guint32 max_sessions; - gchar *custom_data_class; - gchar *device_id; - gchar *firmware_info; - gchar *hardware_info; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + MbimDeviceType device_type; + const gchar *device_type_str; + MbimVoiceClass voice_class; + const gchar *voice_class_str; + MbimCellularClass cellular_class; + g_autofree gchar *cellular_class_str = NULL; + MbimSimClass sim_class; + g_autofree gchar *sim_class_str = NULL; + MbimDataClass data_class; + g_autofree gchar *data_class_str = NULL; + MbimSmsCaps sms_caps; + g_autofree gchar *sms_caps_str = NULL; + MbimCtrlCaps ctrl_caps; + g_autofree gchar *ctrl_caps_str = NULL; + guint32 max_sessions; + g_autofree gchar *custom_data_class = NULL; + g_autofree gchar *device_id = NULL; + g_autofree gchar *firmware_info = NULL; + g_autofree gchar *hardware_info = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -383,19 +380,17 @@ &hardware_info, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } - device_type_str = mbim_device_type_get_string (device_type); + device_type_str = mbim_device_type_get_string (device_type); cellular_class_str = mbim_cellular_class_build_string_from_mask (cellular_class); - voice_class_str = mbim_voice_class_get_string (voice_class); - sim_class_str = mbim_sim_class_build_string_from_mask (sim_class); - data_class_str = mbim_data_class_build_string_from_mask (data_class); - sms_caps_str = mbim_sms_caps_build_string_from_mask (sms_caps); - ctrl_caps_str = mbim_ctrl_caps_build_string_from_mask (ctrl_caps); + voice_class_str = mbim_voice_class_get_string (voice_class); + sim_class_str = mbim_sim_class_build_string_from_mask (sim_class); + data_class_str = mbim_data_class_build_string_from_mask (data_class); + sms_caps_str = mbim_sms_caps_build_string_from_mask (sms_caps); + ctrl_caps_str = mbim_ctrl_caps_build_string_from_mask (ctrl_caps); g_print ("[%s] Device capabilities retrieved:\n" "\t Device type: '%s'\n" @@ -424,17 +419,6 @@ VALIDATE_UNKNOWN (firmware_info), VALIDATE_UNKNOWN (hardware_info)); - g_free (cellular_class_str); - g_free (sim_class_str); - g_free (data_class_str); - g_free (sms_caps_str); - g_free (ctrl_caps_str); - g_free (custom_data_class); - g_free (device_id); - g_free (firmware_info); - g_free (hardware_info); - - mbim_message_unref (response); shutdown (TRUE); } @@ -442,24 +426,21 @@ query_subscriber_ready_status_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimSubscriberReadyState ready_state; - const gchar *ready_state_str; - gchar *subscriber_id; - gchar *sim_iccid; - MbimReadyInfoFlag ready_info; - gchar *ready_info_str; - guint32 telephone_numbers_count; - gchar **telephone_numbers; - gchar *telephone_numbers_str; + g_autoptr (MbimMessage) response = NULL; + g_autoptr (GError) error = NULL; + MbimSubscriberReadyState ready_state; + const gchar *ready_state_str; + g_autofree gchar *subscriber_id = NULL; + g_autofree gchar *sim_iccid = NULL; + MbimReadyInfoFlag ready_info; + g_autofree gchar *ready_info_str = NULL; + guint32 telephone_numbers_count; + g_auto(GStrv) telephone_numbers = NULL; + g_autofree gchar *telephone_numbers_str = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -474,8 +455,6 @@ &telephone_numbers, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -497,13 +476,6 @@ VALIDATE_UNKNOWN (ready_info_str), telephone_numbers_count, VALIDATE_UNKNOWN (telephone_numbers_str)); - g_free (subscriber_id); - g_free (sim_iccid); - g_free (ready_info_str); - g_strfreev (telephone_numbers); - g_free (telephone_numbers_str); - - mbim_message_unref (response); shutdown (TRUE); } @@ -511,19 +483,16 @@ query_radio_state_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimRadioSwitchState hardware_radio_state; - const gchar *hardware_radio_state_str; - MbimRadioSwitchState software_radio_state; - const gchar *software_radio_state_str; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + MbimRadioSwitchState hardware_radio_state; + const gchar *hardware_radio_state_str; + MbimRadioSwitchState software_radio_state; + const gchar *software_radio_state_str; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -534,8 +503,6 @@ &software_radio_state, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -550,7 +517,6 @@ VALIDATE_UNKNOWN (hardware_radio_state_str), VALIDATE_UNKNOWN (software_radio_state_str)); - mbim_message_unref (response); shutdown (TRUE); } @@ -558,18 +524,15 @@ query_device_services_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimDeviceServiceElement **device_services; - guint32 device_services_count; - guint32 max_dss_sessions; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimDeviceServiceElementArray) device_services = NULL; + guint32 device_services_count; + guint32 max_dss_sessions; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -581,9 +544,6 @@ &device_services, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); - shutdown (FALSE); return; } @@ -598,10 +558,10 @@ g_print ("\t Services: (%u)\n", device_services_count); for (i = 0; i < device_services_count; i++) { - MbimService service; - gchar *uuid_str; - GString *cids; - guint32 j; + MbimService service; + g_autofree gchar *uuid_str = NULL; + g_autoptr(GString) cids = NULL; + guint32 j; service = mbim_uuid_to_service (&device_services[i]->device_service_id); uuid_str = mbim_uuid_get_printable (&device_services[i]->device_service_id); @@ -633,36 +593,27 @@ device_services[i]->dss_payload, device_services[i]->max_dss_instances, cids->str); - - g_string_free (cids, TRUE); - g_free (uuid_str); } } - mbim_device_service_element_array_free (device_services); - - mbim_message_unref (response); shutdown (TRUE); } static void pin_ready (MbimDevice *device, GAsyncResult *res, - gpointer user_data) + gpointer user_data) { - MbimMessage *response; - GError *error = NULL; - MbimPinType pin_type; - MbimPinState pin_state; - const gchar *pin_state_str; - guint32 remaining_attempts; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + MbimPinType pin_type; + MbimPinState pin_state; + const gchar *pin_state_str; + guint32 remaining_attempts; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -674,8 +625,6 @@ &remaining_attempts, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -700,7 +649,6 @@ remaining_attempts); } - mbim_message_unref (response); shutdown (TRUE); } @@ -710,7 +658,7 @@ gchar **pin, gchar **new_pin) { - gchar **split; + g_auto(GStrv) split = NULL; g_assert (n_expected == 1 || n_expected == 2); g_assert (pin != NULL); @@ -725,20 +673,16 @@ if (g_strv_length (split) > n_expected) { g_printerr ("error: couldn't parse input string, too many arguments\n"); - g_strfreev (split); return FALSE; } if (g_strv_length (split) < n_expected) { g_printerr ("error: couldn't parse input string, missing arguments\n"); - g_strfreev (split); return FALSE; } *pin = g_strdup (split[0]); *new_pin = g_strdup (split[1]); - - g_strfreev (split); return TRUE; } @@ -749,7 +693,7 @@ }; static void -print_pin_desc (const gchar *pin_name, +print_pin_desc (const gchar *pin_name, const MbimPinDesc *pin_desc) { g_print ("\t%s:\n" @@ -766,29 +710,26 @@ } static void -pin_list_ready (MbimDevice *device, +pin_list_ready (MbimDevice *device, GAsyncResult *res, - gpointer user_data) + gpointer user_data) { - MbimMessage *response; - GError *error = NULL; - MbimPinDesc *pin_desc_pin1; - MbimPinDesc *pin_desc_pin2; - MbimPinDesc *pin_desc_device_sim_pin; - MbimPinDesc *pin_desc_device_first_sim_pin; - MbimPinDesc *pin_desc_network_pin; - MbimPinDesc *pin_desc_network_subset_pin; - MbimPinDesc *pin_desc_service_provider_pin; - MbimPinDesc *pin_desc_corporate_pin; - MbimPinDesc *pin_desc_subsidy_lock; - MbimPinDesc *pin_desc_custom; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimPinDesc) pin_desc_pin1 = NULL; + g_autoptr(MbimPinDesc) pin_desc_pin2 = NULL; + g_autoptr(MbimPinDesc) pin_desc_device_sim_pin = NULL; + g_autoptr(MbimPinDesc) pin_desc_device_first_sim_pin = NULL; + g_autoptr(MbimPinDesc) pin_desc_network_pin = NULL; + g_autoptr(MbimPinDesc) pin_desc_network_subset_pin = NULL; + g_autoptr(MbimPinDesc) pin_desc_service_provider_pin = NULL; + g_autoptr(MbimPinDesc) pin_desc_corporate_pin = NULL; + g_autoptr(MbimPinDesc) pin_desc_subsidy_lock = NULL; + g_autoptr(MbimPinDesc) pin_desc_custom = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -807,8 +748,6 @@ &pin_desc_custom, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -827,29 +766,16 @@ print_pin_desc ("Subsidy lock", pin_desc_subsidy_lock); print_pin_desc ("Custom", pin_desc_custom); - mbim_pin_desc_free (pin_desc_pin1); - mbim_pin_desc_free (pin_desc_pin2); - mbim_pin_desc_free (pin_desc_device_sim_pin); - mbim_pin_desc_free (pin_desc_device_first_sim_pin); - mbim_pin_desc_free (pin_desc_network_pin); - mbim_pin_desc_free (pin_desc_network_subset_pin); - mbim_pin_desc_free (pin_desc_service_provider_pin); - mbim_pin_desc_free (pin_desc_corporate_pin); - mbim_pin_desc_free (pin_desc_subsidy_lock); - mbim_pin_desc_free (pin_desc_custom); - - mbim_message_unref (response); shutdown (TRUE); } static void -ip_configuration_query_ready (MbimDevice *device, - GAsyncResult *res, - gpointer unused) -{ - GError *error = NULL; - MbimMessage *response; - gboolean success = FALSE; +ip_configuration_query_ready (MbimDevice *device, + GAsyncResult *res) +{ + g_autoptr(GError) error = NULL; + g_autoptr(MbimMessage) response; + gboolean success = FALSE; response = mbim_device_command_finish (device, res, &error); if (!response || @@ -861,19 +787,16 @@ g_printerr ("error: couldn't parse IP configuration response message: %s\n", error->message); } - g_clear_error (&error); - if (response) - mbim_message_unref (response); shutdown (success); } static void -ip_configuration_query (MbimDevice *device, +ip_configuration_query (MbimDevice *device, GCancellable *cancellable, - guint32 session_id) + guint32 session_id) { - MbimMessage *message; - GError *error = NULL; + g_autoptr(MbimMessage) message = NULL; + g_autoptr(GError) error = NULL; message = (mbim_message_ip_configuration_query_new ( session_id, @@ -894,7 +817,6 @@ &error)); if (!message) { g_printerr ("error: couldn't create IP config request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -905,29 +827,25 @@ cancellable, (GAsyncReadyCallback)ip_configuration_query_ready, NULL); - mbim_message_unref (message); } static void connect_ready (MbimDevice *device, GAsyncResult *res, - gpointer user_data) + gpointer user_data) { - MbimMessage *response; - GError *error = NULL; - guint32 session_id; - MbimActivationState activation_state; - MbimVoiceCallState voice_call_state; - MbimContextIpType ip_type; - const MbimUuid *context_type; - guint32 nw_error; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + guint32 session_id; + MbimActivationState activation_state; + MbimVoiceCallState voice_call_state; + MbimContextIpType ip_type; + const MbimUuid *context_type; + guint32 nw_error; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -942,12 +860,9 @@ &nw_error, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } - mbim_message_unref (response); switch (GPOINTER_TO_UINT (user_data)) { case CONNECT: @@ -986,22 +901,19 @@ } static void -ip_packet_filters_ready (MbimDevice *device, - GAsyncResult *res, - gpointer unused) -{ - MbimMessage *response; - GError *error = NULL; - MbimPacketFilter **filters; - guint32 filters_count, i; +ip_packet_filters_ready (MbimDevice *device, + GAsyncResult *res) +{ + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimPacketFilterArray) filters = NULL; + guint32 filters_count; + guint32 i; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1013,8 +925,6 @@ &filters, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1022,23 +932,18 @@ g_print ("\n[%s] IP packet filters: (%u)\n", mbim_device_get_path_display (device), filters_count); for (i = 0; i < filters_count; i++) { - gchar *bytes; + g_autofree gchar *packet_filter = NULL; + g_autofree gchar *packet_mask = NULL; + + packet_filter = mbim_common_str_hex (filters[i]->packet_filter, filters[i]->filter_size, ' '); + packet_mask = mbim_common_str_hex (filters[i]->packet_mask, filters[i]->filter_size, ' '); g_print ("\n"); g_print ("\tFilter size: %u\n", filters[i]->filter_size); - - bytes = mbim_common_str_hex (filters[i]->packet_filter, filters[i]->filter_size, ' '); - g_print ("\tPacket filter: %s\n", VALIDATE_UNKNOWN (bytes)); - g_free (bytes); - - bytes = mbim_common_str_hex (filters[i]->packet_mask, filters[i]->filter_size, ' '); - g_print ("\tPacket mask: %s\n", VALIDATE_UNKNOWN (bytes)); - g_free (bytes); + g_print ("\tPacket filter: %s\n", VALIDATE_UNKNOWN (packet_filter)); + g_print ("\tPacket mask: %s\n", VALIDATE_UNKNOWN (packet_mask)); } - mbim_packet_filter_array_free (filters); - - mbim_message_unref (response); shutdown (TRUE); } @@ -1049,10 +954,12 @@ if (g_ascii_strcasecmp (str, "PAP") == 0) { *auth_protocol = MBIM_AUTH_PROTOCOL_PAP; return TRUE; - } else if (g_ascii_strcasecmp (str, "CHAP") == 0) { + } + if (g_ascii_strcasecmp (str, "CHAP") == 0) { *auth_protocol = MBIM_AUTH_PROTOCOL_CHAP; return TRUE; - } else if (g_ascii_strcasecmp (str, "MSCHAPV2") == 0) { + } + if (g_ascii_strcasecmp (str, "MSCHAPV2") == 0) { *auth_protocol = MBIM_AUTH_PROTOCOL_MSCHAPV2; return TRUE; } @@ -1067,10 +974,12 @@ if (g_ascii_strcasecmp (str, "ipv4") == 0) { *ip_type = MBIM_CONTEXT_IP_TYPE_IPV4; return TRUE; - } else if (g_ascii_strcasecmp (str, "ipv6") == 0) { + } + if (g_ascii_strcasecmp (str, "ipv6") == 0) { *ip_type = MBIM_CONTEXT_IP_TYPE_IPV6; return TRUE; - } else if (g_ascii_strcasecmp (str, "ipv4v6") == 0) { + } + if (g_ascii_strcasecmp (str, "ipv4v6") == 0) { *ip_type = MBIM_CONTEXT_IP_TYPE_IPV4V6; return TRUE; } @@ -1126,10 +1035,21 @@ MbimContextIpType ip_type; } ConnectActivateProperties; -static gboolean connect_activate_properties_handle (const gchar *key, - const gchar *value, - GError **error, - gpointer user_data) +static void +connect_activate_properties_clear (ConnectActivateProperties *props) +{ + g_free (props->apn); + g_free (props->username); + g_free (props->password); +} + +G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(ConnectActivateProperties, connect_activate_properties_clear); + +static gboolean +connect_activate_properties_handle (const gchar *key, + const gchar *value, + GError **error, + gpointer user_data) { ConnectActivateProperties *props = user_data; @@ -1191,7 +1111,7 @@ gchar **password, MbimContextIpType *ip_type) { - ConnectActivateProperties props = { + g_auto(ConnectActivateProperties) props = { .session_id = 0, .apn = NULL, .auth_protocol = MBIM_AUTH_PROTOCOL_NONE, @@ -1199,7 +1119,8 @@ .password = NULL, .ip_type = MBIM_CONTEXT_IP_TYPE_DEFAULT }; - gchar **split = NULL; + g_auto(GStrv) split = NULL; + g_autoptr(GError) error = NULL; g_assert (session_id != NULL); g_assert (apn != NULL); @@ -1209,16 +1130,13 @@ g_assert (ip_type != NULL); if (strchr (str, '=')) { - GError *error = NULL; - /* New key=value format */ if (!mbimcli_parse_key_value_string (str, &error, connect_activate_properties_handle, &props)) { g_printerr ("error: couldn't parse input string: %s\n", error->message); - g_error_free (error); - goto error; + return FALSE; } } else { /* Old non key=value format, like this: @@ -1228,7 +1146,7 @@ if (g_strv_length (split) > 4) { g_printerr ("error: couldn't parse input string, too many arguments\n"); - goto error; + return FALSE; } if (g_strv_length (split) > 0) { @@ -1239,7 +1157,7 @@ if (split[1]) { if (!mbim_auth_protocol_from_string (split[1], &props.auth_protocol)) { g_printerr ("error: couldn't parse input string, unknown auth protocol '%s'\n", split[1]); - goto error; + return FALSE; } /* Username */ if (split[2]) { @@ -1254,63 +1172,44 @@ if (props.auth_protocol == MBIM_AUTH_PROTOCOL_NONE) { if (props.username || props.password) { g_printerr ("error: username or password requires an auth protocol\n"); - goto error; + return FALSE; } } else { if (!props.username) { g_printerr ("error: auth protocol requires a username\n"); - goto error; + return FALSE; } } - *session_id = props.session_id; - *apn = props.apn; + *session_id = props.session_id; + *apn = g_steal_pointer (&props.apn); *auth_protocol = props.auth_protocol; - *username = props.username; - *password = props.password; - *ip_type = props.ip_type; - - if (split) - g_strfreev (split); + *username = g_steal_pointer (&props.username); + *password = g_steal_pointer (&props.password); + *ip_type = props.ip_type; return TRUE; - -error: - if (split) - g_strfreev (split); - g_free (props.apn); - g_free (props.username); - g_free (props.password); - return FALSE; } static void home_provider_ready (MbimDevice *device, - GAsyncResult *res, - gpointer user_data) + GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimProvider *provider; - gchar *provider_state_str; - gchar *cellular_class_str; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimProvider) provider = NULL; + g_autofree gchar *provider_state_str = NULL; + g_autofree gchar *cellular_class_str = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } - if (!mbim_message_home_provider_response_parse (response, - &provider, - &error)) { + if (!mbim_message_home_provider_response_parse (response, &provider, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1333,57 +1232,40 @@ provider->rssi, provider->error_rate); - g_free (cellular_class_str); - g_free (provider_state_str); - - mbim_provider_free (provider); - mbim_message_unref (response); shutdown (TRUE); } static void preferred_providers_ready (MbimDevice *device, - GAsyncResult *res, - gpointer user_data) + GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimProvider **providers; - guint n_providers; - guint i; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimProviderArray) providers = NULL; + guint n_providers; + guint i; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } - if (!mbim_message_preferred_providers_response_parse (response, - &n_providers, - &providers, - &error)) { + if (!mbim_message_preferred_providers_response_parse (response, &n_providers, &providers, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } if (!n_providers) - g_print ("[%s] No preferred providers given\n", - mbim_device_get_path_display (device)); + g_print ("[%s] No preferred providers given\n", mbim_device_get_path_display (device)); else - g_print ("[%s] Preferred providers (%u):\n", - mbim_device_get_path_display (device), - n_providers); + g_print ("[%s] Preferred providers (%u):\n", mbim_device_get_path_display (device), n_providers); for (i = 0; i < n_providers; i++) { - gchar *provider_state_str; - gchar *cellular_class_str; + g_autofree gchar *provider_state_str = NULL; + g_autofree gchar *cellular_class_str = NULL; provider_state_str = mbim_provider_state_build_string_from_mask (providers[i]->provider_state); cellular_class_str = mbim_cellular_class_build_string_from_mask (providers[i]->cellular_class); @@ -1402,59 +1284,42 @@ VALIDATE_UNKNOWN (cellular_class_str), providers[i]->rssi, providers[i]->error_rate); - - g_free (cellular_class_str); - g_free (provider_state_str); } - mbim_provider_array_free (providers); - mbim_message_unref (response); shutdown (TRUE); } static void visible_providers_ready (MbimDevice *device, - GAsyncResult *res, - gpointer user_data) + GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimProvider **providers; - guint n_providers; - guint i; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimProviderArray) providers = NULL; + guint n_providers; + guint i; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } - if (!mbim_message_visible_providers_response_parse (response, - &n_providers, - &providers, - &error)) { + if (!mbim_message_visible_providers_response_parse (response, &n_providers, &providers, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } if (!n_providers) - g_print ("[%s] No visible providers given\n", - mbim_device_get_path_display (device)); + g_print ("[%s] No visible providers given\n", mbim_device_get_path_display (device)); else - g_print ("[%s] Visible providers (%u):\n", - mbim_device_get_path_display (device), - n_providers); + g_print ("[%s] Visible providers (%u):\n", mbim_device_get_path_display (device), n_providers); for (i = 0; i < n_providers; i++) { - gchar *provider_state_str; - gchar *cellular_class_str; + g_autofree gchar *provider_state_str = NULL; + g_autofree gchar *cellular_class_str = NULL; provider_state_str = mbim_provider_state_build_string_from_mask (providers[i]->provider_state); cellular_class_str = mbim_cellular_class_build_string_from_mask (providers[i]->cellular_class); @@ -1473,42 +1338,34 @@ VALIDATE_UNKNOWN (cellular_class_str), providers[i]->rssi, providers[i]->error_rate); - - g_free (cellular_class_str); - g_free (provider_state_str); } - mbim_provider_array_free (providers); - mbim_message_unref (response); shutdown (TRUE); } static void register_state_ready (MbimDevice *device, GAsyncResult *res, - gpointer user_data) + gpointer user_data) { - MbimMessage *response; - GError *error = NULL; - MbimNwError nw_error; - MbimRegisterState register_state; - MbimRegisterMode register_mode; - MbimDataClass available_data_classes; - gchar *available_data_classes_str; - MbimCellularClass cellular_class; - gchar *cellular_class_str; - gchar *provider_id; - gchar *provider_name; - gchar *roaming_text; - MbimRegistrationFlag registration_flag; - gchar *registration_flag_str; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + MbimNwError nw_error; + MbimRegisterState register_state; + MbimRegisterMode register_mode; + MbimDataClass available_data_classes; + g_autofree gchar *available_data_classes_str = NULL; + MbimCellularClass cellular_class; + g_autofree gchar *cellular_class_str = NULL; + g_autofree gchar *provider_id = NULL; + g_autofree gchar *provider_name = NULL; + g_autofree gchar *roaming_text = NULL; + MbimRegistrationFlag registration_flag; + g_autofree gchar *registration_flag_str = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1525,8 +1382,6 @@ ®istration_flag, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1536,8 +1391,8 @@ mbim_device_get_path_display (device)); available_data_classes_str = mbim_data_class_build_string_from_mask (available_data_classes); - cellular_class_str = mbim_cellular_class_build_string_from_mask (cellular_class); - registration_flag_str = mbim_registration_flag_build_string_from_mask (registration_flag); + cellular_class_str = mbim_cellular_class_build_string_from_mask (cellular_class); + registration_flag_str = mbim_registration_flag_build_string_from_mask (registration_flag); g_print ("[%s] Registration status:\n" "\t Network error: '%s'\n" @@ -1560,36 +1415,24 @@ VALIDATE_UNKNOWN (roaming_text), VALIDATE_UNKNOWN (registration_flag_str)); - g_free (available_data_classes_str); - g_free (cellular_class_str); - g_free (registration_flag_str); - g_free (provider_name); - g_free (provider_id); - g_free (roaming_text); - - mbim_message_unref (response); shutdown (TRUE); } static void signal_state_ready (MbimDevice *device, - GAsyncResult *res, - gpointer user_data) + GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - guint32 rssi; - guint32 error_rate; - guint32 signal_strength_interval; - guint32 rssi_threshold; - guint32 error_rate_threshold; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + guint32 rssi; + guint32 error_rate; + guint32 signal_strength_interval; + guint32 rssi_threshold; + guint32 error_rate_threshold; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1602,8 +1445,6 @@ &error_rate_threshold, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1624,7 +1465,6 @@ else g_print ("\t Error rate threshold: '%u'\n", error_rate_threshold); - mbim_message_unref (response); shutdown (TRUE); } @@ -1637,23 +1477,20 @@ static void packet_service_ready (MbimDevice *device, GAsyncResult *res, - gpointer user_data) + gpointer user_data) { - MbimMessage *response; - GError *error = NULL; - guint32 nw_error; - MbimPacketServiceState packet_service_state; - MbimDataClass highest_available_data_class; - gchar *highest_available_data_class_str; - guint64 uplink_speed; - guint64 downlink_speed; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + guint32 nw_error; + MbimPacketServiceState packet_service_state; + MbimDataClass highest_available_data_class; + g_autofree gchar *highest_available_data_class_str = NULL; + guint64 uplink_speed; + guint64 downlink_speed; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1666,8 +1503,6 @@ &downlink_speed, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1700,9 +1535,6 @@ uplink_speed, downlink_speed); - g_free (highest_available_data_class_str); - - mbim_message_unref (response); shutdown (TRUE); } @@ -1710,23 +1542,20 @@ packet_statistics_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - guint32 in_discards; - guint32 in_errors; - guint64 in_octets; - guint64 in_packets; - guint64 out_octets; - guint64 out_packets; - guint32 out_errors; - guint32 out_discards; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + guint32 in_discards; + guint32 in_errors; + guint64 in_octets; + guint64 in_packets; + guint64 out_octets; + guint64 out_packets; + guint32 out_errors; + guint32 out_discards; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1742,8 +1571,6 @@ &out_discards, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1767,7 +1594,6 @@ out_discards, out_errors); - mbim_message_unref (response); shutdown (TRUE); } @@ -1775,18 +1601,15 @@ provisioned_contexts_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - MbimProvisionedContextElement **provisioned_contexts; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(MbimProvisionedContextElementArray) provisioned_contexts = NULL; + g_autoptr(GError) error = NULL; guint32 provisioned_contexts_count; - guint i; - GError *error = NULL; + guint i; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1797,8 +1620,6 @@ &provisioned_contexts, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -1827,9 +1648,6 @@ provisioned_contexts[i]->auth_protocol))); } - mbim_provisioned_context_element_array_free (provisioned_contexts); - - mbim_message_unref (response); shutdown (TRUE); } @@ -1837,6 +1655,9 @@ mbimcli_basic_connect_run (MbimDevice *device, GCancellable *cancellable) { + g_autoptr(MbimMessage) request = NULL; + g_autoptr(GError) error = NULL; + /* Initialize context */ ctx = g_slice_new (Context); ctx->device = g_object_ref (device); @@ -1844,8 +1665,6 @@ /* Request to get capabilities? */ if (query_device_caps_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying device capabilities..."); request = (mbim_message_device_caps_query_new (NULL)); mbim_device_command (ctx->device, @@ -1854,14 +1673,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_device_caps_ready, NULL); - mbim_message_unref (request); return; } /* Request to get subscriber ready status? */ if (query_subscriber_ready_status_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying subscriber ready status..."); request = (mbim_message_subscriber_ready_status_query_new (NULL)); mbim_device_command (ctx->device, @@ -1870,14 +1686,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_subscriber_ready_status_ready, NULL); - mbim_message_unref (request); return; } /* Request to get radio state? */ if (query_radio_state_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying radio state..."); request = (mbim_message_radio_state_query_new (NULL)); mbim_device_command (ctx->device, @@ -1886,13 +1699,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_radio_state_ready, NULL); - mbim_message_unref (request); return; } /* Request to set radio state? */ if (set_radio_state_str) { - MbimMessage *request; MbimRadioSwitchState radio_state; if (g_ascii_strcasecmp (set_radio_state_str, "on") == 0) { @@ -1914,14 +1725,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_radio_state_ready, NULL); - mbim_message_unref (request); return; } /* Request to query device services? */ if (query_device_services_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying device services..."); request = (mbim_message_device_services_query_new (NULL)); mbim_device_command (ctx->device, @@ -1930,14 +1738,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_device_services_ready, NULL); - mbim_message_unref (request); return; } /* Query PIN state? */ if (query_pin_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying PIN state..."); request = (mbim_message_pin_query_new (NULL)); mbim_device_command (ctx->device, @@ -1946,7 +1751,6 @@ ctx->cancellable, (GAsyncReadyCallback)pin_ready, GUINT_TO_POINTER (FALSE)); - mbim_message_unref (request); return; } @@ -1956,14 +1760,12 @@ set_pin_enable_str || set_pin_disable_str || set_pin_enter_puk_str) { - MbimMessage *request; - guint n_expected; - MbimPinType pin_type; - MbimPinOperation pin_operation; - gchar *pin; - gchar *new_pin; - const gchar *input = NULL; - GError *error = NULL; + guint n_expected; + MbimPinType pin_type; + MbimPinOperation pin_operation; + g_autofree gchar *pin = NULL; + g_autofree gchar *new_pin = NULL; + const gchar *input = NULL; if (set_pin_enter_puk_str) { g_debug ("Asynchronously entering PUK..."); @@ -2007,12 +1809,8 @@ pin, new_pin, &error)); - g_free (pin); - g_free (new_pin); - if (!request) { g_printerr ("error: couldn't create request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2023,14 +1821,11 @@ ctx->cancellable, (GAsyncReadyCallback)pin_ready, GUINT_TO_POINTER (TRUE)); - mbim_message_unref (request); return; } /* Query PIN list? */ if (query_pin_list_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying PIN list..."); request = (mbim_message_pin_list_query_new (NULL)); mbim_device_command (ctx->device, @@ -2039,14 +1834,11 @@ ctx->cancellable, (GAsyncReadyCallback)pin_list_ready, GUINT_TO_POINTER (FALSE)); - mbim_message_unref (request); return; } /* Query home provider? */ if (query_home_provider_flag) { - MbimMessage *request; - request = mbim_message_home_provider_query_new (NULL); mbim_device_command (ctx->device, request, @@ -2054,14 +1846,11 @@ ctx->cancellable, (GAsyncReadyCallback)home_provider_ready, NULL); - mbim_message_unref (request); return; } /* Query preferred providers? */ if (query_preferred_providers_flag) { - MbimMessage *request; - request = mbim_message_preferred_providers_query_new (NULL); mbim_device_command (ctx->device, request, @@ -2069,14 +1858,11 @@ ctx->cancellable, (GAsyncReadyCallback)preferred_providers_ready, NULL); - mbim_message_unref (request); return; } /* Query visible providers? */ if (query_visible_providers_flag) { - MbimMessage *request; - request = mbim_message_visible_providers_query_new (MBIM_VISIBLE_PROVIDERS_ACTION_FULL_SCAN, NULL); mbim_device_command (ctx->device, request, @@ -2084,14 +1870,11 @@ ctx->cancellable, (GAsyncReadyCallback)visible_providers_ready, NULL); - mbim_message_unref (request); return; } /* Query registration status? */ if (query_register_state_flag) { - MbimMessage *request; - request = mbim_message_register_state_query_new (NULL); mbim_device_command (ctx->device, request, @@ -2099,22 +1882,17 @@ ctx->cancellable, (GAsyncReadyCallback)register_state_ready, GUINT_TO_POINTER (FALSE)); - mbim_message_unref (request); return; } /* Launch automatic registration? */ if (set_register_state_automatic_flag) { - MbimMessage *request; - GError *error = NULL; - request = mbim_message_register_state_set_new (NULL, MBIM_REGISTER_ACTION_AUTOMATIC, 0, &error); if (!request) { g_printerr ("error: couldn't create request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2125,14 +1903,11 @@ ctx->cancellable, (GAsyncReadyCallback)register_state_ready, GUINT_TO_POINTER (TRUE)); - mbim_message_unref (request); return; } /* Query signal status? */ if (query_signal_state_flag) { - MbimMessage *request; - request = mbim_message_signal_state_query_new (NULL); mbim_device_command (ctx->device, request, @@ -2140,14 +1915,11 @@ ctx->cancellable, (GAsyncReadyCallback)signal_state_ready, NULL); - mbim_message_unref (request); return; } /* Query packet service status? */ if (query_packet_service_flag) { - MbimMessage *request; - request = mbim_message_packet_service_query_new (NULL); mbim_device_command (ctx->device, request, @@ -2155,16 +1927,13 @@ ctx->cancellable, (GAsyncReadyCallback)packet_service_ready, GUINT_TO_POINTER (PACKET_SERVICE_STATUS)); - mbim_message_unref (request); return; } /* Launch packet attach or detach? */ if (set_packet_service_attach_flag || set_packet_service_detach_flag) { - MbimMessage *request; MbimPacketServiceAction action; - GError *error = NULL; if (set_packet_service_attach_flag) action = MBIM_PACKET_SERVICE_ACTION_ATTACH; @@ -2176,7 +1945,6 @@ request = mbim_message_packet_service_set_new (action, &error); if (!request) { g_printerr ("error: couldn't create request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2189,19 +1957,15 @@ GUINT_TO_POINTER (set_packet_service_attach_flag ? PACKET_SERVICE_ATTACH : PACKET_SERVICE_DETACH)); - mbim_message_unref (request); return; } /* Query connection status? */ if (query_connect_str) { - MbimMessage *request; - GError *error = NULL; guint32 session_id = 0; if (!connect_session_id_parse (query_connect_str, TRUE, &session_id, &error)) { g_printerr ("error: couldn't parse session ID: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2215,7 +1979,6 @@ &error); if (!request) { g_printerr ("error: couldn't create request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2226,20 +1989,17 @@ ctx->cancellable, (GAsyncReadyCallback)connect_ready, GUINT_TO_POINTER (CONNECTION_STATUS)); - mbim_message_unref (request); return; } /* Connect? */ if (set_connect_activate_str) { - MbimMessage *request; - GError *error = NULL; - guint32 session_id = 0; - gchar *apn; - MbimAuthProtocol auth_protocol; - gchar *username = NULL; - gchar *password = NULL; - MbimContextIpType ip_type = MBIM_CONTEXT_IP_TYPE_DEFAULT; + guint32 session_id = 0; + g_autofree gchar *apn = NULL; + MbimAuthProtocol auth_protocol; + g_autofree gchar *username = NULL; + g_autofree gchar *password = NULL; + MbimContextIpType ip_type = MBIM_CONTEXT_IP_TYPE_DEFAULT; if (!set_connect_activate_parse (set_connect_activate_str, &session_id, @@ -2262,13 +2022,9 @@ ip_type, mbim_uuid_from_context_type (MBIM_CONTEXT_TYPE_INTERNET), &error); - g_free (apn); - g_free (username); - g_free (password); if (!request) { g_printerr ("error: couldn't create request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2279,18 +2035,15 @@ ctx->cancellable, (GAsyncReadyCallback)connect_ready, GUINT_TO_POINTER (CONNECT)); - mbim_message_unref (request); return; } /* Query IP configuration? */ if (query_ip_configuration_str) { - GError *error = NULL; guint32 session_id = 0; if (!connect_session_id_parse (query_ip_configuration_str, TRUE, &session_id, &error)) { g_printerr ("error: couldn't parse session ID: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2301,13 +2054,10 @@ /* Disconnect? */ if (set_connect_deactivate_str) { - MbimMessage *request; - GError *error = NULL; guint32 session_id = 0; if (!connect_session_id_parse (set_connect_deactivate_str, TRUE, &session_id, &error)) { g_printerr ("error: couldn't parse session ID: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2324,7 +2074,6 @@ &error); if (!request) { g_printerr ("error: couldn't create request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2335,14 +2084,11 @@ ctx->cancellable, (GAsyncReadyCallback)connect_ready, GUINT_TO_POINTER (DISCONNECT)); - mbim_message_unref (request); return; } /* Packet statistics? */ if (query_packet_statistics_flag) { - MbimMessage *request; - request = mbim_message_packet_statistics_query_new (NULL); mbim_device_command (ctx->device, request, @@ -2350,19 +2096,15 @@ ctx->cancellable, (GAsyncReadyCallback)packet_statistics_ready, NULL); - mbim_message_unref (request); return; } /* Query IP packet filters? */ if (query_ip_packet_filters_str) { - MbimMessage *request; - GError *error = NULL; guint32 session_id = 0; if (!connect_session_id_parse (query_ip_packet_filters_str, TRUE, &session_id, &error)) { g_printerr ("error: couldn't parse session ID: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2374,7 +2116,6 @@ &error)); if (!request) { g_printerr ("error: couldn't create IP packet filters request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -2385,14 +2126,11 @@ ctx->cancellable, (GAsyncReadyCallback)ip_packet_filters_ready, NULL); - mbim_message_unref (request); return; } /* Provisioned contexts? */ if (query_provisioned_contexts_flag) { - MbimMessage *request; - request = mbim_message_provisioned_contexts_query_new (NULL); mbim_device_command (ctx->device, request, @@ -2400,7 +2138,6 @@ ctx->cancellable, (GAsyncReadyCallback)provisioned_contexts_ready, NULL); - mbim_message_unref (request); return; } diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli-dss.c libmbim-1.24.8/src/mbimcli/mbimcli-dss.c --- libmbim-1.22.0/src/mbimcli/mbimcli-dss.c 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli-dss.c 2020-07-10 16:12:29.000000000 +0800 @@ -36,15 +36,15 @@ /* Context */ typedef struct { - MbimDevice *device; + MbimDevice *device; GCancellable *cancellable; - guint32 session_id; + guint32 session_id; } Context; static Context *ctx; /* Options */ -static gchar *connect_str; -static gchar *disconnect_str; +static gchar *connect_str; +static gchar *disconnect_str; static GOptionEntry entries[] = { { "dss-connect", 0, 0, G_OPTION_ARG_STRING, &connect_str, @@ -64,7 +64,7 @@ GOptionGroup *group; group = g_option_group_new ("dss", - "Device Service Stream options", + "Device Service Stream options:", "Show Device Service Stream options", NULL, NULL); @@ -121,13 +121,12 @@ }; static void -ip_configuration_query_ready (MbimDevice *device, - GAsyncResult *res, - gpointer unused) +ip_configuration_query_ready (MbimDevice *device, + GAsyncResult *res) { - GError *error = NULL; - MbimMessage *response; - gboolean success = FALSE; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + gboolean success = FALSE; response = mbim_device_command_finish (device, res, &error); if (!response || @@ -139,50 +138,40 @@ g_printerr ("error: couldn't parse IP configuration response message: %s\n", error->message); } - g_clear_error (&error); - if (response) - mbim_message_unref (response); shutdown (success); } static void -set_dss_ready (MbimDevice *device, +set_dss_ready (MbimDevice *device, GAsyncResult *res, - gpointer user_data) + gpointer user_data) { - MbimMessage *response, *message; - GError *error = NULL; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(MbimMessage) message = NULL; + g_autoptr(GError) error = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } if (!mbim_message_dss_connect_response_parse (response, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } - mbim_message_unref (response); if (GPOINTER_TO_UINT (user_data) == DISCONNECT) { - g_print ("[%s] Successfully disconnected\n", - mbim_device_get_path_display (device)); + g_print ("[%s] Successfully disconnected\n", mbim_device_get_path_display (device)); shutdown (TRUE); return; } g_assert (GPOINTER_TO_UINT (user_data) == CONNECT); - g_print ("[%s] Successfully connected\n", - mbim_device_get_path_display (device)); + g_print ("[%s] Successfully connected\n", mbim_device_get_path_display (device)); message = (mbim_message_ip_configuration_query_new ( ctx->session_id, @@ -203,8 +192,6 @@ &error)); if (!message) { g_printerr ("error: couldn't create IP config request: %s\n", error->message); - g_error_free (error); - mbim_message_unref (message); shutdown (FALSE); return; } @@ -215,7 +202,6 @@ NULL, (GAsyncReadyCallback)ip_configuration_query_ready, NULL); - mbim_message_unref (message); } static gboolean @@ -223,8 +209,8 @@ MbimUuid *dsid, guint32 *ssid) { - gchar **split; - gboolean status = FALSE; + g_auto(GStrv) split = NULL; + gboolean status = FALSE; g_assert (dsid != NULL); g_assert (ssid != NULL); @@ -245,7 +231,6 @@ else status = TRUE; - g_strfreev (split); return status; } @@ -253,8 +238,8 @@ mbimcli_dss_run (MbimDevice *device, GCancellable *cancellable) { - MbimMessage *request; - GError *error = NULL; + g_autoptr(MbimMessage) request = NULL; + g_autoptr(GError) error = NULL; /* Initialize context */ ctx = g_slice_new (Context); @@ -277,7 +262,6 @@ if (!request) { g_printerr ("error: couldn't create request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -288,14 +272,13 @@ ctx->cancellable, (GAsyncReadyCallback)set_dss_ready, GUINT_TO_POINTER (CONNECT)); - mbim_message_unref (request); return; } /* Disconnect? */ if (disconnect_str) { MbimUuid service_id; - guint32 session_id; + guint32 session_id; if (!common_parse (disconnect_str, &service_id, &session_id)) { shutdown (FALSE); @@ -308,7 +291,6 @@ &error); if (!request) { g_printerr ("error: couldn't create request: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -319,7 +301,6 @@ ctx->cancellable, (GAsyncReadyCallback)set_dss_ready, GUINT_TO_POINTER (DISCONNECT)); - mbim_message_unref (request); return; } diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli-helpers.c libmbim-1.24.8/src/mbimcli/mbimcli-helpers.c --- libmbim-1.22.0/src/mbimcli/mbimcli-helpers.c 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli-helpers.c 2021-06-02 19:05:37.000000000 +0800 @@ -48,28 +48,27 @@ return FALSE; } - gboolean -mbimcli_print_ip_config (MbimDevice *device, - MbimMessage *response, - GError **error) +mbimcli_print_ip_config (MbimDevice *device, + MbimMessage *response, + GError **error) { - MbimIPConfigurationAvailableFlag ipv4configurationavailable; - MbimIPConfigurationAvailableFlag ipv6configurationavailable; - guint32 ipv4addresscount; - MbimIPv4Element **ipv4address; - guint32 ipv6addresscount; - MbimIPv6Element **ipv6address; - const MbimIPv4 *ipv4gateway; - const MbimIPv6 *ipv6gateway; - guint32 ipv4dnsservercount; - MbimIPv4 *ipv4dnsserver; - guint32 ipv6dnsservercount; - MbimIPv6 *ipv6dnsserver; - guint32 ipv4mtu; - guint32 ipv6mtu; - gchar *str; - GInetAddress *addr; + MbimIPConfigurationAvailableFlag ipv4configurationavailable; + g_autofree gchar *ipv4configurationavailable_str = NULL; + MbimIPConfigurationAvailableFlag ipv6configurationavailable; + g_autofree gchar *ipv6configurationavailable_str = NULL; + guint32 ipv4addresscount; + g_autoptr(MbimIPv4ElementArray) ipv4address = NULL; + guint32 ipv6addresscount; + g_autoptr(MbimIPv6ElementArray) ipv6address = NULL; + const MbimIPv4 *ipv4gateway; + const MbimIPv6 *ipv6gateway; + guint32 ipv4dnsservercount; + g_autofree MbimIPv4 *ipv4dnsserver = NULL; + guint32 ipv6dnsservercount; + g_autofree MbimIPv6 *ipv6dnsserver = NULL; + guint32 ipv4mtu; + guint32 ipv6mtu; if (!mbim_message_ip_configuration_response_parse ( response, @@ -93,44 +92,44 @@ /* IPv4 info */ - str = mbim_ip_configuration_available_flag_build_string_from_mask (ipv4configurationavailable); - g_print ("\n[%s] IPv4 configuration available: '%s'\n", mbim_device_get_path_display (device), str); - g_free (str); + ipv4configurationavailable_str = mbim_ip_configuration_available_flag_build_string_from_mask (ipv4configurationavailable); + g_print ("\n[%s] IPv4 configuration available: '%s'\n", mbim_device_get_path_display (device), ipv4configurationavailable_str); if (ipv4configurationavailable & MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_ADDRESS) { guint i; for (i = 0; i < ipv4addresscount; i++) { + g_autoptr(GInetAddress) addr = NULL; + g_autofree gchar *addr_str = NULL; + addr = g_inet_address_new_from_bytes ((guint8 *)&ipv4address[i]->ipv4_address, G_SOCKET_FAMILY_IPV4); - str = g_inet_address_to_string (addr); - g_print (" IP [%u]: '%s/%u'\n", - i, - str, - ipv4address[i]->on_link_prefix_length); - g_free (str); - g_object_unref (addr); + addr_str = g_inet_address_to_string (addr); + g_print (" IP [%u]: '%s/%u'\n", i, addr_str, ipv4address[i]->on_link_prefix_length); } } if (ipv4configurationavailable & MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_GATEWAY) { + g_autoptr(GInetAddress) addr = NULL; + g_autofree gchar *addr_str = NULL; + addr = g_inet_address_new_from_bytes ((guint8 *)ipv4gateway, G_SOCKET_FAMILY_IPV4); - str = g_inet_address_to_string (addr); - g_print (" Gateway: '%s'\n", str); - g_free (str); - g_object_unref (addr); + addr_str = g_inet_address_to_string (addr); + g_print (" Gateway: '%s'\n", addr_str); } if (ipv4configurationavailable & MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_DNS) { guint i; for (i = 0; i < ipv4dnsservercount; i++) { + g_autoptr(GInetAddress) addr = NULL; + addr = g_inet_address_new_from_bytes ((guint8 *)&ipv4dnsserver[i], G_SOCKET_FAMILY_IPV4); if (!g_inet_address_get_is_any (addr)) { - str = g_inet_address_to_string (addr); - g_print (" DNS [%u]: '%s'\n", i, str); - g_free (str); + g_autofree gchar *addr_str = NULL; + + addr_str = g_inet_address_to_string (addr); + g_print (" DNS [%u]: '%s'\n", i, addr_str); } - g_object_unref (addr); } } @@ -138,54 +137,50 @@ g_print (" MTU: '%u'\n", ipv4mtu); /* IPv6 info */ - str = mbim_ip_configuration_available_flag_build_string_from_mask (ipv6configurationavailable); - g_print ("\n[%s] IPv6 configuration available: '%s'\n", mbim_device_get_path_display (device), str); - g_free (str); + ipv6configurationavailable_str = mbim_ip_configuration_available_flag_build_string_from_mask (ipv6configurationavailable); + g_print ("\n[%s] IPv6 configuration available: '%s'\n", mbim_device_get_path_display (device), ipv6configurationavailable_str); if (ipv6configurationavailable & MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_ADDRESS) { guint i; for (i = 0; i < ipv6addresscount; i++) { + g_autoptr(GInetAddress) addr = NULL; + g_autofree gchar *addr_str = NULL; + addr = g_inet_address_new_from_bytes ((guint8 *)&ipv6address[i]->ipv6_address, G_SOCKET_FAMILY_IPV6); - str = g_inet_address_to_string (addr); - g_print (" IP [%u]: '%s/%u'\n", - i, - str, - ipv6address[i]->on_link_prefix_length); - g_free (str); - g_object_unref (addr); + addr_str = g_inet_address_to_string (addr); + g_print (" IP [%u]: '%s/%u'\n", i, addr_str, ipv6address[i]->on_link_prefix_length); } } if (ipv6configurationavailable & MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_GATEWAY) { + g_autoptr(GInetAddress) addr = NULL; + g_autofree gchar *addr_str = NULL; + addr = g_inet_address_new_from_bytes ((guint8 *)ipv6gateway, G_SOCKET_FAMILY_IPV6); - str = g_inet_address_to_string (addr); - g_print (" Gateway: '%s'\n", str); - g_free (str); - g_object_unref (addr); + addr_str = g_inet_address_to_string (addr); + g_print (" Gateway: '%s'\n", addr_str); } if (ipv6configurationavailable & MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_DNS) { guint i; for (i = 0; i < ipv6dnsservercount; i++) { + g_autoptr(GInetAddress) addr = NULL; + addr = g_inet_address_new_from_bytes ((guint8 *)&ipv6dnsserver[i], G_SOCKET_FAMILY_IPV6); if (!g_inet_address_get_is_any (addr)) { - str = g_inet_address_to_string (addr); - g_print (" DNS [%u]: '%s'\n", i, str); - g_free (str); + g_autofree gchar *addr_str = NULL; + + addr_str = g_inet_address_to_string (addr); + g_print (" DNS [%u]: '%s'\n", i, addr_str); } - g_object_unref (addr); } } if (ipv6configurationavailable & MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_MTU) g_print (" MTU: '%u'\n", ipv6mtu); - mbim_ipv4_element_array_free (ipv4address); - mbim_ipv6_element_array_free (ipv6address); - g_free (ipv4dnsserver); - g_free (ipv6dnsserver); return TRUE; } @@ -195,13 +190,14 @@ * key1="this is a string", key2='and so is this' */ gboolean -mbimcli_parse_key_value_string (const gchar *str, - GError **error, - MbimParseKeyValueForeachFn callback, - gpointer user_data) +mbimcli_parse_key_value_string (const gchar *str, + GError **error, + MbimParseKeyValueForeachFn callback, + gpointer user_data) { - GError *inner_error = NULL; - gchar *dupstr, *p, *key, *key_end, *value, *value_end, quote; + GError *inner_error = NULL; + g_autofree gchar *dupstr = NULL; + gchar *p, *key, *key_end, *value, *value_end, quote; g_return_val_if_fail (callback != NULL, FALSE); g_return_val_if_fail (str != NULL, FALSE); @@ -327,8 +323,6 @@ break; } - g_free (dupstr); - if (inner_error) { g_propagate_error (error, inner_error); return FALSE; diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli-intel-firmware-update.c libmbim-1.24.8/src/mbimcli/mbimcli-intel-firmware-update.c --- libmbim-1.22.0/src/mbimcli/mbimcli-intel-firmware-update.c 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli-intel-firmware-update.c 2020-07-10 16:12:29.000000000 +0800 @@ -56,7 +56,7 @@ GOptionGroup *group; group = g_option_group_new ("intel-firmware-update", - "Intel Firmware Update Service options", + "Intel Firmware Update Service options:", "Show Intel Firmware Update Service options", NULL, NULL); @@ -110,15 +110,12 @@ modem_reboot_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -126,14 +123,15 @@ g_print ("[%s] Successfully requested modem to reboot for firmware update\n\n", mbim_device_get_path_display (device)); - mbim_message_unref (response); shutdown (TRUE); } void mbimcli_intel_firmware_update_run (MbimDevice *device, - GCancellable *cancellable) + GCancellable *cancellable) { + g_autoptr(MbimMessage) request = NULL; + /* Initialize context */ ctx = g_slice_new (Context); ctx->device = g_object_ref (device); @@ -141,8 +139,6 @@ /* Request to reboot modem? */ if (modem_reboot_flag) { - MbimMessage *request; - g_debug ("Asynchronously rebooting modem..."); request = (mbim_message_intel_firmware_update_modem_reboot_set_new (NULL)); mbim_device_command (ctx->device, @@ -151,7 +147,6 @@ ctx->cancellable, (GAsyncReadyCallback)modem_reboot_ready, NULL); - mbim_message_unref (request); return; } diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli-ms-basic-connect-extensions.c libmbim-1.24.8/src/mbimcli/mbimcli-ms-basic-connect-extensions.c --- libmbim-1.22.0/src/mbimcli/mbimcli-ms-basic-connect-extensions.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli-ms-basic-connect-extensions.c 2021-06-02 19:05:37.000000000 +0800 @@ -47,10 +47,10 @@ static gboolean query_lte_attach_configuration_flag; static gboolean query_lte_attach_status_flag; -static gboolean query_pco_arg_parse (const char *option_name, - const char *value, - gpointer user_data, - GError **error); +static gboolean query_pco_arg_parse (const gchar *option_name, + const gchar *value, + gpointer user_data, + GError **error); static GOptionEntry entries[] = { { "ms-query-pco", 0, G_OPTION_FLAG_OPTIONAL_ARG, G_OPTION_ARG_CALLBACK, G_CALLBACK (query_pco_arg_parse), @@ -69,10 +69,10 @@ }; static gboolean -query_pco_arg_parse (const char *option_name, - const char *value, - gpointer user_data, - GError **error) +query_pco_arg_parse (const gchar *option_name, + const gchar *value, + gpointer user_data, + GError **error) { query_pco_str = g_strdup (value ? value : "0"); return TRUE; @@ -84,7 +84,7 @@ GOptionGroup *group; group = g_option_group_new ("ms-basic-connect-extensions", - "Microsoft Basic Connect Extensions options", + "Microsoft Basic Connect Extensions options:", "Show Microsoft Basic Connect Extensions Service options", NULL, NULL); @@ -171,30 +171,25 @@ query_pco_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimPcoValue *pco_value; - gchar *pco_data; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimPcoValue) pco_value = NULL; + g_autofree gchar *pco_data = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } - g_print ("[%s] Successfully queried PCO\n\n", - mbim_device_get_path_display (device)); + g_print ("[%s] Successfully queried PCO\n", mbim_device_get_path_display (device)); + if (!mbim_message_ms_basic_connect_extensions_pco_response_parse ( response, &pco_value, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -210,10 +205,7 @@ VALIDATE_UNKNOWN (mbim_pco_type_get_string (pco_value->pco_data_type)), pco_value->pco_data_size, pco_data); - g_free (pco_data); - mbim_pco_value_free (pco_value); - mbim_message_unref (response); shutdown (TRUE); } @@ -221,18 +213,15 @@ query_lte_attach_configuration_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - guint32 configuration_count = 0; - MbimLteAttachConfiguration **configurations = NULL; - guint i; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimLteAttachConfigurationArray) configurations = NULL; + guint32 configuration_count = 0; + guint i; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -246,8 +235,6 @@ &configurations, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -266,8 +253,6 @@ } #undef VALIDATE_NA - mbim_lte_attach_configuration_array_free (configurations); - mbim_message_unref (response); shutdown (TRUE); } @@ -275,16 +260,13 @@ query_lte_attach_status_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimLteAttachStatus *lte_attach_status = NULL; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimLteAttachStatus) lte_attach_status = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -297,8 +279,6 @@ <e_attach_status, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -313,8 +293,6 @@ g_print (" Auth protocol: %s\n", mbim_auth_protocol_get_string (lte_attach_status->auth_protocol)); #undef VALIDATE_NA - mbim_lte_attach_status_free (lte_attach_status); - mbim_message_unref (response); shutdown (TRUE); } @@ -322,6 +300,9 @@ mbimcli_ms_basic_connect_extensions_run (MbimDevice *device, GCancellable *cancellable) { + g_autoptr(MbimMessage) request = NULL; + g_autoptr(GError) error = NULL; + /* Initialize context */ ctx = g_slice_new (Context); ctx->device = g_object_ref (device); @@ -329,13 +310,10 @@ /* Request to get PCO? */ if (query_pco_str) { - MbimMessage *request; MbimPcoValue pco_value; - GError *error = NULL; if (!session_id_parse (query_pco_str, &pco_value.session_id, &error)) { g_printerr ("error: couldn't parse session ID: %s\n", error->message); - g_error_free (error); shutdown (FALSE); return; } @@ -352,14 +330,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_pco_ready, NULL); - mbim_message_unref (request); return; } /* Request to query LTE attach configuration? */ if (query_lte_attach_configuration_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying LTE attach configuration..."); request = mbim_message_ms_basic_connect_extensions_lte_attach_configuration_query_new (NULL); mbim_device_command (ctx->device, @@ -368,14 +343,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_lte_attach_configuration_ready, NULL); - mbim_message_unref (request); return; } /* Request to query LTE attach status? */ if (query_lte_attach_status_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying LTE attach status..."); request = mbim_message_ms_basic_connect_extensions_lte_attach_status_query_new (NULL); mbim_device_command (ctx->device, @@ -384,7 +356,6 @@ ctx->cancellable, (GAsyncReadyCallback)query_lte_attach_status_ready, NULL); - mbim_message_unref (request); return; } diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli-ms-firmware-id.c libmbim-1.24.8/src/mbimcli/mbimcli-ms-firmware-id.c --- libmbim-1.22.0/src/mbimcli/mbimcli-ms-firmware-id.c 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli-ms-firmware-id.c 2020-07-10 16:12:29.000000000 +0800 @@ -56,7 +56,7 @@ GOptionGroup *group; group = g_option_group_new ("ms-firmware-id", - "Microsoft Firmware ID options", + "Microsoft Firmware ID options:", "Show Microsoft Firmware ID Service options", NULL, NULL); @@ -110,28 +110,20 @@ query_firmware_id_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - const MbimUuid *firmware_id; - gchar *firmware_id_str; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + const MbimUuid *firmware_id; + g_autofree gchar *firmware_id_str = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } - if (!mbim_message_ms_firmware_id_get_response_parse ( - response, - &firmware_id, - &error)) { + if (!mbim_message_ms_firmware_id_get_response_parse (response, &firmware_id, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -141,9 +133,7 @@ g_print ("[%s] Firmware ID retrieved: '%s'\n\n", mbim_device_get_path_display (device), VALIDATE_UNKNOWN (firmware_id_str)); - g_free (firmware_id_str); - mbim_message_unref (response); shutdown (TRUE); } @@ -151,6 +141,8 @@ mbimcli_ms_firmware_id_run (MbimDevice *device, GCancellable *cancellable) { + g_autoptr(MbimMessage) request = NULL; + /* Initialize context */ ctx = g_slice_new (Context); ctx->device = g_object_ref (device); @@ -158,8 +150,6 @@ /* Request to get firmware ID? */ if (query_firmware_id_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying firmware ID..."); request = (mbim_message_ms_firmware_id_get_query_new (NULL)); mbim_device_command (ctx->device, @@ -168,7 +158,6 @@ ctx->cancellable, (GAsyncReadyCallback)query_firmware_id_ready, NULL); - mbim_message_unref (request); return; } diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli-ms-host-shutdown.c libmbim-1.24.8/src/mbimcli/mbimcli-ms-host-shutdown.c --- libmbim-1.22.0/src/mbimcli/mbimcli-ms-host-shutdown.c 2019-02-26 18:17:31.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli-ms-host-shutdown.c 2020-07-10 16:12:29.000000000 +0800 @@ -56,7 +56,7 @@ GOptionGroup *group; group = g_option_group_new ("ms-host-shutdown", - "Microsoft Host Shutdown options", + "Microsoft Host Shutdown options:", "Show Microsoft Host Shutdown Service options", NULL, NULL); @@ -110,15 +110,12 @@ ms_host_shutdown_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -126,7 +123,6 @@ g_print ("[%s] Successfully notified that host is shutting down\n\n", mbim_device_get_path_display (device)); - mbim_message_unref (response); shutdown (TRUE); } @@ -134,6 +130,8 @@ mbimcli_ms_host_shutdown_run (MbimDevice *device, GCancellable *cancellable) { + g_autoptr(MbimMessage) request = NULL; + /* Initialize context */ ctx = g_slice_new (Context); ctx->device = g_object_ref (device); @@ -141,8 +139,6 @@ /* Request to notify that host is shutting down */ if (notify_host_shutdown_flag) { - MbimMessage *request; - g_debug ("Asynchronously notifying host is shutting down..."); request = (mbim_message_ms_host_shutdown_notify_set_new (NULL)); mbim_device_command (ctx->device, @@ -151,7 +147,6 @@ ctx->cancellable, (GAsyncReadyCallback)ms_host_shutdown_ready, NULL); - mbim_message_unref (request); return; } diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli-phonebook.c libmbim-1.24.8/src/mbimcli/mbimcli-phonebook.c --- libmbim-1.22.0/src/mbimcli/mbimcli-phonebook.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli-phonebook.c 2020-07-10 16:12:29.000000000 +0800 @@ -83,7 +83,7 @@ GOptionGroup *group; group = g_option_group_new ("phonebook", - "Phonebook options", + "Phonebook options:", "Show Phonebook Service options", NULL, NULL); @@ -144,7 +144,7 @@ gchar **number, guint *idx) { - gchar **split; + g_auto(GStrv) split = NULL; g_assert (name != NULL); g_assert (number != NULL); @@ -158,13 +158,11 @@ if (g_strv_length (split) > 3) { g_printerr ("error: couldn't parse input string, too many arguments\n"); - g_strfreev (split); return FALSE; } if (g_strv_length (split) < 2) { g_printerr ("error: couldn't parse input string, missing arguments\n"); - g_strfreev (split); return FALSE; } @@ -172,7 +170,6 @@ if (split[2]) { if (!mbimcli_read_uint_from_string (split[2], idx)) { g_printerr ("error: couldn't parse input string, invalid index '%s'\n", split[2]); - g_strfreev (split); return FALSE; } } else { @@ -183,8 +180,6 @@ /* First two items will always be available */ *name = g_strdup (split[0]); *number = g_strdup (split[1]); - - g_strfreev (split); return TRUE; } @@ -192,30 +187,24 @@ set_phonebook_write_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } if (!mbim_message_phonebook_write_response_parse (response, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } g_print ("Phonebook entry successfully written\n"); - mbim_message_unref (response); shutdown (TRUE); } @@ -223,30 +212,24 @@ set_phonebook_delete_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } if (!mbim_message_phonebook_delete_response_parse (response, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } g_print ("Phonebook entry/entries successfully deleted"); - mbim_message_unref (response); shutdown (TRUE); } @@ -254,18 +237,15 @@ query_phonebook_read_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - guint32 entry_count; - MbimPhonebookEntry **phonebook_entries; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + g_autoptr(MbimPhonebookEntryArray) phonebook_entries = NULL; + guint32 entry_count; guint i; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -275,8 +255,6 @@ &phonebook_entries, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -290,9 +268,7 @@ phonebook_entries[i]->number, phonebook_entries[i]->name); } - mbim_phonebook_entry_array_free (phonebook_entries); - mbim_message_unref (response); shutdown (TRUE); } @@ -300,21 +276,18 @@ query_phonebook_configuration_ready (MbimDevice *device, GAsyncResult *res) { - MbimMessage *response; - GError *error = NULL; - MbimPhonebookState state; - const gchar *state_str; - guint32 number_of_entries; - guint32 used_entries; - guint32 max_number_length; - guint32 max_name; + g_autoptr(MbimMessage) response = NULL; + g_autoptr(GError) error = NULL; + MbimPhonebookState state; + const gchar *state_str; + guint32 number_of_entries; + guint32 used_entries; + guint32 max_number_length; + guint32 max_name; response = mbim_device_command_finish (device, res, &error); if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { g_printerr ("error: operation failed: %s\n", error->message); - g_error_free (error); - if (response) - mbim_message_unref (response); shutdown (FALSE); return; } @@ -327,8 +300,6 @@ &max_name, &error)) { g_printerr ("error: couldn't parse response message: %s\n", error->message); - g_error_free (error); - mbim_message_unref (response); shutdown (FALSE); return; } @@ -347,7 +318,6 @@ max_number_length, max_name); - mbim_message_unref (response); shutdown (TRUE); } @@ -355,6 +325,8 @@ mbimcli_phonebook_run (MbimDevice *device, GCancellable *cancellable) { + g_autoptr(MbimMessage) request = NULL; + /* Initialize context */ ctx = g_slice_new (Context); ctx->device = g_object_ref (device); @@ -362,8 +334,6 @@ /* Request to get configuration? */ if (phonebook_configuration_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying phonebook configurations..."); request = mbim_message_phonebook_configuration_query_new (NULL); mbim_device_command (ctx->device, @@ -372,14 +342,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_phonebook_configuration_ready, NULL); - mbim_message_unref (request); return; } /* Phonebook read */ if (phonebook_read_index) { - MbimMessage *request; - g_debug ("Asynchronously querying phonebook read..."); request = mbim_message_phonebook_read_query_new (MBIM_PHONEBOOK_FLAG_INDEX, phonebook_read_index, @@ -390,14 +357,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_phonebook_read_ready, NULL); - mbim_message_unref (request); return; } /* Phonebook read all */ if (phonebook_read_all_flag) { - MbimMessage *request; - g_debug ("Asynchronously querying phonebook read all..."); request = mbim_message_phonebook_read_query_new (MBIM_PHONEBOOK_FLAG_ALL, 0, NULL); mbim_device_command (ctx->device, @@ -406,14 +370,11 @@ ctx->cancellable, (GAsyncReadyCallback)query_phonebook_read_ready, NULL); - mbim_message_unref (request); return; } /* Phonebook delete */ if (phonebook_delete_index) { - MbimMessage *request; - g_debug ("Asynchronously phonebook delete..."); request = mbim_message_phonebook_delete_set_new (MBIM_PHONEBOOK_FLAG_INDEX, phonebook_delete_index, @@ -424,14 +385,11 @@ ctx->cancellable, (GAsyncReadyCallback)set_phonebook_delete_ready, NULL); - mbim_message_unref (request); return; } /* Phonebook delete all */ if (phonebook_delete_all_flag) { - MbimMessage *request; - g_debug ("Asynchronously phonebook delete all..."); request = mbim_message_phonebook_delete_set_new (MBIM_PHONEBOOK_FLAG_ALL, 0, NULL); mbim_device_command (ctx->device, @@ -440,16 +398,14 @@ ctx->cancellable, (GAsyncReadyCallback)set_phonebook_delete_ready, NULL); - mbim_message_unref (request); return; } /* Phonebook write */ if (phonebook_write_str) { - MbimMessage *request; - gchar *name; - gchar *number; - guint idx; + g_autofree gchar *name = NULL; + g_autofree gchar *number = NULL; + guint idx; g_debug ("Asynchronously writing phonebook..."); if (!phonebook_write_input_parse (phonebook_write_str, &name, &number, &idx)) { @@ -470,7 +426,6 @@ ctx->cancellable, (GAsyncReadyCallback)set_phonebook_write_ready, NULL); - mbim_message_unref (request); return; } diff -Nru libmbim-1.22.0/src/mbimcli/mbimcli.c libmbim-1.24.8/src/mbimcli/mbimcli.c --- libmbim-1.22.0/src/mbimcli/mbimcli.c 2020-01-09 20:40:27.000000000 +0800 +++ libmbim-1.24.8/src/mbimcli/mbimcli.c 2021-06-02 19:05:37.000000000 +0800 @@ -177,8 +177,7 @@ static void print_version_and_exit (void) { - g_print ("\n" - PROGRAM_NAME " " PROGRAM_VERSION "\n" + g_print (PROGRAM_NAME " " PROGRAM_VERSION "\n" "Copyright (C) 2013-2020 Aleksander Morgado\n" "License GPLv2+: GNU GPL version 2 or later \n" "This is free software: you are free to change and redistribute it.\n" @@ -197,7 +196,7 @@ GError *error = NULL; if (!mbim_device_close_finish (dev, res, &error)) { - g_printerr ("error: couldn't close device: %s", error->message); + g_printerr ("error: couldn't close device: %s\n", error->message); g_error_free (error); } else g_debug ("Device closed"); @@ -399,9 +398,9 @@ int main (int argc, char **argv) { - GError *error = NULL; - GFile *file; - GOptionContext *context; + g_autoptr(GError) error = NULL; + g_autoptr(GFile) file = NULL; + g_autoptr(GOptionContext) context = NULL; setlocale (LC_ALL, ""); @@ -425,11 +424,9 @@ mbimcli_ms_basic_connect_extensions_get_option_group ()); g_option_context_add_main_entries (context, main_entries, NULL); if (!g_option_context_parse (context, &argc, &argv, &error)) { - g_printerr ("error: %s\n", - error->message); + g_printerr ("error: %s\n", error->message); exit (EXIT_FAILURE); } - g_option_context_free (context); if (version_flag) print_version_and_exit (); @@ -460,10 +457,7 @@ g_unix_signal_add (SIGTERM, (GSourceFunc)signals_handler, GUINT_TO_POINTER (SIGTERM)); /* Launch MbimDevice creation */ - mbim_device_new (file, - cancellable, - (GAsyncReadyCallback)device_new_ready, - NULL); + mbim_device_new (file, cancellable, (GAsyncReadyCallback)device_new_ready, NULL); g_main_loop_run (loop); if (cancellable) @@ -471,7 +465,6 @@ if (device) g_object_unref (device); g_main_loop_unref (loop); - g_object_unref (file); return (operation_status ? EXIT_SUCCESS : EXIT_FAILURE); } diff -Nru libmbim-1.22.0/utils/Makefile.in libmbim-1.24.8/utils/Makefile.in --- libmbim-1.22.0/utils/Makefile.in 2020-01-15 23:09:54.000000000 +0800 +++ libmbim-1.24.8/utils/Makefile.in 2021-06-02 22:06:04.000000000 +0800 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.3 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2020 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -91,9 +91,10 @@ subdir = utils ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) @@ -163,7 +164,6 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ -CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ @@ -177,7 +177,6 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GLIB_MKENUMS = @GLIB_MKENUMS@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ @@ -194,6 +193,14 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBMBIM_GLIB_CFLAGS = @LIBMBIM_GLIB_CFLAGS@ @@ -303,6 +310,7 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@