Merge remote-tracking branch 'cros/upstream' into 'cros/master'
diff --git a/.gitignore b/.gitignore
index d2abaf1..f293831 100644
--- a/.gitignore
+++ b/.gitignore
@@ -52,29 +52,29 @@
 docs/man/mbimcli.1
 docs/man/mbim-network.1
 
-libmbim-glib/.deps
-libmbim-glib/.libs
-libmbim-glib/mbim-version.h
+src/libmbim-glib/.deps
+src/libmbim-glib/.libs
+src/libmbim-glib/mbim-version.h
 
-libmbim-glib/test/.deps
-libmbim-glib/test/.libs
-libmbim-glib/test/test-uuid
-libmbim-glib/test/test-cid
-libmbim-glib/test/test-message
-libmbim-glib/test/test-fragment
-libmbim-glib/test/test-message-parser
-libmbim-glib/test/test-message-builder
-libmbim-glib/test/*.log
-libmbim-glib/test/*.trs
+src/libmbim-glib/test/.deps
+src/libmbim-glib/test/.libs
+src/libmbim-glib/test/test-uuid
+src/libmbim-glib/test/test-cid
+src/libmbim-glib/test/test-message
+src/libmbim-glib/test/test-fragment
+src/libmbim-glib/test/test-message-parser
+src/libmbim-glib/test/test-message-builder
+src/libmbim-glib/test/*.log
+src/libmbim-glib/test/*.trs
 
-libmbim-glib/generated/.deps
-libmbim-glib/generated/.libs
-libmbim-glib/generated/*.c
-libmbim-glib/generated/*.h
-libmbim-glib/generated/*.sections
+src/libmbim-glib/generated/.deps
+src/libmbim-glib/generated/.libs
+src/libmbim-glib/generated/*.c
+src/libmbim-glib/generated/*.h
+src/libmbim-glib/generated/*.sections
 
-cli/.deps
-cli/.libs
-cli/mbimcli
+src/mbimcli/.deps
+src/mbimcli/.libs
+src/mbimcli/mbimcli
 
 utils/mbim-network
\ No newline at end of file
diff --git a/Makefile.am b/Makefile.am
index b9cce85..ac72f8e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,5 +1,5 @@
 
-SUBDIRS = . build-aux data libmbim-glib cli utils docs
+SUBDIRS = . build-aux data src utils docs
 
 ACLOCAL_AMFLAGS = -I m4
 
diff --git a/NEWS b/NEWS
index 046c152..beaa873 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,20 @@
 
+Overview of changes in libmbim 1.6
+----------------------------------------
+
+ * Updated mbimcli with new commands:
+    --phonebook-query-configuration
+    --phonebook-read
+    --phonebook-read-all
+    --phonebook-write
+    --phonebook-delete
+    --phonebook-delete-all
+
+ * Added generation of man pages for mbimcli and mbim-network.
+
+ * Several other minor improvements and fixes.
+
+
 Overview of changes in libmbim 1.4
 ----------------------------------------
 
@@ -32,6 +48,7 @@
 
  * Use gtester to run unit tests.
 
+
 Overview of changes in libmbim 1.2
 ----------------------------------------
 
diff --git a/autogen.sh b/autogen.sh
index 12585e8..88599c0 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -7,7 +7,7 @@
 PKG_NAME=libmbim
 
 (test -f $srcdir/configure.ac \
-  && test -f $srcdir/libmbim-glib/libmbim-glib.h) || {
+  && test -f $srcdir/src/libmbim-glib/libmbim-glib.h) || {
     echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
     echo " top-level $PKG_NAME directory"
     exit 1
diff --git a/cli/Makefile.am b/cli/Makefile.am
deleted file mode 100644
index 8896c56..0000000
--- a/cli/Makefile.am
+++ /dev/null
@@ -1,20 +0,0 @@
-
-bin_PROGRAMS = mbimcli
-
-mbimcli_CPPFLAGS = \
-	$(MBIMCLI_CFLAGS) \
-	-I$(top_srcdir) \
-	-I$(top_srcdir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib \
-	-I$(top_srcdir)/libmbim-glib/generated \
-	-I$(top_builddir)/libmbim-glib/generated
-
-mbimcli_SOURCES = \
-	mbimcli.h \
-	mbimcli.c \
-	mbimcli-basic-connect.c \
-	mbimcli-phonebook.c
-
-mbimcli_LDADD = \
-	$(MBIMCLI_LIBS) \
-	$(top_builddir)/libmbim-glib/libmbim-glib.la
diff --git a/configure.ac b/configure.ac
index df0aba7..5b1347d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@
 
 dnl The libmbim version number
 m4_define([mbim_major_version], [1])
-m4_define([mbim_minor_version], [5])
+m4_define([mbim_minor_version], [7])
 m4_define([mbim_micro_version], [0])
 m4_define([mbim_version],
           [mbim_major_version.mbim_minor_version.mbim_micro_version])
@@ -17,7 +17,7 @@
 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],  [2])
-m4_define([mbim_glib_lt_revision], [0])
+m4_define([mbim_glib_lt_revision], [1])
 m4_define([mbim_glib_lt_age],      [2])
 
 
@@ -98,17 +98,18 @@
                  data/Makefile
                  data/pkg-config/Makefile
                  data/pkg-config/mbim-glib.pc
-                 libmbim-glib/Makefile
-                 libmbim-glib/mbim-version.h
-                 libmbim-glib/generated/Makefile
-                 libmbim-glib/test/Makefile
-                 cli/Makefile
+                 src/Makefile
+                 src/libmbim-glib/Makefile
+                 src/libmbim-glib/mbim-version.h
+                 src/libmbim-glib/generated/Makefile
+                 src/libmbim-glib/test/Makefile
+                 src/mbimcli/Makefile
                  utils/Makefile
                  docs/Makefile
                  docs/reference/Makefile
                  docs/reference/libmbim-glib/Makefile
                  docs/reference/libmbim-glib/version.xml
-		 docs/man/Makefile])
+                 docs/man/Makefile])
 AC_OUTPUT
 
 echo "
diff --git a/docs/man/Makefile.am b/docs/man/Makefile.am
index fb258b6..9c1be1c 100644
--- a/docs/man/Makefile.am
+++ b/docs/man/Makefile.am
@@ -5,8 +5,8 @@
 
 # List of all source files which affect the output of --help-all
 MBIMCLI_SOURCES_WITH_HELP = \
-	$(top_srcdir)/cli/mbimcli-basic-connect.c \
-	$(top_srcdir)/cli/mbimcli.c
+	$(top_srcdir)/src/mbimcli/mbimcli-basic-connect.c \
+	$(top_srcdir)/src/mbimcli/mbimcli.c
 
 # Depend only in the source files, not in the actual program, so that the
 # manpage doesn't get rebuilt when building from a tarball
@@ -19,7 +19,7 @@
 			--name='Control MBIM devices' \
 			--help-option='--help-all' \
 			--libtool \
-			$(top_builddir)/cli/mbimcli || \
+			$(top_builddir)/src/mbimcli/mbimcli || \
 		touch $@
 
 # Depend only in the .in file, not in the actual script, so that the
diff --git a/docs/reference/libmbim-glib/Makefile.am b/docs/reference/libmbim-glib/Makefile.am
index 07bcbe9..46b59d9 100644
--- a/docs/reference/libmbim-glib/Makefile.am
+++ b/docs/reference/libmbim-glib/Makefile.am
@@ -8,13 +8,13 @@
 # Sections file building
 ALL_SECTIONS = \
 	$(srcdir)/libmbim-glib-common.sections \
-	$(top_builddir)/libmbim-glib/generated/mbim-basic-connect.sections \
-	$(top_builddir)/libmbim-glib/generated/mbim-sms.sections \
-	$(top_builddir)/libmbim-glib/generated/mbim-ussd.sections \
-	$(top_builddir)/libmbim-glib/generated/mbim-auth.sections \
-	$(top_builddir)/libmbim-glib/generated/mbim-phonebook.sections \
-	$(top_builddir)/libmbim-glib/generated/mbim-stk.sections \
-	$(top_builddir)/libmbim-glib/generated/mbim-dss.sections
+	$(top_builddir)/src/libmbim-glib/generated/mbim-basic-connect.sections \
+	$(top_builddir)/src/libmbim-glib/generated/mbim-sms.sections \
+	$(top_builddir)/src/libmbim-glib/generated/mbim-ussd.sections \
+	$(top_builddir)/src/libmbim-glib/generated/mbim-auth.sections \
+	$(top_builddir)/src/libmbim-glib/generated/mbim-phonebook.sections \
+	$(top_builddir)/src/libmbim-glib/generated/mbim-stk.sections \
+	$(top_builddir)/src/libmbim-glib/generated/mbim-dss.sections
 
 $(DOC_MODULE)-sections.mstamp: $(ALL_SECTIONS)
 	$(AM_V_GEN) \
@@ -29,18 +29,18 @@
 
 # The directory containing the source code.
 DOC_SOURCE_DIR = \
-	$(top_srcdir)/libmbim-glib \
-	$(top_builddir)/libmbim-glib \
-	$(top_builddir)/libmbim-glib/generated
+	$(top_srcdir)/src/libmbim-glib \
+	$(top_builddir)/src/libmbim-glib \
+	$(top_builddir)/src/libmbim-glib/generated
 
 # Used for dependencies
 HFILE_GLOB = \
-	$(top_srcdir)/libmbim-glib/*.h \
-	$(top_builddir)/libmbim-glib/*.h \
-	$(top_builddir)/libmbim-glib/generated/*.h
+	$(top_srcdir)/src/libmbim-glib/*.h \
+	$(top_builddir)/src/libmbim-glib/*.h \
+	$(top_builddir)/src/libmbim-glib/generated/*.h
 CFILE_GLOB = \
-	$(top_srcdir)/libmbim-glib/*.c \
-	$(top_builddir)/libmbim-glib/generated/*.c
+	$(top_srcdir)/src/libmbim-glib/*.c \
+	$(top_builddir)/src/libmbim-glib/generated/*.c
 
 # Headers to ignore
 IGNORE_HFILES = \
@@ -56,7 +56,7 @@
 
 GTKDOC_LIBS = \
 	$(LIBMBIM_GLIB_LIBS) \
-	$(top_builddir)/libmbim-glib/libmbim-glib.la
+	$(top_builddir)/src/libmbim-glib/libmbim-glib.la
 
 # Extra options to supply to gtkdoc-mkdb
 MKDB_OPTIONS = --output-format=xml --sgml-mode --name-space=mbim
diff --git a/libmbim-glib/test/Makefile.am b/libmbim-glib/test/Makefile.am
deleted file mode 100644
index 4bc4e88..0000000
--- a/libmbim-glib/test/Makefile.am
+++ /dev/null
@@ -1,92 +0,0 @@
-include $(top_srcdir)/gtester.make
-
-noinst_PROGRAMS = \
-	test-uuid \
-	test-cid \
-	test-message \
-	test-fragment \
-	test-message-parser \
-	test-message-builder
-
-TEST_PROGS += $(noinst_PROGRAMS)
-
-
-test_uuid_SOURCES = \
-	test-uuid.c
-test_uuid_CPPFLAGS = \
-	$(LIBMBIM_GLIB_CFLAGS) \
-	-I$(top_srcdir) \
-	-I$(top_srcdir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib \
-	-DLIBMBIM_GLIB_COMPILATION
-test_uuid_LDADD = \
-	$(top_builddir)/libmbim-glib/libmbim-glib-core.la \
-	$(top_builddir)/libmbim-glib/generated/libmbim-glib-generated.la \
-	$(LIBMBIM_GLIB_LIBS)
-
-test_cid_SOURCES = \
-	test-cid.c
-test_cid_CPPFLAGS = \
-	$(LIBMBIM_GLIB_CFLAGS) \
-	-I$(top_srcdir) \
-	-I$(top_srcdir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib \
-	-DLIBMBIM_GLIB_COMPILATION
-test_cid_LDADD = \
-	$(top_builddir)/libmbim-glib/libmbim-glib-core.la \
-	$(top_builddir)/libmbim-glib/generated/libmbim-glib-generated.la \
-	$(LIBMBIM_GLIB_LIBS)
-
-test_message_SOURCES = \
-	test-message.c
-test_message_CPPFLAGS = \
-	$(LIBMBIM_GLIB_CFLAGS) \
-	-I$(top_srcdir) \
-	-I$(top_srcdir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib \
-	-DLIBMBIM_GLIB_COMPILATION
-test_message_LDADD = \
-	$(top_builddir)/libmbim-glib/libmbim-glib-core.la \
-	$(top_builddir)/libmbim-glib/generated/libmbim-glib-generated.la \
-	$(LIBMBIM_GLIB_LIBS)
-
-test_fragment_SOURCES = \
-	test-fragment.c
-test_fragment_CPPFLAGS = \
-	$(LIBMBIM_GLIB_CFLAGS) \
-	-I$(top_srcdir) \
-	-I$(top_srcdir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib \
-	-DLIBMBIM_GLIB_COMPILATION
-test_fragment_LDADD = \
-	$(top_builddir)/libmbim-glib/libmbim-glib-core.la \
-	$(top_builddir)/libmbim-glib/generated/libmbim-glib-generated.la \
-	$(LIBMBIM_GLIB_LIBS)
-
-test_message_parser_SOURCES = \
-	test-message-parser.c
-test_message_parser_CPPFLAGS = \
-	$(LIBMBIM_GLIB_CFLAGS) \
-	-I$(top_srcdir) \
-	-I$(top_srcdir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib/generated \
-	-DLIBMBIM_GLIB_COMPILATION
-test_message_parser_LDADD = \
-	$(top_builddir)/libmbim-glib/libmbim-glib-core.la \
-	$(top_builddir)/libmbim-glib/generated/libmbim-glib-generated.la \
-	$(LIBMBIM_GLIB_LIBS)
-
-test_message_builder_SOURCES = \
-	test-message-builder.c
-test_message_builder_CPPFLAGS = \
-	$(LIBMBIM_GLIB_CFLAGS) \
-	-I$(top_srcdir) \
-	-I$(top_srcdir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib/generated \
-	-DLIBMBIM_GLIB_COMPILATION
-test_message_builder_LDADD = \
-	$(top_builddir)/libmbim-glib/libmbim-glib-core.la \
-	$(top_builddir)/libmbim-glib/generated/libmbim-glib-generated.la \
-	$(LIBMBIM_GLIB_LIBS)
diff --git a/src/Makefile.am b/src/Makefile.am
new file mode 100644
index 0000000..7de85b4
--- /dev/null
+++ b/src/Makefile.am
@@ -0,0 +1,2 @@
+
+SUBDIRS = libmbim-glib mbimcli
diff --git a/libmbim-glib/Makefile.am b/src/libmbim-glib/Makefile.am
similarity index 81%
rename from libmbim-glib/Makefile.am
rename to src/libmbim-glib/Makefile.am
index d4898a5..b9cb8b3 100644
--- a/libmbim-glib/Makefile.am
+++ b/src/libmbim-glib/Makefile.am
@@ -7,10 +7,10 @@
 	$(LIBMBIM_GLIB_CFLAGS) \
 	-I$(top_srcdir) \
 	-I$(top_builddir) \
-	-I$(top_srcdir)/libmbim-glib \
-	-I$(top_srcdir)/libmbim-glib/generated \
-	-I$(top_builddir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib/generated \
+	-I$(top_srcdir)/src/libmbim-glib \
+	-I$(top_srcdir)/src/libmbim-glib/generated \
+	-I$(top_builddir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib/generated \
 	-DLIBMBIM_GLIB_COMPILATION \
 	-DG_LOG_DOMAIN=\"Mbim\"
 libmbim_glib_core_la_SOURCES = \
@@ -31,7 +31,7 @@
 
 libmbim_glib_la_LIBADD = \
 	libmbim-glib-core.la \
-	${top_builddir}/libmbim-glib/generated/libmbim-glib-generated.la \
+	${top_builddir}/src/libmbim-glib/generated/libmbim-glib-generated.la \
 	$(LIBMBIM_GLIB_LIBS)
 
 libmbim_glib_la_LDFLAGS = \
diff --git a/libmbim-glib/generated/Makefile.am b/src/libmbim-glib/generated/Makefile.am
similarity index 86%
rename from libmbim-glib/generated/Makefile.am
rename to src/libmbim-glib/generated/Makefile.am
index fd5876a..9db1c3e 100644
--- a/libmbim-glib/generated/Makefile.am
+++ b/src/libmbim-glib/generated/Makefile.am
@@ -33,31 +33,31 @@
 	mbim-dss.sections
 
 # Error types
-mbim-error-types.h: $(top_srcdir)/libmbim-glib/mbim-errors.h $(top_srcdir)/build-aux/templates/mbim-error-types-template.h
+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) \
 		--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)/libmbim-glib/mbim-errors.h > $@
+		$(top_srcdir)/src/libmbim-glib/mbim-errors.h > $@
 
-mbim-error-types.c: $(top_srcdir)/libmbim-glib/mbim-errors.h mbim-error-types.h $(top_srcdir)/build-aux/templates/mbim-error-types-template.c
+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) \
 		--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)/libmbim-glib/mbim-errors.h > $@
+		$(top_srcdir)/src/libmbim-glib/mbim-errors.h > $@
 
-mbim-error-quarks.c: $(top_srcdir)/libmbim-glib/mbim-errors.h mbim-error-types.h $(top_srcdir)/build-aux/templates/mbim-error-quarks-template.c
+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) \
 		--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)/libmbim-glib/mbim-errors.h > $@
+		$(top_srcdir)/src/libmbim-glib/mbim-errors.h > $@
 
 # Enum/Flag types
 ENUMS = \
-	$(top_srcdir)/libmbim-glib/mbim-uuid.h \
-	$(top_srcdir)/libmbim-glib/mbim-cid.h \
-	$(top_srcdir)/libmbim-glib/mbim-message.h \
-	$(top_srcdir)/libmbim-glib/mbim-enums.h
+	$(top_srcdir)/src/libmbim-glib/mbim-uuid.h \
+	$(top_srcdir)/src/libmbim-glib/mbim-cid.h \
+	$(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) \
 		--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" \
@@ -143,8 +143,8 @@
 libmbim_glib_generated_la_CPPFLAGS = \
 	$(LIBMBIM_GLIB_CFLAGS) \
 	-I$(top_srcdir) \
-	-I$(top_srcdir)/libmbim-glib \
-	-I$(top_builddir)/libmbim-glib \
+	-I$(top_srcdir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib \
 	-DLIBMBIM_GLIB_COMPILATION \
 	-DG_LOG_DOMAIN=\"Mbim\" \
 	-Wno-unused-function
diff --git a/libmbim-glib/libmbim-glib.h b/src/libmbim-glib/libmbim-glib.h
similarity index 100%
rename from libmbim-glib/libmbim-glib.h
rename to src/libmbim-glib/libmbim-glib.h
diff --git a/libmbim-glib/mbim-cid.c b/src/libmbim-glib/mbim-cid.c
similarity index 100%
rename from libmbim-glib/mbim-cid.c
rename to src/libmbim-glib/mbim-cid.c
diff --git a/libmbim-glib/mbim-cid.h b/src/libmbim-glib/mbim-cid.h
similarity index 100%
rename from libmbim-glib/mbim-cid.h
rename to src/libmbim-glib/mbim-cid.h
diff --git a/libmbim-glib/mbim-device.c b/src/libmbim-glib/mbim-device.c
similarity index 100%
rename from libmbim-glib/mbim-device.c
rename to src/libmbim-glib/mbim-device.c
diff --git a/libmbim-glib/mbim-device.h b/src/libmbim-glib/mbim-device.h
similarity index 100%
rename from libmbim-glib/mbim-device.h
rename to src/libmbim-glib/mbim-device.h
diff --git a/libmbim-glib/mbim-enums.h b/src/libmbim-glib/mbim-enums.h
similarity index 100%
rename from libmbim-glib/mbim-enums.h
rename to src/libmbim-glib/mbim-enums.h
diff --git a/libmbim-glib/mbim-errors.h b/src/libmbim-glib/mbim-errors.h
similarity index 100%
rename from libmbim-glib/mbim-errors.h
rename to src/libmbim-glib/mbim-errors.h
diff --git a/libmbim-glib/mbim-message-private.h b/src/libmbim-glib/mbim-message-private.h
similarity index 100%
rename from libmbim-glib/mbim-message-private.h
rename to src/libmbim-glib/mbim-message-private.h
diff --git a/libmbim-glib/mbim-message.c b/src/libmbim-glib/mbim-message.c
similarity index 100%
rename from libmbim-glib/mbim-message.c
rename to src/libmbim-glib/mbim-message.c
diff --git a/libmbim-glib/mbim-message.h b/src/libmbim-glib/mbim-message.h
similarity index 100%
rename from libmbim-glib/mbim-message.h
rename to src/libmbim-glib/mbim-message.h
diff --git a/libmbim-glib/mbim-utils.c b/src/libmbim-glib/mbim-utils.c
similarity index 100%
rename from libmbim-glib/mbim-utils.c
rename to src/libmbim-glib/mbim-utils.c
diff --git a/libmbim-glib/mbim-utils.h b/src/libmbim-glib/mbim-utils.h
similarity index 100%
rename from libmbim-glib/mbim-utils.h
rename to src/libmbim-glib/mbim-utils.h
diff --git a/libmbim-glib/mbim-uuid.c b/src/libmbim-glib/mbim-uuid.c
similarity index 100%
rename from libmbim-glib/mbim-uuid.c
rename to src/libmbim-glib/mbim-uuid.c
diff --git a/libmbim-glib/mbim-uuid.h b/src/libmbim-glib/mbim-uuid.h
similarity index 100%
rename from libmbim-glib/mbim-uuid.h
rename to src/libmbim-glib/mbim-uuid.h
diff --git a/libmbim-glib/mbim-version.h.in b/src/libmbim-glib/mbim-version.h.in
similarity index 100%
rename from libmbim-glib/mbim-version.h.in
rename to src/libmbim-glib/mbim-version.h.in
diff --git a/src/libmbim-glib/test/Makefile.am b/src/libmbim-glib/test/Makefile.am
new file mode 100644
index 0000000..708dc3b
--- /dev/null
+++ b/src/libmbim-glib/test/Makefile.am
@@ -0,0 +1,92 @@
+include $(top_srcdir)/gtester.make
+
+noinst_PROGRAMS = \
+	test-uuid \
+	test-cid \
+	test-message \
+	test-fragment \
+	test-message-parser \
+	test-message-builder
+
+TEST_PROGS += $(noinst_PROGRAMS)
+
+
+test_uuid_SOURCES = \
+	test-uuid.c
+test_uuid_CPPFLAGS = \
+	$(LIBMBIM_GLIB_CFLAGS) \
+	-I$(top_srcdir) \
+	-I$(top_srcdir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib \
+	-DLIBMBIM_GLIB_COMPILATION
+test_uuid_LDADD = \
+	$(top_builddir)/src/libmbim-glib/libmbim-glib-core.la \
+	$(top_builddir)/src/libmbim-glib/generated/libmbim-glib-generated.la \
+	$(LIBMBIM_GLIB_LIBS)
+
+test_cid_SOURCES = \
+	test-cid.c
+test_cid_CPPFLAGS = \
+	$(LIBMBIM_GLIB_CFLAGS) \
+	-I$(top_srcdir) \
+	-I$(top_srcdir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib \
+	-DLIBMBIM_GLIB_COMPILATION
+test_cid_LDADD = \
+	$(top_builddir)/src/libmbim-glib/libmbim-glib-core.la \
+	$(top_builddir)/src/libmbim-glib/generated/libmbim-glib-generated.la \
+	$(LIBMBIM_GLIB_LIBS)
+
+test_message_SOURCES = \
+	test-message.c
+test_message_CPPFLAGS = \
+	$(LIBMBIM_GLIB_CFLAGS) \
+	-I$(top_srcdir) \
+	-I$(top_srcdir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib \
+	-DLIBMBIM_GLIB_COMPILATION
+test_message_LDADD = \
+	$(top_builddir)/src/libmbim-glib/libmbim-glib-core.la \
+	$(top_builddir)/src/libmbim-glib/generated/libmbim-glib-generated.la \
+	$(LIBMBIM_GLIB_LIBS)
+
+test_fragment_SOURCES = \
+	test-fragment.c
+test_fragment_CPPFLAGS = \
+	$(LIBMBIM_GLIB_CFLAGS) \
+	-I$(top_srcdir) \
+	-I$(top_srcdir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib \
+	-DLIBMBIM_GLIB_COMPILATION
+test_fragment_LDADD = \
+	$(top_builddir)/src/libmbim-glib/libmbim-glib-core.la \
+	$(top_builddir)/src/libmbim-glib/generated/libmbim-glib-generated.la \
+	$(LIBMBIM_GLIB_LIBS)
+
+test_message_parser_SOURCES = \
+	test-message-parser.c
+test_message_parser_CPPFLAGS = \
+	$(LIBMBIM_GLIB_CFLAGS) \
+	-I$(top_srcdir) \
+	-I$(top_srcdir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib/generated \
+	-DLIBMBIM_GLIB_COMPILATION
+test_message_parser_LDADD = \
+	$(top_builddir)/src/libmbim-glib/libmbim-glib-core.la \
+	$(top_builddir)/src/libmbim-glib/generated/libmbim-glib-generated.la \
+	$(LIBMBIM_GLIB_LIBS)
+
+test_message_builder_SOURCES = \
+	test-message-builder.c
+test_message_builder_CPPFLAGS = \
+	$(LIBMBIM_GLIB_CFLAGS) \
+	-I$(top_srcdir) \
+	-I$(top_srcdir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib/generated \
+	-DLIBMBIM_GLIB_COMPILATION
+test_message_builder_LDADD = \
+	$(top_builddir)/src/libmbim-glib/libmbim-glib-core.la \
+	$(top_builddir)/src/libmbim-glib/generated/libmbim-glib-generated.la \
+	$(LIBMBIM_GLIB_LIBS)
diff --git a/libmbim-glib/test/test-cid.c b/src/libmbim-glib/test/test-cid.c
similarity index 100%
rename from libmbim-glib/test/test-cid.c
rename to src/libmbim-glib/test/test-cid.c
diff --git a/libmbim-glib/test/test-fragment.c b/src/libmbim-glib/test/test-fragment.c
similarity index 100%
rename from libmbim-glib/test/test-fragment.c
rename to src/libmbim-glib/test/test-fragment.c
diff --git a/libmbim-glib/test/test-message-builder.c b/src/libmbim-glib/test/test-message-builder.c
similarity index 100%
rename from libmbim-glib/test/test-message-builder.c
rename to src/libmbim-glib/test/test-message-builder.c
diff --git a/libmbim-glib/test/test-message-parser.c b/src/libmbim-glib/test/test-message-parser.c
similarity index 100%
rename from libmbim-glib/test/test-message-parser.c
rename to src/libmbim-glib/test/test-message-parser.c
diff --git a/libmbim-glib/test/test-message.c b/src/libmbim-glib/test/test-message.c
similarity index 100%
rename from libmbim-glib/test/test-message.c
rename to src/libmbim-glib/test/test-message.c
diff --git a/libmbim-glib/test/test-uuid.c b/src/libmbim-glib/test/test-uuid.c
similarity index 100%
rename from libmbim-glib/test/test-uuid.c
rename to src/libmbim-glib/test/test-uuid.c
diff --git a/src/mbimcli/Makefile.am b/src/mbimcli/Makefile.am
new file mode 100644
index 0000000..8998a81
--- /dev/null
+++ b/src/mbimcli/Makefile.am
@@ -0,0 +1,20 @@
+
+bin_PROGRAMS = mbimcli
+
+mbimcli_CPPFLAGS = \
+	$(MBIMCLI_CFLAGS) \
+	-I$(top_srcdir) \
+	-I$(top_srcdir)/src/libmbim-glib \
+	-I$(top_builddir)/src/libmbim-glib \
+	-I$(top_srcdir)/src/libmbim-glib/generated \
+	-I$(top_builddir)/src/libmbim-glib/generated
+
+mbimcli_SOURCES = \
+	mbimcli.h \
+	mbimcli.c \
+	mbimcli-basic-connect.c \
+	mbimcli-phonebook.c
+
+mbimcli_LDADD = \
+	$(MBIMCLI_LIBS) \
+	$(top_builddir)/src/libmbim-glib/libmbim-glib.la
diff --git a/cli/mbimcli-basic-connect.c b/src/mbimcli/mbimcli-basic-connect.c
similarity index 99%
rename from cli/mbimcli-basic-connect.c
rename to src/mbimcli/mbimcli-basic-connect.c
index 8f2db5e..025f1ef 100644
--- a/cli/mbimcli-basic-connect.c
+++ b/src/mbimcli/mbimcli-basic-connect.c
@@ -1473,7 +1473,7 @@
         request = mbim_message_visible_providers_query_new (MBIM_VISIBLE_PROVIDERS_ACTION_FULL_SCAN, NULL);
         mbim_device_command (ctx->device,
                              request,
-                             60, /* longer timeout, needs to scan */
+                             120, /* longer timeout, needs to scan */
                              ctx->cancellable,
                              (GAsyncReadyCallback)visible_providers_ready,
                              NULL);
diff --git a/cli/mbimcli-phonebook.c b/src/mbimcli/mbimcli-phonebook.c
similarity index 100%
rename from cli/mbimcli-phonebook.c
rename to src/mbimcli/mbimcli-phonebook.c
diff --git a/cli/mbimcli.c b/src/mbimcli/mbimcli.c
similarity index 100%
rename from cli/mbimcli.c
rename to src/mbimcli/mbimcli.c
diff --git a/cli/mbimcli.h b/src/mbimcli/mbimcli.h
similarity index 100%
rename from cli/mbimcli.h
rename to src/mbimcli/mbimcli.h