diff options
author | Guido Günther <agx@sigxcpu.org> | 2014-02-05 08:38:25 +0100 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2014-02-05 08:38:25 +0100 |
commit | 3dbe8df8bfe8741e1b9a48b56e41517816f17dc1 (patch) | |
tree | 26957efbc9bc5417767a01664665f3e0ce2cbc79 /plugins | |
parent | 10d15c65fd10614c4085af390a9fbf390ab958b7 (diff) |
Imported Upstream version 0.4.997upstream/0.4.997
Diffstat (limited to 'plugins')
28 files changed, 2608 insertions, 175 deletions
diff --git a/plugins/77-mm-simtech-port-types.rules b/plugins/77-mm-simtech-port-types.rules index 3848f89..048691a 100644 --- a/plugins/77-mm-simtech-port-types.rules +++ b/plugins/77-mm-simtech-port-types.rules @@ -19,11 +19,18 @@ GOTO="mm_simtech_port_types_end" LABEL="mm_alink_vendorcheck" SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}" +# A-LINK 3GU ATTRS{idProduct}=="cefe", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1" ATTRS{idProduct}=="cefe", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1" ATTRS{idProduct}=="cefe", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1" ATTRS{idProduct}=="cefe", ENV{ID_MM_SIMTECH_TAGGED}="1" +# Prolink PH-300 +ATTRS{idProduct}=="9100", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1" +ATTRS{idProduct}=="9100", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1" +ATTRS{idProduct}=="9100", ENV{ID_MM_SIMTECH_TAGGED}="1" + +# SCT UM300 ATTRS{idProduct}=="9200", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1" ATTRS{idProduct}=="9200", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1" ATTRS{idProduct}=="9200", ENV{ID_MM_SIMTECH_TAGGED}="1" diff --git a/plugins/77-mm-x22x-port-types.rules b/plugins/77-mm-x22x-port-types.rules index 0f870a4..6908e4f 100644 --- a/plugins/77-mm-x22x-port-types.rules +++ b/plugins/77-mm-x22x-port-types.rules @@ -1,6 +1,7 @@ # do not edit this file, it will be overwritten on update # Alcatel One Touch X220D +# Alcatel One Touch X200 # # These values were scraped from the X220D's Windows .inf files. jrdmdm.inf # lists the actual command and data (ie PPP) ports, while jrdser.inf lists the @@ -16,6 +17,13 @@ GOTO="mm_x22x_port_types_end" LABEL="mm_x22x_vendorcheck" SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}" +# Alcatel X200 +ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1" +ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1" +ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1" +ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1" +ATTRS{idProduct}=="0000", ENV{ID_MM_X22X_TAGGED}="1" + ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1" ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1" ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1" diff --git a/plugins/Makefile.in b/plugins/Makefile.in new file mode 100644 index 0000000..1c6e440 --- /dev/null +++ b/plugins/Makefile.in @@ -0,0 +1,1591 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ + +########################## +# Icera-specific support # +########################## + + +VPATH = @srcdir@ +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 = plugins +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/compiler_warnings.m4 \ + $(top_srcdir)/m4/intltool.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) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" "$(DESTDIR)$(udevrulesdir)" +LTLIBRARIES = $(noinst_LTLIBRARIES) $(pkglib_LTLIBRARIES) +libicera_utils_la_DEPENDENCIES = +am_libicera_utils_la_OBJECTS = libicera_utils_la-mm-modem-icera.lo +libicera_utils_la_OBJECTS = $(am_libicera_utils_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent +libmm_plugin_anydata_la_LIBADD = +am_libmm_plugin_anydata_la_OBJECTS = \ + libmm_plugin_anydata_la-mm-plugin-anydata.lo \ + libmm_plugin_anydata_la-mm-modem-anydata-cdma.lo +libmm_plugin_anydata_la_OBJECTS = \ + $(am_libmm_plugin_anydata_la_OBJECTS) +libmm_plugin_anydata_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_anydata_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_generic_la_LIBADD = +am_libmm_plugin_generic_la_OBJECTS = \ + libmm_plugin_generic_la-mm-plugin-generic.lo +libmm_plugin_generic_la_OBJECTS = \ + $(am_libmm_plugin_generic_la_OBJECTS) +libmm_plugin_generic_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_generic_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_gobi_la_LIBADD = +am_libmm_plugin_gobi_la_OBJECTS = \ + libmm_plugin_gobi_la-mm-plugin-gobi.lo \ + libmm_plugin_gobi_la-mm-modem-gobi-gsm.lo +libmm_plugin_gobi_la_OBJECTS = $(am_libmm_plugin_gobi_la_OBJECTS) +libmm_plugin_gobi_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_gobi_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_hso_la_LIBADD = +am_libmm_plugin_hso_la_OBJECTS = libmm_plugin_hso_la-mm-plugin-hso.lo \ + libmm_plugin_hso_la-mm-modem-hso.lo +libmm_plugin_hso_la_OBJECTS = $(am_libmm_plugin_hso_la_OBJECTS) +libmm_plugin_hso_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_hso_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_huawei_la_LIBADD = +am_libmm_plugin_huawei_la_OBJECTS = \ + libmm_plugin_huawei_la-mm-plugin-huawei.lo \ + libmm_plugin_huawei_la-mm-modem-huawei-gsm.lo \ + libmm_plugin_huawei_la-mm-modem-huawei-cdma.lo +libmm_plugin_huawei_la_OBJECTS = $(am_libmm_plugin_huawei_la_OBJECTS) +libmm_plugin_huawei_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_huawei_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_linktop_la_LIBADD = +am_libmm_plugin_linktop_la_OBJECTS = \ + libmm_plugin_linktop_la-mm-plugin-linktop.lo \ + libmm_plugin_linktop_la-mm-modem-linktop.lo +libmm_plugin_linktop_la_OBJECTS = \ + $(am_libmm_plugin_linktop_la_OBJECTS) +libmm_plugin_linktop_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_linktop_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_longcheer_la_LIBADD = +am_libmm_plugin_longcheer_la_OBJECTS = \ + libmm_plugin_longcheer_la-mm-plugin-longcheer.lo \ + libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.lo +libmm_plugin_longcheer_la_OBJECTS = \ + $(am_libmm_plugin_longcheer_la_OBJECTS) +libmm_plugin_longcheer_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_longcheer_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_mbm_la_LIBADD = +am_libmm_plugin_mbm_la_OBJECTS = libmm_plugin_mbm_la-mm-plugin-mbm.lo \ + libmm_plugin_mbm_la-mm-modem-mbm.lo +libmm_plugin_mbm_la_OBJECTS = $(am_libmm_plugin_mbm_la_OBJECTS) +libmm_plugin_mbm_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_mbm_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_moto_c_la_LIBADD = +am_libmm_plugin_moto_c_la_OBJECTS = \ + libmm_plugin_moto_c_la-mm-plugin-moto-c.lo \ + libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.lo +libmm_plugin_moto_c_la_OBJECTS = $(am_libmm_plugin_moto_c_la_OBJECTS) +libmm_plugin_moto_c_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_moto_c_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_nokia_la_LIBADD = +am_libmm_plugin_nokia_la_OBJECTS = \ + libmm_plugin_nokia_la-mm-plugin-nokia.lo \ + libmm_plugin_nokia_la-mm-modem-nokia.lo +libmm_plugin_nokia_la_OBJECTS = $(am_libmm_plugin_nokia_la_OBJECTS) +libmm_plugin_nokia_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_nokia_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_novatel_la_LIBADD = +am_libmm_plugin_novatel_la_OBJECTS = \ + libmm_plugin_novatel_la-mm-plugin-novatel.lo \ + libmm_plugin_novatel_la-mm-modem-novatel-gsm.lo \ + libmm_plugin_novatel_la-mm-modem-novatel-cdma.lo +libmm_plugin_novatel_la_OBJECTS = \ + $(am_libmm_plugin_novatel_la_OBJECTS) +libmm_plugin_novatel_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_novatel_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_option_la_LIBADD = +am_libmm_plugin_option_la_OBJECTS = \ + libmm_plugin_option_la-mm-plugin-option.lo \ + libmm_plugin_option_la-mm-modem-option.lo +libmm_plugin_option_la_OBJECTS = $(am_libmm_plugin_option_la_OBJECTS) +libmm_plugin_option_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_option_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_samsung_la_LIBADD = +am_libmm_plugin_samsung_la_OBJECTS = \ + libmm_plugin_samsung_la-mm-plugin-samsung.lo \ + libmm_plugin_samsung_la-mm-modem-samsung-gsm.lo +libmm_plugin_samsung_la_OBJECTS = \ + $(am_libmm_plugin_samsung_la_OBJECTS) +libmm_plugin_samsung_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_samsung_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_sierra_la_LIBADD = +am_libmm_plugin_sierra_la_OBJECTS = \ + libmm_plugin_sierra_la-mm-plugin-sierra.lo \ + libmm_plugin_sierra_la-mm-modem-sierra-gsm.lo \ + libmm_plugin_sierra_la-mm-modem-sierra-cdma.lo +libmm_plugin_sierra_la_OBJECTS = $(am_libmm_plugin_sierra_la_OBJECTS) +libmm_plugin_sierra_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_sierra_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_simtech_la_LIBADD = +am_libmm_plugin_simtech_la_OBJECTS = \ + libmm_plugin_simtech_la-mm-plugin-simtech.lo \ + libmm_plugin_simtech_la-mm-modem-simtech-gsm.lo +libmm_plugin_simtech_la_OBJECTS = \ + $(am_libmm_plugin_simtech_la_OBJECTS) +libmm_plugin_simtech_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_simtech_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_wavecom_la_LIBADD = +am_libmm_plugin_wavecom_la_OBJECTS = \ + libmm_plugin_wavecom_la-mm-plugin-wavecom.lo \ + libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.lo +libmm_plugin_wavecom_la_OBJECTS = \ + $(am_libmm_plugin_wavecom_la_OBJECTS) +libmm_plugin_wavecom_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_wavecom_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_x22x_la_LIBADD = +am_libmm_plugin_x22x_la_OBJECTS = \ + libmm_plugin_x22x_la-mm-plugin-x22x.lo \ + libmm_plugin_x22x_la-mm-modem-x22x-gsm.lo +libmm_plugin_x22x_la_OBJECTS = $(am_libmm_plugin_x22x_la_OBJECTS) +libmm_plugin_x22x_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_x22x_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +libmm_plugin_zte_la_DEPENDENCIES = $(builddir)/libicera-utils.la +am_libmm_plugin_zte_la_OBJECTS = libmm_plugin_zte_la-mm-plugin-zte.lo \ + libmm_plugin_zte_la-mm-modem-zte.lo +libmm_plugin_zte_la_OBJECTS = $(am_libmm_plugin_zte_la_OBJECTS) +libmm_plugin_zte_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libmm_plugin_zte_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +SOURCES = $(libicera_utils_la_SOURCES) \ + $(libmm_plugin_anydata_la_SOURCES) \ + $(libmm_plugin_generic_la_SOURCES) \ + $(libmm_plugin_gobi_la_SOURCES) $(libmm_plugin_hso_la_SOURCES) \ + $(libmm_plugin_huawei_la_SOURCES) \ + $(libmm_plugin_linktop_la_SOURCES) \ + $(libmm_plugin_longcheer_la_SOURCES) \ + $(libmm_plugin_mbm_la_SOURCES) \ + $(libmm_plugin_moto_c_la_SOURCES) \ + $(libmm_plugin_nokia_la_SOURCES) \ + $(libmm_plugin_novatel_la_SOURCES) \ + $(libmm_plugin_option_la_SOURCES) \ + $(libmm_plugin_samsung_la_SOURCES) \ + $(libmm_plugin_sierra_la_SOURCES) \ + $(libmm_plugin_simtech_la_SOURCES) \ + $(libmm_plugin_wavecom_la_SOURCES) \ + $(libmm_plugin_x22x_la_SOURCES) $(libmm_plugin_zte_la_SOURCES) +DIST_SOURCES = $(libicera_utils_la_SOURCES) \ + $(libmm_plugin_anydata_la_SOURCES) \ + $(libmm_plugin_generic_la_SOURCES) \ + $(libmm_plugin_gobi_la_SOURCES) $(libmm_plugin_hso_la_SOURCES) \ + $(libmm_plugin_huawei_la_SOURCES) \ + $(libmm_plugin_linktop_la_SOURCES) \ + $(libmm_plugin_longcheer_la_SOURCES) \ + $(libmm_plugin_mbm_la_SOURCES) \ + $(libmm_plugin_moto_c_la_SOURCES) \ + $(libmm_plugin_nokia_la_SOURCES) \ + $(libmm_plugin_novatel_la_SOURCES) \ + $(libmm_plugin_option_la_SOURCES) \ + $(libmm_plugin_samsung_la_SOURCES) \ + $(libmm_plugin_sierra_la_SOURCES) \ + $(libmm_plugin_simtech_la_SOURCES) \ + $(libmm_plugin_wavecom_la_SOURCES) \ + $(libmm_plugin_x22x_la_SOURCES) $(libmm_plugin_zte_la_SOURCES) +DATA = $(udevrules_DATA) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +ALL_LINGUAS = @ALL_LINGUAS@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CATALOGS = @CATALOGS@ +CATOBJEXT = @CATOBJEXT@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DATADIRNAME = @DATADIRNAME@ +DBUS_SYS_DIR = @DBUS_SYS_DIR@ +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@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ +GMOFILES = @GMOFILES@ +GMSGFMT = @GMSGFMT@ +GREP = @GREP@ +GUDEV_CFLAGS = @GUDEV_CFLAGS@ +GUDEV_LIBS = @GUDEV_LIBS@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INSTOBJEXT = @INSTOBJEXT@ +INTLLIBS = @INTLLIBS@ +INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ +INTLTOOL_MERGE = @INTLTOOL_MERGE@ +INTLTOOL_PERL = @INTLTOOL_PERL@ +INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ +MM_CFLAGS = @MM_CFLAGS@ +MM_LIBS = @MM_LIBS@ +MSGFMT = @MSGFMT@ +MSGFMT_OPTS = @MSGFMT_OPTS@ +MSGMERGE = @MSGMERGE@ +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@ +POFILES = @POFILES@ +POLKIT_CFLAGS = @POLKIT_CFLAGS@ +POLKIT_LIBS = @POLKIT_LIBS@ +POSUB = @POSUB@ +PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ +PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ +PPPD_PLUGIN_DIR = @PPPD_PLUGIN_DIR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +UDEV_BASE_DIR = @UDEV_BASE_DIR@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +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@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +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@ +noinst_LTLIBRARIES = libicera-utils.la +libicera_utils_la_SOURCES = \ + mm-modem-icera.c \ + mm-modem-icera.h + +libicera_utils_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libicera_utils_la_LIBADD = \ + $(GUDEV_LDFLAGS) + + +######################################## +pkglib_LTLIBRARIES = \ + libmm-plugin-generic.la \ + libmm-plugin-moto-c.la \ + libmm-plugin-gobi.la \ + libmm-plugin-huawei.la \ + libmm-plugin-hso.la \ + libmm-plugin-option.la \ + libmm-plugin-sierra.la \ + libmm-plugin-novatel.la \ + libmm-plugin-nokia.la \ + libmm-plugin-zte.la \ + libmm-plugin-mbm.la \ + libmm-plugin-longcheer.la \ + libmm-plugin-anydata.la \ + libmm-plugin-simtech.la \ + libmm-plugin-x22x.la \ + libmm-plugin-linktop.la \ + libmm-plugin-samsung.la \ + libmm-plugin-wavecom.la + + +# Generic +libmm_plugin_generic_la_SOURCES = \ + mm-plugin-generic.c \ + mm-plugin-generic.h + +libmm_plugin_generic_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_generic_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Motorola C-series phones +libmm_plugin_moto_c_la_SOURCES = \ + mm-plugin-moto-c.c \ + mm-plugin-moto-c.h \ + mm-modem-moto-c-gsm.c \ + mm-modem-moto-c-gsm.h + +libmm_plugin_moto_c_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_moto_c_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Qualcomm Gobi +libmm_plugin_gobi_la_SOURCES = \ + mm-plugin-gobi.c \ + mm-plugin-gobi.h \ + mm-modem-gobi-gsm.c \ + mm-modem-gobi-gsm.h + +libmm_plugin_gobi_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_gobi_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Huawei +libmm_plugin_huawei_la_SOURCES = \ + mm-plugin-huawei.c \ + mm-plugin-huawei.h \ + mm-modem-huawei-gsm.c \ + mm-modem-huawei-gsm.h \ + mm-modem-huawei-cdma.c \ + mm-modem-huawei-cdma.h + +libmm_plugin_huawei_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_huawei_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# HSO +libmm_plugin_hso_la_SOURCES = \ + mm-plugin-hso.c \ + mm-plugin-hso.h \ + mm-modem-gsm-hso-glue.h \ + mm-modem-hso.c \ + mm-modem-hso.h + +libmm_plugin_hso_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_hso_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# MBM +libmm_plugin_mbm_la_SOURCES = \ + mm-plugin-mbm.c \ + mm-plugin-mbm.h \ + mm-modem-mbm.c \ + mm-modem-mbm.h + +libmm_plugin_mbm_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_mbm_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Option +libmm_plugin_option_la_SOURCES = \ + mm-plugin-option.c \ + mm-plugin-option.h \ + mm-modem-option.c \ + mm-modem-option.h + +libmm_plugin_option_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_option_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Sierra +libmm_plugin_sierra_la_SOURCES = \ + mm-plugin-sierra.c \ + mm-plugin-sierra.h \ + mm-modem-sierra-gsm.c \ + mm-modem-sierra-gsm.h \ + mm-modem-sierra-cdma.c \ + mm-modem-sierra-cdma.h + +libmm_plugin_sierra_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_sierra_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Wavecom (Sierra Airlink) +libmm_plugin_wavecom_la_SOURCES = \ + mm-plugin-wavecom.c \ + mm-plugin-wavecom.h \ + mm-modem-wavecom-gsm.c \ + mm-modem-wavecom-gsm.h + +libmm_plugin_wavecom_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_wavecom_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Novatel +libmm_plugin_novatel_la_SOURCES = \ + mm-plugin-novatel.c \ + mm-plugin-novatel.h \ + mm-modem-novatel-gsm.c \ + mm-modem-novatel-gsm.h \ + mm-modem-novatel-cdma.c \ + mm-modem-novatel-cdma.h + +libmm_plugin_novatel_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src \ + -I$(top_srcdir) + +libmm_plugin_novatel_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Nokia +libmm_plugin_nokia_la_SOURCES = \ + mm-plugin-nokia.c \ + mm-plugin-nokia.h \ + mm-modem-nokia.c \ + mm-modem-nokia.h + +libmm_plugin_nokia_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_nokia_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Zte +libmm_plugin_zte_la_SOURCES = \ + mm-plugin-zte.c \ + mm-plugin-zte.h \ + mm-modem-zte.c \ + mm-modem-zte.h + +libmm_plugin_zte_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_zte_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + +libmm_plugin_zte_la_LIBADD = \ + $(builddir)/libicera-utils.la + + +# Longcheer (and rebranded dongles) +libmm_plugin_longcheer_la_SOURCES = \ + mm-plugin-longcheer.c \ + mm-plugin-longcheer.h \ + mm-modem-longcheer-gsm.c \ + mm-modem-longcheer-gsm.h + +libmm_plugin_longcheer_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_longcheer_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# AnyData CDMA +libmm_plugin_anydata_la_SOURCES = \ + mm-plugin-anydata.c \ + mm-plugin-anydata.h \ + mm-modem-anydata-cdma.c \ + mm-modem-anydata-cdma.h + +libmm_plugin_anydata_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_anydata_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# SimTech +libmm_plugin_simtech_la_SOURCES = \ + mm-plugin-simtech.c \ + mm-plugin-simtech.h \ + mm-modem-simtech-gsm.c \ + mm-modem-simtech-gsm.h + +libmm_plugin_simtech_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_simtech_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Alcatel/TCT/JRD x220D and possibly others +libmm_plugin_x22x_la_SOURCES = \ + mm-plugin-x22x.c \ + mm-plugin-x22x.h \ + mm-modem-x22x-gsm.c \ + mm-modem-x22x-gsm.h + +libmm_plugin_x22x_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_x22x_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Linktop +libmm_plugin_linktop_la_SOURCES = \ + mm-plugin-linktop.c \ + mm-plugin-linktop.h \ + mm-modem-linktop.c \ + mm-modem-linktop.h + +libmm_plugin_linktop_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_linktop_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + + +# Samsung modem +libmm_plugin_samsung_la_SOURCES = \ + mm-plugin-samsung.c \ + mm-plugin-samsung.h \ + mm-modem-samsung-gsm.c \ + mm-modem-samsung-gsm.h + +libmm_plugin_samsung_la_CPPFLAGS = \ + $(MM_CFLAGS) \ + $(GUDEV_CFLAGS) \ + -I$(top_srcdir)/src + +libmm_plugin_samsung_la_LDFLAGS = \ + $(GUDEV_LDFLAGS) \ + -module \ + -avoid-version + +udevrulesdir = $(UDEV_BASE_DIR)/rules.d +udevrules_DATA = \ + 77-mm-ericsson-mbm.rules \ + 77-mm-zte-port-types.rules \ + 77-mm-longcheer-port-types.rules \ + 77-mm-simtech-port-types.rules \ + 77-mm-x22x-port-types.rules + +BUILT_SOURCES = \ + mm-modem-gsm-hso-glue.h + +CLEANFILES = $(BUILT_SOURCES) +EXTRA_DIST = \ + $(udevrules_DATA) \ + mm-modem-option-utils.c + +all: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(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 plugins/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu plugins/Makefile +.PRECIOUS: 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__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + 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): + +clean-noinstLTLIBRARIES: + -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) + @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libicera-utils.la: $(libicera_utils_la_OBJECTS) $(libicera_utils_la_DEPENDENCIES) + $(AM_V_CCLD)$(LINK) $(libicera_utils_la_OBJECTS) $(libicera_utils_la_LIBADD) $(LIBS) +libmm-plugin-anydata.la: $(libmm_plugin_anydata_la_OBJECTS) $(libmm_plugin_anydata_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_anydata_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_anydata_la_OBJECTS) $(libmm_plugin_anydata_la_LIBADD) $(LIBS) +libmm-plugin-generic.la: $(libmm_plugin_generic_la_OBJECTS) $(libmm_plugin_generic_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_generic_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_generic_la_OBJECTS) $(libmm_plugin_generic_la_LIBADD) $(LIBS) +libmm-plugin-gobi.la: $(libmm_plugin_gobi_la_OBJECTS) $(libmm_plugin_gobi_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_gobi_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_gobi_la_OBJECTS) $(libmm_plugin_gobi_la_LIBADD) $(LIBS) +libmm-plugin-hso.la: $(libmm_plugin_hso_la_OBJECTS) $(libmm_plugin_hso_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_hso_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_hso_la_OBJECTS) $(libmm_plugin_hso_la_LIBADD) $(LIBS) +libmm-plugin-huawei.la: $(libmm_plugin_huawei_la_OBJECTS) $(libmm_plugin_huawei_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_huawei_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_huawei_la_OBJECTS) $(libmm_plugin_huawei_la_LIBADD) $(LIBS) +libmm-plugin-linktop.la: $(libmm_plugin_linktop_la_OBJECTS) $(libmm_plugin_linktop_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_linktop_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_linktop_la_OBJECTS) $(libmm_plugin_linktop_la_LIBADD) $(LIBS) +libmm-plugin-longcheer.la: $(libmm_plugin_longcheer_la_OBJECTS) $(libmm_plugin_longcheer_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_longcheer_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_longcheer_la_OBJECTS) $(libmm_plugin_longcheer_la_LIBADD) $(LIBS) +libmm-plugin-mbm.la: $(libmm_plugin_mbm_la_OBJECTS) $(libmm_plugin_mbm_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_mbm_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_mbm_la_OBJECTS) $(libmm_plugin_mbm_la_LIBADD) $(LIBS) +libmm-plugin-moto-c.la: $(libmm_plugin_moto_c_la_OBJECTS) $(libmm_plugin_moto_c_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_moto_c_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_moto_c_la_OBJECTS) $(libmm_plugin_moto_c_la_LIBADD) $(LIBS) +libmm-plugin-nokia.la: $(libmm_plugin_nokia_la_OBJECTS) $(libmm_plugin_nokia_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_nokia_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_nokia_la_OBJECTS) $(libmm_plugin_nokia_la_LIBADD) $(LIBS) +libmm-plugin-novatel.la: $(libmm_plugin_novatel_la_OBJECTS) $(libmm_plugin_novatel_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_novatel_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_novatel_la_OBJECTS) $(libmm_plugin_novatel_la_LIBADD) $(LIBS) +libmm-plugin-option.la: $(libmm_plugin_option_la_OBJECTS) $(libmm_plugin_option_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_option_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_option_la_OBJECTS) $(libmm_plugin_option_la_LIBADD) $(LIBS) +libmm-plugin-samsung.la: $(libmm_plugin_samsung_la_OBJECTS) $(libmm_plugin_samsung_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_samsung_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_samsung_la_OBJECTS) $(libmm_plugin_samsung_la_LIBADD) $(LIBS) +libmm-plugin-sierra.la: $(libmm_plugin_sierra_la_OBJECTS) $(libmm_plugin_sierra_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_sierra_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_sierra_la_OBJECTS) $(libmm_plugin_sierra_la_LIBADD) $(LIBS) +libmm-plugin-simtech.la: $(libmm_plugin_simtech_la_OBJECTS) $(libmm_plugin_simtech_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_simtech_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_simtech_la_OBJECTS) $(libmm_plugin_simtech_la_LIBADD) $(LIBS) +libmm-plugin-wavecom.la: $(libmm_plugin_wavecom_la_OBJECTS) $(libmm_plugin_wavecom_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_wavecom_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_wavecom_la_OBJECTS) $(libmm_plugin_wavecom_la_LIBADD) $(LIBS) +libmm-plugin-x22x.la: $(libmm_plugin_x22x_la_OBJECTS) $(libmm_plugin_x22x_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_x22x_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_x22x_la_OBJECTS) $(libmm_plugin_x22x_la_LIBADD) $(LIBS) +libmm-plugin-zte.la: $(libmm_plugin_zte_la_OBJECTS) $(libmm_plugin_zte_la_DEPENDENCIES) + $(AM_V_CCLD)$(libmm_plugin_zte_la_LINK) -rpath $(pkglibdir) $(libmm_plugin_zte_la_OBJECTS) $(libmm_plugin_zte_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libicera_utils_la-mm-modem-icera.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_anydata_la-mm-modem-anydata-cdma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_anydata_la-mm-plugin-anydata.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_generic_la-mm-plugin-generic.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_gobi_la-mm-modem-gobi-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_gobi_la-mm-plugin-gobi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_hso_la-mm-modem-hso.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_hso_la-mm-plugin-hso.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_huawei_la-mm-modem-huawei-cdma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_huawei_la-mm-modem-huawei-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_huawei_la-mm-plugin-huawei.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_linktop_la-mm-modem-linktop.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_linktop_la-mm-plugin-linktop.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_longcheer_la-mm-plugin-longcheer.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_mbm_la-mm-modem-mbm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_mbm_la-mm-plugin-mbm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_moto_c_la-mm-plugin-moto-c.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_nokia_la-mm-modem-nokia.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_nokia_la-mm-plugin-nokia.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_novatel_la-mm-modem-novatel-cdma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_novatel_la-mm-modem-novatel-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_novatel_la-mm-plugin-novatel.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_option_la-mm-modem-option.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_option_la-mm-plugin-option.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_samsung_la-mm-modem-samsung-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_samsung_la-mm-plugin-samsung.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_sierra_la-mm-modem-sierra-cdma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_sierra_la-mm-modem-sierra-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_sierra_la-mm-plugin-sierra.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_simtech_la-mm-modem-simtech-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_simtech_la-mm-plugin-simtech.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_wavecom_la-mm-plugin-wavecom.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_x22x_la-mm-modem-x22x-gsm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_x22x_la-mm-plugin-x22x.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_zte_la-mm-modem-zte.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_plugin_zte_la-mm-plugin-zte.Plo@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libicera_utils_la-mm-modem-icera.lo: mm-modem-icera.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libicera_utils_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libicera_utils_la-mm-modem-icera.lo -MD -MP -MF $(DEPDIR)/libicera_utils_la-mm-modem-icera.Tpo -c -o libicera_utils_la-mm-modem-icera.lo `test -f 'mm-modem-icera.c' || echo '$(srcdir)/'`mm-modem-icera.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libicera_utils_la-mm-modem-icera.Tpo $(DEPDIR)/libicera_utils_la-mm-modem-icera.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-icera.c' object='libicera_utils_la-mm-modem-icera.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libicera_utils_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libicera_utils_la-mm-modem-icera.lo `test -f 'mm-modem-icera.c' || echo '$(srcdir)/'`mm-modem-icera.c + +libmm_plugin_anydata_la-mm-plugin-anydata.lo: mm-plugin-anydata.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_anydata_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_anydata_la-mm-plugin-anydata.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_anydata_la-mm-plugin-anydata.Tpo -c -o libmm_plugin_anydata_la-mm-plugin-anydata.lo `test -f 'mm-plugin-anydata.c' || echo '$(srcdir)/'`mm-plugin-anydata.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_anydata_la-mm-plugin-anydata.Tpo $(DEPDIR)/libmm_plugin_anydata_la-mm-plugin-anydata.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-anydata.c' object='libmm_plugin_anydata_la-mm-plugin-anydata.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_anydata_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_anydata_la-mm-plugin-anydata.lo `test -f 'mm-plugin-anydata.c' || echo '$(srcdir)/'`mm-plugin-anydata.c + +libmm_plugin_anydata_la-mm-modem-anydata-cdma.lo: mm-modem-anydata-cdma.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_anydata_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_anydata_la-mm-modem-anydata-cdma.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_anydata_la-mm-modem-anydata-cdma.Tpo -c -o libmm_plugin_anydata_la-mm-modem-anydata-cdma.lo `test -f 'mm-modem-anydata-cdma.c' || echo '$(srcdir)/'`mm-modem-anydata-cdma.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_anydata_la-mm-modem-anydata-cdma.Tpo $(DEPDIR)/libmm_plugin_anydata_la-mm-modem-anydata-cdma.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-anydata-cdma.c' object='libmm_plugin_anydata_la-mm-modem-anydata-cdma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_anydata_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_anydata_la-mm-modem-anydata-cdma.lo `test -f 'mm-modem-anydata-cdma.c' || echo '$(srcdir)/'`mm-modem-anydata-cdma.c + +libmm_plugin_generic_la-mm-plugin-generic.lo: mm-plugin-generic.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_generic_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_generic_la-mm-plugin-generic.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_generic_la-mm-plugin-generic.Tpo -c -o libmm_plugin_generic_la-mm-plugin-generic.lo `test -f 'mm-plugin-generic.c' || echo '$(srcdir)/'`mm-plugin-generic.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_generic_la-mm-plugin-generic.Tpo $(DEPDIR)/libmm_plugin_generic_la-mm-plugin-generic.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-generic.c' object='libmm_plugin_generic_la-mm-plugin-generic.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_generic_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_generic_la-mm-plugin-generic.lo `test -f 'mm-plugin-generic.c' || echo '$(srcdir)/'`mm-plugin-generic.c + +libmm_plugin_gobi_la-mm-plugin-gobi.lo: mm-plugin-gobi.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_gobi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_gobi_la-mm-plugin-gobi.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_gobi_la-mm-plugin-gobi.Tpo -c -o libmm_plugin_gobi_la-mm-plugin-gobi.lo `test -f 'mm-plugin-gobi.c' || echo '$(srcdir)/'`mm-plugin-gobi.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_gobi_la-mm-plugin-gobi.Tpo $(DEPDIR)/libmm_plugin_gobi_la-mm-plugin-gobi.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-gobi.c' object='libmm_plugin_gobi_la-mm-plugin-gobi.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_gobi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_gobi_la-mm-plugin-gobi.lo `test -f 'mm-plugin-gobi.c' || echo '$(srcdir)/'`mm-plugin-gobi.c + +libmm_plugin_gobi_la-mm-modem-gobi-gsm.lo: mm-modem-gobi-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_gobi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_gobi_la-mm-modem-gobi-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_gobi_la-mm-modem-gobi-gsm.Tpo -c -o libmm_plugin_gobi_la-mm-modem-gobi-gsm.lo `test -f 'mm-modem-gobi-gsm.c' || echo '$(srcdir)/'`mm-modem-gobi-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_gobi_la-mm-modem-gobi-gsm.Tpo $(DEPDIR)/libmm_plugin_gobi_la-mm-modem-gobi-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-gobi-gsm.c' object='libmm_plugin_gobi_la-mm-modem-gobi-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_gobi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_gobi_la-mm-modem-gobi-gsm.lo `test -f 'mm-modem-gobi-gsm.c' || echo '$(srcdir)/'`mm-modem-gobi-gsm.c + +libmm_plugin_hso_la-mm-plugin-hso.lo: mm-plugin-hso.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_hso_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_hso_la-mm-plugin-hso.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_hso_la-mm-plugin-hso.Tpo -c -o libmm_plugin_hso_la-mm-plugin-hso.lo `test -f 'mm-plugin-hso.c' || echo '$(srcdir)/'`mm-plugin-hso.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_hso_la-mm-plugin-hso.Tpo $(DEPDIR)/libmm_plugin_hso_la-mm-plugin-hso.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-hso.c' object='libmm_plugin_hso_la-mm-plugin-hso.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_hso_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_hso_la-mm-plugin-hso.lo `test -f 'mm-plugin-hso.c' || echo '$(srcdir)/'`mm-plugin-hso.c + +libmm_plugin_hso_la-mm-modem-hso.lo: mm-modem-hso.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_hso_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_hso_la-mm-modem-hso.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_hso_la-mm-modem-hso.Tpo -c -o libmm_plugin_hso_la-mm-modem-hso.lo `test -f 'mm-modem-hso.c' || echo '$(srcdir)/'`mm-modem-hso.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_hso_la-mm-modem-hso.Tpo $(DEPDIR)/libmm_plugin_hso_la-mm-modem-hso.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-hso.c' object='libmm_plugin_hso_la-mm-modem-hso.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_hso_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_hso_la-mm-modem-hso.lo `test -f 'mm-modem-hso.c' || echo '$(srcdir)/'`mm-modem-hso.c + +libmm_plugin_huawei_la-mm-plugin-huawei.lo: mm-plugin-huawei.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_huawei_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_huawei_la-mm-plugin-huawei.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_huawei_la-mm-plugin-huawei.Tpo -c -o libmm_plugin_huawei_la-mm-plugin-huawei.lo `test -f 'mm-plugin-huawei.c' || echo '$(srcdir)/'`mm-plugin-huawei.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_huawei_la-mm-plugin-huawei.Tpo $(DEPDIR)/libmm_plugin_huawei_la-mm-plugin-huawei.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-huawei.c' object='libmm_plugin_huawei_la-mm-plugin-huawei.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_huawei_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_huawei_la-mm-plugin-huawei.lo `test -f 'mm-plugin-huawei.c' || echo '$(srcdir)/'`mm-plugin-huawei.c + +libmm_plugin_huawei_la-mm-modem-huawei-gsm.lo: mm-modem-huawei-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_huawei_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_huawei_la-mm-modem-huawei-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_huawei_la-mm-modem-huawei-gsm.Tpo -c -o libmm_plugin_huawei_la-mm-modem-huawei-gsm.lo `test -f 'mm-modem-huawei-gsm.c' || echo '$(srcdir)/'`mm-modem-huawei-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_huawei_la-mm-modem-huawei-gsm.Tpo $(DEPDIR)/libmm_plugin_huawei_la-mm-modem-huawei-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-huawei-gsm.c' object='libmm_plugin_huawei_la-mm-modem-huawei-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_huawei_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_huawei_la-mm-modem-huawei-gsm.lo `test -f 'mm-modem-huawei-gsm.c' || echo '$(srcdir)/'`mm-modem-huawei-gsm.c + +libmm_plugin_huawei_la-mm-modem-huawei-cdma.lo: mm-modem-huawei-cdma.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_huawei_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_huawei_la-mm-modem-huawei-cdma.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_huawei_la-mm-modem-huawei-cdma.Tpo -c -o libmm_plugin_huawei_la-mm-modem-huawei-cdma.lo `test -f 'mm-modem-huawei-cdma.c' || echo '$(srcdir)/'`mm-modem-huawei-cdma.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_huawei_la-mm-modem-huawei-cdma.Tpo $(DEPDIR)/libmm_plugin_huawei_la-mm-modem-huawei-cdma.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-huawei-cdma.c' object='libmm_plugin_huawei_la-mm-modem-huawei-cdma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_huawei_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_huawei_la-mm-modem-huawei-cdma.lo `test -f 'mm-modem-huawei-cdma.c' || echo '$(srcdir)/'`mm-modem-huawei-cdma.c + +libmm_plugin_linktop_la-mm-plugin-linktop.lo: mm-plugin-linktop.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_linktop_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_linktop_la-mm-plugin-linktop.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_linktop_la-mm-plugin-linktop.Tpo -c -o libmm_plugin_linktop_la-mm-plugin-linktop.lo `test -f 'mm-plugin-linktop.c' || echo '$(srcdir)/'`mm-plugin-linktop.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_linktop_la-mm-plugin-linktop.Tpo $(DEPDIR)/libmm_plugin_linktop_la-mm-plugin-linktop.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-linktop.c' object='libmm_plugin_linktop_la-mm-plugin-linktop.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_linktop_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_linktop_la-mm-plugin-linktop.lo `test -f 'mm-plugin-linktop.c' || echo '$(srcdir)/'`mm-plugin-linktop.c + +libmm_plugin_linktop_la-mm-modem-linktop.lo: mm-modem-linktop.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_linktop_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_linktop_la-mm-modem-linktop.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_linktop_la-mm-modem-linktop.Tpo -c -o libmm_plugin_linktop_la-mm-modem-linktop.lo `test -f 'mm-modem-linktop.c' || echo '$(srcdir)/'`mm-modem-linktop.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_linktop_la-mm-modem-linktop.Tpo $(DEPDIR)/libmm_plugin_linktop_la-mm-modem-linktop.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-linktop.c' object='libmm_plugin_linktop_la-mm-modem-linktop.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_linktop_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_linktop_la-mm-modem-linktop.lo `test -f 'mm-modem-linktop.c' || echo '$(srcdir)/'`mm-modem-linktop.c + +libmm_plugin_longcheer_la-mm-plugin-longcheer.lo: mm-plugin-longcheer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_longcheer_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_longcheer_la-mm-plugin-longcheer.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_longcheer_la-mm-plugin-longcheer.Tpo -c -o libmm_plugin_longcheer_la-mm-plugin-longcheer.lo `test -f 'mm-plugin-longcheer.c' || echo '$(srcdir)/'`mm-plugin-longcheer.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_longcheer_la-mm-plugin-longcheer.Tpo $(DEPDIR)/libmm_plugin_longcheer_la-mm-plugin-longcheer.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-longcheer.c' object='libmm_plugin_longcheer_la-mm-plugin-longcheer.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_longcheer_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_longcheer_la-mm-plugin-longcheer.lo `test -f 'mm-plugin-longcheer.c' || echo '$(srcdir)/'`mm-plugin-longcheer.c + +libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.lo: mm-modem-longcheer-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_longcheer_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.Tpo -c -o libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.lo `test -f 'mm-modem-longcheer-gsm.c' || echo '$(srcdir)/'`mm-modem-longcheer-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.Tpo $(DEPDIR)/libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-longcheer-gsm.c' object='libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_longcheer_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_longcheer_la-mm-modem-longcheer-gsm.lo `test -f 'mm-modem-longcheer-gsm.c' || echo '$(srcdir)/'`mm-modem-longcheer-gsm.c + +libmm_plugin_mbm_la-mm-plugin-mbm.lo: mm-plugin-mbm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_mbm_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_mbm_la-mm-plugin-mbm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_mbm_la-mm-plugin-mbm.Tpo -c -o libmm_plugin_mbm_la-mm-plugin-mbm.lo `test -f 'mm-plugin-mbm.c' || echo '$(srcdir)/'`mm-plugin-mbm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_mbm_la-mm-plugin-mbm.Tpo $(DEPDIR)/libmm_plugin_mbm_la-mm-plugin-mbm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-mbm.c' object='libmm_plugin_mbm_la-mm-plugin-mbm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_mbm_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_mbm_la-mm-plugin-mbm.lo `test -f 'mm-plugin-mbm.c' || echo '$(srcdir)/'`mm-plugin-mbm.c + +libmm_plugin_mbm_la-mm-modem-mbm.lo: mm-modem-mbm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_mbm_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_mbm_la-mm-modem-mbm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_mbm_la-mm-modem-mbm.Tpo -c -o libmm_plugin_mbm_la-mm-modem-mbm.lo `test -f 'mm-modem-mbm.c' || echo '$(srcdir)/'`mm-modem-mbm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_mbm_la-mm-modem-mbm.Tpo $(DEPDIR)/libmm_plugin_mbm_la-mm-modem-mbm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-mbm.c' object='libmm_plugin_mbm_la-mm-modem-mbm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_mbm_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_mbm_la-mm-modem-mbm.lo `test -f 'mm-modem-mbm.c' || echo '$(srcdir)/'`mm-modem-mbm.c + +libmm_plugin_moto_c_la-mm-plugin-moto-c.lo: mm-plugin-moto-c.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_moto_c_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_moto_c_la-mm-plugin-moto-c.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_moto_c_la-mm-plugin-moto-c.Tpo -c -o libmm_plugin_moto_c_la-mm-plugin-moto-c.lo `test -f 'mm-plugin-moto-c.c' || echo '$(srcdir)/'`mm-plugin-moto-c.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_moto_c_la-mm-plugin-moto-c.Tpo $(DEPDIR)/libmm_plugin_moto_c_la-mm-plugin-moto-c.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-moto-c.c' object='libmm_plugin_moto_c_la-mm-plugin-moto-c.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_moto_c_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_moto_c_la-mm-plugin-moto-c.lo `test -f 'mm-plugin-moto-c.c' || echo '$(srcdir)/'`mm-plugin-moto-c.c + +libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.lo: mm-modem-moto-c-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_moto_c_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.Tpo -c -o libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.lo `test -f 'mm-modem-moto-c-gsm.c' || echo '$(srcdir)/'`mm-modem-moto-c-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.Tpo $(DEPDIR)/libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-moto-c-gsm.c' object='libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_moto_c_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_moto_c_la-mm-modem-moto-c-gsm.lo `test -f 'mm-modem-moto-c-gsm.c' || echo '$(srcdir)/'`mm-modem-moto-c-gsm.c + +libmm_plugin_nokia_la-mm-plugin-nokia.lo: mm-plugin-nokia.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_nokia_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_nokia_la-mm-plugin-nokia.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_nokia_la-mm-plugin-nokia.Tpo -c -o libmm_plugin_nokia_la-mm-plugin-nokia.lo `test -f 'mm-plugin-nokia.c' || echo '$(srcdir)/'`mm-plugin-nokia.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_nokia_la-mm-plugin-nokia.Tpo $(DEPDIR)/libmm_plugin_nokia_la-mm-plugin-nokia.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-nokia.c' object='libmm_plugin_nokia_la-mm-plugin-nokia.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_nokia_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_nokia_la-mm-plugin-nokia.lo `test -f 'mm-plugin-nokia.c' || echo '$(srcdir)/'`mm-plugin-nokia.c + +libmm_plugin_nokia_la-mm-modem-nokia.lo: mm-modem-nokia.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_nokia_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_nokia_la-mm-modem-nokia.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_nokia_la-mm-modem-nokia.Tpo -c -o libmm_plugin_nokia_la-mm-modem-nokia.lo `test -f 'mm-modem-nokia.c' || echo '$(srcdir)/'`mm-modem-nokia.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_nokia_la-mm-modem-nokia.Tpo $(DEPDIR)/libmm_plugin_nokia_la-mm-modem-nokia.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-nokia.c' object='libmm_plugin_nokia_la-mm-modem-nokia.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_nokia_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_nokia_la-mm-modem-nokia.lo `test -f 'mm-modem-nokia.c' || echo '$(srcdir)/'`mm-modem-nokia.c + +libmm_plugin_novatel_la-mm-plugin-novatel.lo: mm-plugin-novatel.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_novatel_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_novatel_la-mm-plugin-novatel.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_novatel_la-mm-plugin-novatel.Tpo -c -o libmm_plugin_novatel_la-mm-plugin-novatel.lo `test -f 'mm-plugin-novatel.c' || echo '$(srcdir)/'`mm-plugin-novatel.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_novatel_la-mm-plugin-novatel.Tpo $(DEPDIR)/libmm_plugin_novatel_la-mm-plugin-novatel.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-novatel.c' object='libmm_plugin_novatel_la-mm-plugin-novatel.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_novatel_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_novatel_la-mm-plugin-novatel.lo `test -f 'mm-plugin-novatel.c' || echo '$(srcdir)/'`mm-plugin-novatel.c + +libmm_plugin_novatel_la-mm-modem-novatel-gsm.lo: mm-modem-novatel-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_novatel_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_novatel_la-mm-modem-novatel-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_novatel_la-mm-modem-novatel-gsm.Tpo -c -o libmm_plugin_novatel_la-mm-modem-novatel-gsm.lo `test -f 'mm-modem-novatel-gsm.c' || echo '$(srcdir)/'`mm-modem-novatel-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_novatel_la-mm-modem-novatel-gsm.Tpo $(DEPDIR)/libmm_plugin_novatel_la-mm-modem-novatel-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-novatel-gsm.c' object='libmm_plugin_novatel_la-mm-modem-novatel-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_novatel_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_novatel_la-mm-modem-novatel-gsm.lo `test -f 'mm-modem-novatel-gsm.c' || echo '$(srcdir)/'`mm-modem-novatel-gsm.c + +libmm_plugin_novatel_la-mm-modem-novatel-cdma.lo: mm-modem-novatel-cdma.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_novatel_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_novatel_la-mm-modem-novatel-cdma.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_novatel_la-mm-modem-novatel-cdma.Tpo -c -o libmm_plugin_novatel_la-mm-modem-novatel-cdma.lo `test -f 'mm-modem-novatel-cdma.c' || echo '$(srcdir)/'`mm-modem-novatel-cdma.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_novatel_la-mm-modem-novatel-cdma.Tpo $(DEPDIR)/libmm_plugin_novatel_la-mm-modem-novatel-cdma.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-novatel-cdma.c' object='libmm_plugin_novatel_la-mm-modem-novatel-cdma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_novatel_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_novatel_la-mm-modem-novatel-cdma.lo `test -f 'mm-modem-novatel-cdma.c' || echo '$(srcdir)/'`mm-modem-novatel-cdma.c + +libmm_plugin_option_la-mm-plugin-option.lo: mm-plugin-option.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_option_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_option_la-mm-plugin-option.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_option_la-mm-plugin-option.Tpo -c -o libmm_plugin_option_la-mm-plugin-option.lo `test -f 'mm-plugin-option.c' || echo '$(srcdir)/'`mm-plugin-option.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_option_la-mm-plugin-option.Tpo $(DEPDIR)/libmm_plugin_option_la-mm-plugin-option.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-option.c' object='libmm_plugin_option_la-mm-plugin-option.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_option_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_option_la-mm-plugin-option.lo `test -f 'mm-plugin-option.c' || echo '$(srcdir)/'`mm-plugin-option.c + +libmm_plugin_option_la-mm-modem-option.lo: mm-modem-option.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_option_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_option_la-mm-modem-option.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_option_la-mm-modem-option.Tpo -c -o libmm_plugin_option_la-mm-modem-option.lo `test -f 'mm-modem-option.c' || echo '$(srcdir)/'`mm-modem-option.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_option_la-mm-modem-option.Tpo $(DEPDIR)/libmm_plugin_option_la-mm-modem-option.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-option.c' object='libmm_plugin_option_la-mm-modem-option.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_option_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_option_la-mm-modem-option.lo `test -f 'mm-modem-option.c' || echo '$(srcdir)/'`mm-modem-option.c + +libmm_plugin_samsung_la-mm-plugin-samsung.lo: mm-plugin-samsung.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_samsung_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_samsung_la-mm-plugin-samsung.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_samsung_la-mm-plugin-samsung.Tpo -c -o libmm_plugin_samsung_la-mm-plugin-samsung.lo `test -f 'mm-plugin-samsung.c' || echo '$(srcdir)/'`mm-plugin-samsung.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_samsung_la-mm-plugin-samsung.Tpo $(DEPDIR)/libmm_plugin_samsung_la-mm-plugin-samsung.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-samsung.c' object='libmm_plugin_samsung_la-mm-plugin-samsung.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_samsung_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_samsung_la-mm-plugin-samsung.lo `test -f 'mm-plugin-samsung.c' || echo '$(srcdir)/'`mm-plugin-samsung.c + +libmm_plugin_samsung_la-mm-modem-samsung-gsm.lo: mm-modem-samsung-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_samsung_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_samsung_la-mm-modem-samsung-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_samsung_la-mm-modem-samsung-gsm.Tpo -c -o libmm_plugin_samsung_la-mm-modem-samsung-gsm.lo `test -f 'mm-modem-samsung-gsm.c' || echo '$(srcdir)/'`mm-modem-samsung-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_samsung_la-mm-modem-samsung-gsm.Tpo $(DEPDIR)/libmm_plugin_samsung_la-mm-modem-samsung-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-samsung-gsm.c' object='libmm_plugin_samsung_la-mm-modem-samsung-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_samsung_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_samsung_la-mm-modem-samsung-gsm.lo `test -f 'mm-modem-samsung-gsm.c' || echo '$(srcdir)/'`mm-modem-samsung-gsm.c + +libmm_plugin_sierra_la-mm-plugin-sierra.lo: mm-plugin-sierra.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_sierra_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_sierra_la-mm-plugin-sierra.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_sierra_la-mm-plugin-sierra.Tpo -c -o libmm_plugin_sierra_la-mm-plugin-sierra.lo `test -f 'mm-plugin-sierra.c' || echo '$(srcdir)/'`mm-plugin-sierra.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_sierra_la-mm-plugin-sierra.Tpo $(DEPDIR)/libmm_plugin_sierra_la-mm-plugin-sierra.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-sierra.c' object='libmm_plugin_sierra_la-mm-plugin-sierra.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_sierra_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_sierra_la-mm-plugin-sierra.lo `test -f 'mm-plugin-sierra.c' || echo '$(srcdir)/'`mm-plugin-sierra.c + +libmm_plugin_sierra_la-mm-modem-sierra-gsm.lo: mm-modem-sierra-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_sierra_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_sierra_la-mm-modem-sierra-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_sierra_la-mm-modem-sierra-gsm.Tpo -c -o libmm_plugin_sierra_la-mm-modem-sierra-gsm.lo `test -f 'mm-modem-sierra-gsm.c' || echo '$(srcdir)/'`mm-modem-sierra-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_sierra_la-mm-modem-sierra-gsm.Tpo $(DEPDIR)/libmm_plugin_sierra_la-mm-modem-sierra-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-sierra-gsm.c' object='libmm_plugin_sierra_la-mm-modem-sierra-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_sierra_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_sierra_la-mm-modem-sierra-gsm.lo `test -f 'mm-modem-sierra-gsm.c' || echo '$(srcdir)/'`mm-modem-sierra-gsm.c + +libmm_plugin_sierra_la-mm-modem-sierra-cdma.lo: mm-modem-sierra-cdma.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_sierra_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_sierra_la-mm-modem-sierra-cdma.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_sierra_la-mm-modem-sierra-cdma.Tpo -c -o libmm_plugin_sierra_la-mm-modem-sierra-cdma.lo `test -f 'mm-modem-sierra-cdma.c' || echo '$(srcdir)/'`mm-modem-sierra-cdma.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_sierra_la-mm-modem-sierra-cdma.Tpo $(DEPDIR)/libmm_plugin_sierra_la-mm-modem-sierra-cdma.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-sierra-cdma.c' object='libmm_plugin_sierra_la-mm-modem-sierra-cdma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_sierra_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_sierra_la-mm-modem-sierra-cdma.lo `test -f 'mm-modem-sierra-cdma.c' || echo '$(srcdir)/'`mm-modem-sierra-cdma.c + +libmm_plugin_simtech_la-mm-plugin-simtech.lo: mm-plugin-simtech.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_simtech_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_simtech_la-mm-plugin-simtech.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_simtech_la-mm-plugin-simtech.Tpo -c -o libmm_plugin_simtech_la-mm-plugin-simtech.lo `test -f 'mm-plugin-simtech.c' || echo '$(srcdir)/'`mm-plugin-simtech.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_simtech_la-mm-plugin-simtech.Tpo $(DEPDIR)/libmm_plugin_simtech_la-mm-plugin-simtech.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-simtech.c' object='libmm_plugin_simtech_la-mm-plugin-simtech.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_simtech_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_simtech_la-mm-plugin-simtech.lo `test -f 'mm-plugin-simtech.c' || echo '$(srcdir)/'`mm-plugin-simtech.c + +libmm_plugin_simtech_la-mm-modem-simtech-gsm.lo: mm-modem-simtech-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_simtech_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_simtech_la-mm-modem-simtech-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_simtech_la-mm-modem-simtech-gsm.Tpo -c -o libmm_plugin_simtech_la-mm-modem-simtech-gsm.lo `test -f 'mm-modem-simtech-gsm.c' || echo '$(srcdir)/'`mm-modem-simtech-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_simtech_la-mm-modem-simtech-gsm.Tpo $(DEPDIR)/libmm_plugin_simtech_la-mm-modem-simtech-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-simtech-gsm.c' object='libmm_plugin_simtech_la-mm-modem-simtech-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_simtech_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_simtech_la-mm-modem-simtech-gsm.lo `test -f 'mm-modem-simtech-gsm.c' || echo '$(srcdir)/'`mm-modem-simtech-gsm.c + +libmm_plugin_wavecom_la-mm-plugin-wavecom.lo: mm-plugin-wavecom.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_wavecom_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_wavecom_la-mm-plugin-wavecom.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_wavecom_la-mm-plugin-wavecom.Tpo -c -o libmm_plugin_wavecom_la-mm-plugin-wavecom.lo `test -f 'mm-plugin-wavecom.c' || echo '$(srcdir)/'`mm-plugin-wavecom.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_wavecom_la-mm-plugin-wavecom.Tpo $(DEPDIR)/libmm_plugin_wavecom_la-mm-plugin-wavecom.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-wavecom.c' object='libmm_plugin_wavecom_la-mm-plugin-wavecom.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_wavecom_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_wavecom_la-mm-plugin-wavecom.lo `test -f 'mm-plugin-wavecom.c' || echo '$(srcdir)/'`mm-plugin-wavecom.c + +libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.lo: mm-modem-wavecom-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_wavecom_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.Tpo -c -o libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.lo `test -f 'mm-modem-wavecom-gsm.c' || echo '$(srcdir)/'`mm-modem-wavecom-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.Tpo $(DEPDIR)/libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-wavecom-gsm.c' object='libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_wavecom_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_wavecom_la-mm-modem-wavecom-gsm.lo `test -f 'mm-modem-wavecom-gsm.c' || echo '$(srcdir)/'`mm-modem-wavecom-gsm.c + +libmm_plugin_x22x_la-mm-plugin-x22x.lo: mm-plugin-x22x.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_x22x_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_x22x_la-mm-plugin-x22x.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_x22x_la-mm-plugin-x22x.Tpo -c -o libmm_plugin_x22x_la-mm-plugin-x22x.lo `test -f 'mm-plugin-x22x.c' || echo '$(srcdir)/'`mm-plugin-x22x.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_x22x_la-mm-plugin-x22x.Tpo $(DEPDIR)/libmm_plugin_x22x_la-mm-plugin-x22x.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-x22x.c' object='libmm_plugin_x22x_la-mm-plugin-x22x.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_x22x_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_x22x_la-mm-plugin-x22x.lo `test -f 'mm-plugin-x22x.c' || echo '$(srcdir)/'`mm-plugin-x22x.c + +libmm_plugin_x22x_la-mm-modem-x22x-gsm.lo: mm-modem-x22x-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_x22x_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_x22x_la-mm-modem-x22x-gsm.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_x22x_la-mm-modem-x22x-gsm.Tpo -c -o libmm_plugin_x22x_la-mm-modem-x22x-gsm.lo `test -f 'mm-modem-x22x-gsm.c' || echo '$(srcdir)/'`mm-modem-x22x-gsm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_x22x_la-mm-modem-x22x-gsm.Tpo $(DEPDIR)/libmm_plugin_x22x_la-mm-modem-x22x-gsm.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-x22x-gsm.c' object='libmm_plugin_x22x_la-mm-modem-x22x-gsm.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_x22x_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_x22x_la-mm-modem-x22x-gsm.lo `test -f 'mm-modem-x22x-gsm.c' || echo '$(srcdir)/'`mm-modem-x22x-gsm.c + +libmm_plugin_zte_la-mm-plugin-zte.lo: mm-plugin-zte.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_zte_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_zte_la-mm-plugin-zte.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_zte_la-mm-plugin-zte.Tpo -c -o libmm_plugin_zte_la-mm-plugin-zte.lo `test -f 'mm-plugin-zte.c' || echo '$(srcdir)/'`mm-plugin-zte.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_zte_la-mm-plugin-zte.Tpo $(DEPDIR)/libmm_plugin_zte_la-mm-plugin-zte.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-plugin-zte.c' object='libmm_plugin_zte_la-mm-plugin-zte.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_zte_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_zte_la-mm-plugin-zte.lo `test -f 'mm-plugin-zte.c' || echo '$(srcdir)/'`mm-plugin-zte.c + +libmm_plugin_zte_la-mm-modem-zte.lo: mm-modem-zte.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_zte_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_plugin_zte_la-mm-modem-zte.lo -MD -MP -MF $(DEPDIR)/libmm_plugin_zte_la-mm-modem-zte.Tpo -c -o libmm_plugin_zte_la-mm-modem-zte.lo `test -f 'mm-modem-zte.c' || echo '$(srcdir)/'`mm-modem-zte.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_plugin_zte_la-mm-modem-zte.Tpo $(DEPDIR)/libmm_plugin_zte_la-mm-modem-zte.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mm-modem-zte.c' object='libmm_plugin_zte_la-mm-modem-zte.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_plugin_zte_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_plugin_zte_la-mm-modem-zte.lo `test -f 'mm-modem-zte.c' || echo '$(srcdir)/'`mm-modem-zte.c + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-udevrulesDATA: $(udevrules_DATA) + @$(NORMAL_INSTALL) + test -z "$(udevrulesdir)" || $(MKDIR_P) "$(DESTDIR)$(udevrulesdir)" + @list='$(udevrules_DATA)'; test -n "$(udevrulesdir)" || list=; \ + 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)$(udevrulesdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(udevrulesdir)" || exit $$?; \ + done + +uninstall-udevrulesDATA: + @$(NORMAL_UNINSTALL) + @list='$(udevrules_DATA)'; test -n "$(udevrulesdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(udevrulesdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(udevrulesdir)" && rm -f $$files + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + 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 +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + 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" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(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: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) check-am +all-am: Makefile $(LTLIBRARIES) $(DATA) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)" "$(DESTDIR)$(udevrulesdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) 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: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +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." + -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +clean: clean-am + +clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-udevrulesDATA + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +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 -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES uninstall-udevrulesDATA + +.MAKE: all check install install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libtool clean-noinstLTLIBRARIES clean-pkglibLTLIBRARIES \ + ctags distclean distclean-compile 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-pkglibLTLIBRARIES install-ps install-ps-am \ + install-strip install-udevrulesDATA installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags uninstall uninstall-am uninstall-pkglibLTLIBRARIES \ + uninstall-udevrulesDATA + + +mm-modem-gsm-hso-glue.h: $(top_srcdir)/introspection/org.freedesktop.ModemManager.Modem.Gsm.Hso.xml + $(AM_V_GEN) dbus-binding-tool --prefix=mm_modem_gsm_hso --mode=glib-server --output=$@ $< + +# 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 --git a/plugins/mm-modem-anydata-cdma.c b/plugins/mm-modem-anydata-cdma.c index 0e7e65c..7b6b37a 100644 --- a/plugins/mm-modem-anydata-cdma.c +++ b/plugins/mm-modem-anydata-cdma.c @@ -128,6 +128,11 @@ evdo_state_done (MMAtSerialPort *port, GRegex *r; GMatchInfo *match_info; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { /* Leave superclass' reg state alone if AT*HSTATE isn't supported */ mm_callback_info_schedule (info); @@ -195,6 +200,11 @@ state_done (MMAtSerialPort *port, GRegex *r; GMatchInfo *match_info; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { /* Leave superclass' reg state alone if AT*STATE isn't supported */ mm_callback_info_schedule (info); diff --git a/plugins/mm-modem-gobi-gsm.c b/plugins/mm-modem-gobi-gsm.c index 7e2fa4c..ab19642 100644 --- a/plugins/mm-modem-gobi-gsm.c +++ b/plugins/mm-modem-gobi-gsm.c @@ -63,6 +63,11 @@ get_string_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error && response && !strcmp (response->str, "ERROR")) { info->error = g_error_new_literal (MM_MOBILE_ERROR, MM_MOBILE_ERROR_SIM_NOT_INSERTED, diff --git a/plugins/mm-modem-gsm-hso-glue.h b/plugins/mm-modem-gsm-hso-glue.h new file mode 100644 index 0000000..1418258 --- /dev/null +++ b/plugins/mm-modem-gsm-hso-glue.h @@ -0,0 +1,120 @@ +/* Generated by dbus-binding-tool; do not edit! */ + + +#ifndef __dbus_glib_marshal_mm_modem_gsm_hso_MARSHAL_H__ +#define __dbus_glib_marshal_mm_modem_gsm_hso_MARSHAL_H__ + +#include <glib-object.h> + +G_BEGIN_DECLS + +#ifdef G_ENABLE_DEBUG +#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) +#define g_marshal_value_peek_char(v) g_value_get_char (v) +#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) +#define g_marshal_value_peek_int(v) g_value_get_int (v) +#define g_marshal_value_peek_uint(v) g_value_get_uint (v) +#define g_marshal_value_peek_long(v) g_value_get_long (v) +#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) +#define g_marshal_value_peek_int64(v) g_value_get_int64 (v) +#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) +#define g_marshal_value_peek_enum(v) g_value_get_enum (v) +#define g_marshal_value_peek_flags(v) g_value_get_flags (v) +#define g_marshal_value_peek_float(v) g_value_get_float (v) +#define g_marshal_value_peek_double(v) g_value_get_double (v) +#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) +#define g_marshal_value_peek_param(v) g_value_get_param (v) +#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) +#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) +#define g_marshal_value_peek_object(v) g_value_get_object (v) +#define g_marshal_value_peek_variant(v) g_value_get_variant (v) +#else /* !G_ENABLE_DEBUG */ +/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. + * Do not access GValues directly in your code. Instead, use the + * g_value_get_*() functions + */ +#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int +#define g_marshal_value_peek_char(v) (v)->data[0].v_int +#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint +#define g_marshal_value_peek_int(v) (v)->data[0].v_int +#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint +#define g_marshal_value_peek_long(v) (v)->data[0].v_long +#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 +#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 +#define g_marshal_value_peek_enum(v) (v)->data[0].v_long +#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_float(v) (v)->data[0].v_float +#define g_marshal_value_peek_double(v) (v)->data[0].v_double +#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer +#endif /* !G_ENABLE_DEBUG */ + + +/* NONE:STRING,STRING,POINTER */ +extern void dbus_glib_marshal_mm_modem_gsm_hso_VOID__STRING_STRING_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +dbus_glib_marshal_mm_modem_gsm_hso_VOID__STRING_STRING_POINTER (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__STRING_STRING_POINTER) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer arg_3, + gpointer data2); + register GMarshalFunc_VOID__STRING_STRING_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__STRING_STRING_POINTER) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_string (param_values + 2), + g_marshal_value_peek_pointer (param_values + 3), + data2); +} +#define dbus_glib_marshal_mm_modem_gsm_hso_NONE__STRING_STRING_POINTER dbus_glib_marshal_mm_modem_gsm_hso_VOID__STRING_STRING_POINTER + +G_END_DECLS + +#endif /* __dbus_glib_marshal_mm_modem_gsm_hso_MARSHAL_H__ */ + +#include <dbus/dbus-glib.h> +static const DBusGMethodInfo dbus_glib_mm_modem_gsm_hso_methods[] = { + { (GCallback) impl_hso_authenticate, dbus_glib_marshal_mm_modem_gsm_hso_NONE__STRING_STRING_POINTER, 0 }, +}; + +const DBusGObjectInfo dbus_glib_mm_modem_gsm_hso_object_info = { 1, + dbus_glib_mm_modem_gsm_hso_methods, + 1, +"org.freedesktop.ModemManager.Modem.Gsm.Hso\0Authenticate\0A\0username\0I\0s\0password\0I\0s\0\0\0", +"\0", +"\0" +}; + diff --git a/plugins/mm-modem-hso.c b/plugins/mm-modem-hso.c index 7081666..e3d4dce 100644 --- a/plugins/mm-modem-hso.c +++ b/plugins/mm-modem-hso.c @@ -117,8 +117,16 @@ auth_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemHso *self = MM_MODEM_HSO (info->modem); - MMModemHsoPrivate *priv = MM_MODEM_HSO_GET_PRIVATE (self); + MMModemHso *self; + MMModemHsoPrivate *priv; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + self = MM_MODEM_HSO (info->modem); + priv = MM_MODEM_HSO_GET_PRIVATE (self); if (error) { priv->auth_idx++; @@ -257,6 +265,11 @@ hso_call_control_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error && !mm_callback_info_get_data (info, IGNORE_ERRORS_TAG)) info->error = g_error_copy (error); @@ -318,12 +331,13 @@ hso_enabled (MMModem *modem, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - GError *tmp_error; - tmp_error = mm_modem_check_removed (modem, error); - if (tmp_error) { - mm_generic_gsm_connect_complete (MM_GENERIC_GSM (modem), tmp_error, info); - g_clear_error (&tmp_error); + /* Do nothing if modem removed */ + if (!modem || mm_callback_info_check_modem_removed (info)) + return; + + if (error) { + mm_generic_gsm_connect_complete (MM_GENERIC_GSM (modem), error, info); } else { MMModemHsoPrivate *priv = MM_MODEM_HSO_GET_PRIVATE (modem); @@ -338,13 +352,14 @@ old_context_clear_done (MMModem *modem, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - GError *tmp_error; - tmp_error = mm_modem_check_removed (modem, error); - if (tmp_error) { - mm_generic_gsm_connect_complete (MM_GENERIC_GSM (modem), tmp_error, info); - g_clear_error (&tmp_error); - } else { + /* Do nothing if modem removed */ + if (!modem || mm_callback_info_check_modem_removed (info)) + return; + + if (error) + mm_generic_gsm_connect_complete (MM_GENERIC_GSM (modem), error, info); + else { /* Success, activate the PDP context and start the data session */ hso_call_control (MM_MODEM_HSO (modem), TRUE, FALSE, hso_enabled, info); } @@ -356,12 +371,13 @@ connect_auth_done (MMModem *modem, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - GError *tmp_error; - tmp_error = mm_modem_check_removed (modem, error); - if (tmp_error) { - mm_generic_gsm_connect_complete (MM_GENERIC_GSM (modem), tmp_error, info); - g_clear_error (&tmp_error); + /* Do nothing if modem removed */ + if (!modem || mm_callback_info_check_modem_removed (info)) + return; + + if (error) { + mm_generic_gsm_connect_complete (MM_GENERIC_GSM (modem), error, info); } else { /* Now connect; kill any existing connections first */ hso_call_control (MM_MODEM_HSO (modem), FALSE, TRUE, old_context_clear_done, info); @@ -491,6 +507,11 @@ get_ip4_config_done (MMAtSerialPort *port, guint32 tmp; gint cid; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); goto out; @@ -560,7 +581,14 @@ disconnect_owancall_done (MMAtSerialPort *port, GError *error, gpointer user_data) { - mm_callback_info_schedule ((MMCallbackInfo *) user_data); + MMCallbackInfo *info = (MMCallbackInfo *) user_data; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + mm_callback_info_schedule (info); } static void diff --git a/plugins/mm-modem-huawei-cdma.c b/plugins/mm-modem-huawei-cdma.c index 3aec470..b24ec64 100644 --- a/plugins/mm-modem-huawei-cdma.c +++ b/plugins/mm-modem-huawei-cdma.c @@ -167,6 +167,11 @@ sysinfo_done (MMAtSerialPort *port, GMatchInfo *match_info; const char *reply; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { /* Leave superclass' reg state alone if AT^SYSINFO isn't supported */ goto done; diff --git a/plugins/mm-modem-huawei-gsm.c b/plugins/mm-modem-huawei-gsm.c index df58d53..e038069 100644 --- a/plugins/mm-modem-huawei-gsm.c +++ b/plugins/mm-modem-huawei-gsm.c @@ -171,6 +171,11 @@ set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -232,11 +237,18 @@ get_allowed_mode_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemHuaweiGsm *self = MM_MODEM_HUAWEI_GSM (info->modem); + MMModemHuaweiGsm *self; int mode_a, mode_b, u1, u2; guint32 band; MMModemGsmAllowedMode mode = MM_MODEM_GSM_ALLOWED_MODE_ANY; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + self = MM_MODEM_HUAWEI_GSM (info->modem); + if (error) info->error = g_error_copy (error); else if (parse_syscfg (self, response->str, &mode_a, &mode_b, &band, &u1, &u2, &mode)) @@ -271,8 +283,16 @@ set_band_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemHuaweiGsm *self = MM_MODEM_HUAWEI_GSM (info->modem); - MMModemHuaweiGsmPrivate *priv = MM_MODEM_HUAWEI_GSM_GET_PRIVATE (self); + MMModemHuaweiGsm *self; + MMModemHuaweiGsmPrivate *priv; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + self = MM_MODEM_HUAWEI_GSM (info->modem); + priv = MM_MODEM_HUAWEI_GSM_GET_PRIVATE (self); if (error) info->error = g_error_copy (error); @@ -321,10 +341,17 @@ get_band_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemHuaweiGsm *self = MM_MODEM_HUAWEI_GSM (info->modem); + MMModemHuaweiGsm *self; int mode_a, mode_b, u1, u2; guint32 band; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + self = MM_MODEM_HUAWEI_GSM (info->modem); + if (error) info->error = g_error_copy (error); else if (parse_syscfg (self, response->str, &mode_a, &mode_b, &band, &u1, &u2, NULL)) { @@ -410,6 +437,11 @@ get_act_request_done (MMAtSerialPort *port, char *str; int srv_stat = 0; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); goto done; @@ -504,6 +536,11 @@ send_huawei_cpin_done (MMAtSerialPort *port, char *str = NULL; guint32 num = 0; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); goto done; @@ -710,12 +747,6 @@ do_enable_power_up_done (MMGenericGsm *gsm, /*****************************************************************************/ -typedef struct { - MMModem *modem; - MMModemFn callback; - gpointer user_data; -} DisableInfo; - static void disable_unsolicited_done (MMAtSerialPort *port, GString *response, @@ -723,12 +754,29 @@ disable_unsolicited_done (MMAtSerialPort *port, gpointer user_data) { - MMModem *parent_modem_iface; - DisableInfo *info = user_data; + MMCallbackInfo *info = (MMCallbackInfo *) user_data; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + /* Ignore all errors */ + mm_callback_info_schedule (info); +} + +static void +invoke_call_parent_disable_fn (MMCallbackInfo *info) +{ + /* Note: we won't call the parent disable if info->modem is no longer + * valid. The invoke is called always once the info gets scheduled, which + * may happen during removed modem detection. */ + if (info->modem) { + MMModem *parent_modem_iface; - parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); - parent_modem_iface->disable (info->modem, info->callback, info->user_data); - g_free (info); + parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); + parent_modem_iface->disable (info->modem, (MMModemFn)info->callback, info->user_data); + } } static void @@ -737,12 +785,12 @@ disable (MMModem *modem, gpointer user_data) { MMAtSerialPort *primary; - DisableInfo *info; + MMCallbackInfo *info; - info = g_malloc0 (sizeof (DisableInfo)); - info->callback = callback; - info->user_data = user_data; - info->modem = modem; + info = mm_callback_info_new_full (modem, + invoke_call_parent_disable_fn, + (GCallback)callback, + user_data); primary = mm_generic_gsm_get_at_port (MM_GENERIC_GSM (modem), MM_PORT_TYPE_PRIMARY); g_assert (primary); diff --git a/plugins/mm-modem-icera.c b/plugins/mm-modem-icera.c index d34e71e..b093b34 100644 --- a/plugins/mm-modem-icera.c +++ b/plugins/mm-modem-icera.c @@ -56,6 +56,11 @@ get_allowed_mode_done (MMAtSerialPort *port, MMCallbackInfo *info = (MMCallbackInfo *) user_data; gboolean parsed = FALSE; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else if (!g_str_has_prefix (response->str, "%IPSYS: ")) { @@ -119,6 +124,11 @@ set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -235,8 +245,14 @@ get_nwstate_done (MMAtSerialPort *port, { MMCallbackInfo *info = user_data; - info->error = mm_modem_check_removed (info->modem, error); - if (!info->error) { + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) + info->error = g_error_copy (error); + else { MMModemIcera *self = MM_MODEM_ICERA (info->modem); MMModemIceraPrivate *priv = MM_MODEM_ICERA_GET_PRIVATE (self); @@ -277,7 +293,14 @@ disconnect_ipdpact_done (MMAtSerialPort *port, GError *error, gpointer user_data) { - mm_callback_info_schedule ((MMCallbackInfo *) user_data); + MMCallbackInfo *info = (MMCallbackInfo *) user_data; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + mm_callback_info_schedule (info); } void @@ -458,6 +481,11 @@ icera_connected (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { mm_generic_gsm_connect_complete (MM_GENERIC_GSM (info->modem), error, info); } else { @@ -481,6 +509,11 @@ old_context_clear_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + /* Activate the PDP context and start the data session */ icera_call_control (MM_MODEM_ICERA (info->modem), TRUE, icera_connected, info); } @@ -493,6 +526,11 @@ auth_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) mm_generic_gsm_connect_complete (MM_GENERIC_GSM (info->modem), error, info); else { @@ -574,6 +612,11 @@ get_ip4_config_done (MMAtSerialPort *port, guint32 tmp; gint cid; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); goto out; @@ -710,8 +753,14 @@ is_icera_done (MMAtSerialPort *port, { MMCallbackInfo *info = user_data; - info->error = mm_modem_check_removed (info->modem, error); - if (!info->error) + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) + info->error = g_error_copy (error); + else mm_callback_info_set_result (info, GUINT_TO_POINTER (TRUE), NULL); mm_callback_info_schedule (info); } diff --git a/plugins/mm-modem-linktop.c b/plugins/mm-modem-linktop.c index 923c219..cfe0c0d 100644 --- a/plugins/mm-modem-linktop.c +++ b/plugins/mm-modem-linktop.c @@ -104,6 +104,11 @@ linktop_set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -127,7 +132,7 @@ set_allowed_mode (MMGenericGsm *gsm, mm_callback_info_schedule (info); return; } - + command = g_strdup_printf ("+CFUN=%d", linktop_parse_allowed_mode (mode)); mm_at_serial_port_queue_command (port, command, 3, linktop_set_allowed_mode_done, info); g_free (command); @@ -142,6 +147,11 @@ get_allowed_mode_done (MMAtSerialPort *port, MMCallbackInfo *info = (MMCallbackInfo *) user_data; gboolean parsed = FALSE; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else if (!g_str_has_prefix (response->str, "CFUN: ")) { diff --git a/plugins/mm-modem-longcheer-gsm.c b/plugins/mm-modem-longcheer-gsm.c index 33763e2..610ec77 100644 --- a/plugins/mm-modem-longcheer-gsm.c +++ b/plugins/mm-modem-longcheer-gsm.c @@ -60,9 +60,15 @@ get_allowed_mode_done (MMAtSerialPort *port, MMModemGsmAllowedMode mode = MM_MODEM_GSM_ALLOWED_MODE_ANY; gint mododr = -1; - info->error = mm_modem_check_removed (info->modem, error); - if (info->error) + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) { + info->error = g_error_copy (error); goto done; + } p = mm_strip_tag (response->str, "+MODODR:"); if (!p) { @@ -120,6 +126,11 @@ set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -175,6 +186,11 @@ get_act_request_done (MMAtSerialPort *port, MMModemGsmAccessTech act = MM_MODEM_GSM_ACCESS_TECH_UNKNOWN; const char *p; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else { diff --git a/plugins/mm-modem-mbm.c b/plugins/mm-modem-mbm.c index 9303453..70faef4 100644 --- a/plugins/mm-modem-mbm.c +++ b/plugins/mm-modem-mbm.c @@ -177,6 +177,11 @@ mbm_set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -257,6 +262,11 @@ get_allowed_mode_done (MMAtSerialPort *port, MMCallbackInfo *info = (MMCallbackInfo *) user_data; gboolean parsed = FALSE; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else if (!g_str_has_prefix (response->str, "CFUN: ")) { @@ -351,6 +361,11 @@ mbm_enable_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + /* Start unsolicited signal strength and access technology responses */ mm_at_serial_port_queue_command (port, "*ERINFO=1", 3, NULL, NULL); @@ -359,14 +374,21 @@ mbm_enable_done (MMAtSerialPort *port, static void mbm_enap0_done (MMAtSerialPort *port, - GString *response, - GError *error, - gpointer user_data) + GString *response, + GError *error, + gpointer user_data) { MMCallbackInfo *info = user_data; - MMModemMbmPrivate *priv = MM_MODEM_MBM_GET_PRIVATE (info->modem); + MMModemMbmPrivate *priv; char *command; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + priv = MM_MODEM_MBM_GET_PRIVATE (info->modem); + if (!priv->network_mode) priv->network_mode = MBM_NETWORK_MODE_ANY; @@ -382,7 +404,14 @@ mbm_init_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = user_data; - MMModemMbmPrivate *priv = MM_MODEM_MBM_GET_PRIVATE (info->modem); + MMModemMbmPrivate *priv; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + priv = MM_MODEM_MBM_GET_PRIVATE (info->modem); if (error) { mm_generic_gsm_enable_complete (MM_GENERIC_GSM (info->modem), error, info); @@ -408,12 +437,19 @@ mbm_emrdy_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = user_data; - MMModemMbmPrivate *priv = MM_MODEM_MBM_GET_PRIVATE (info->modem); + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; if (g_error_matches (error, MM_SERIAL_ERROR, MM_SERIAL_ERROR_RESPONSE_TIMEOUT)) mm_warn ("timed out waiting for EMRDY response."); - else + else { + MMModemMbmPrivate *priv = MM_MODEM_MBM_GET_PRIVATE (info->modem); + priv->have_emrdy = TRUE; + } do_init (port, info); } @@ -437,11 +473,7 @@ do_enable (MMGenericGsm *self, MMModemFn callback, gpointer user_data) mm_at_serial_port_queue_command (primary, "*EMRDY?", 5, mbm_emrdy_done, info); } -typedef struct { - MMModem *modem; - MMModemFn callback; - gpointer user_data; -} DisableInfo; +/*****************************************************************************/ static void disable_unsolicited_done (MMAtSerialPort *port, @@ -450,12 +482,29 @@ disable_unsolicited_done (MMAtSerialPort *port, gpointer user_data) { - MMModem *parent_modem_iface; - DisableInfo *info = user_data; + MMCallbackInfo *info = (MMCallbackInfo *) user_data; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; - parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); - parent_modem_iface->disable (info->modem, info->callback, info->user_data); - g_free (info); + /* Ignore all errors */ + mm_callback_info_schedule (info); +} + +static void +invoke_call_parent_disable_fn (MMCallbackInfo *info) +{ + /* Note: we won't call the parent disable if info->modem is no longer + * valid. The invoke is called always once the info gets scheduled, which + * may happen during removed modem detection. */ + if (info->modem) { + MMModem *parent_modem_iface; + + parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); + parent_modem_iface->disable (info->modem, (MMModemFn)info->callback, info->user_data); + } } static void @@ -464,12 +513,12 @@ disable (MMModem *modem, gpointer user_data) { MMAtSerialPort *primary; - DisableInfo *info; + MMCallbackInfo *info; - info = g_malloc0 (sizeof (DisableInfo)); - info->callback = callback; - info->user_data = user_data; - info->modem = modem; + info = mm_callback_info_new_full (modem, + invoke_call_parent_disable_fn, + (GCallback)callback, + user_data); primary = mm_generic_gsm_get_at_port (MM_GENERIC_GSM (modem), MM_PORT_TYPE_PRIMARY); g_assert (primary); @@ -536,6 +585,11 @@ factory_reset_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + mm_serial_port_close (MM_SERIAL_PORT (port)); mm_callback_info_schedule (info); } @@ -659,6 +713,11 @@ enap_poll_response (MMAtSerialPort *port, g_assert (info); + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + count = GPOINTER_TO_UINT (mm_callback_info_get_data (info, "mbm-enap-poll-count")); if (sscanf (response->str, "*ENAP: %d", &state) == 1 && state == 1) { @@ -702,6 +761,11 @@ enap_done (MMAtSerialPort *port, MMCallbackInfo *info = (MMCallbackInfo *) user_data; guint tid; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { mm_generic_gsm_connect_complete (MM_GENERIC_GSM (info->modem), error, info); return; @@ -796,6 +860,11 @@ send_epin_done (MMAtSerialPort *port, const char *pin_type; int attempts_left = 0; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); goto done; diff --git a/plugins/mm-modem-novatel-cdma.c b/plugins/mm-modem-novatel-cdma.c index 6b8c4aa..c1f4151 100644 --- a/plugins/mm-modem-novatel-cdma.c +++ b/plugins/mm-modem-novatel-cdma.c @@ -122,16 +122,15 @@ get_rssi_done (MMAtSerialPort *port, MMModemCdma *parent_iface; int qual; - info->error = mm_modem_check_removed (info->modem, error); - if (info->error) { - if (info->modem) { - /* Fallback to parent's method */ - g_clear_error (&info->error); - parent_iface = g_type_interface_peek_parent (MM_MODEM_CDMA_GET_INTERFACE (info->modem)); - parent_iface->get_signal_quality (MM_MODEM_CDMA (info->modem), parent_csq_done, info); - } else - mm_callback_info_schedule (info); + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { + /* Fallback to parent's method */ + parent_iface = g_type_interface_peek_parent (MM_MODEM_CDMA_GET_INTERFACE (info->modem)); + parent_iface->get_signal_quality (MM_MODEM_CDMA (info->modem), parent_csq_done, info); return; } @@ -149,7 +148,7 @@ get_rssi_done (MMAtSerialPort *port, info->error = g_error_new (MM_MODEM_ERROR, MM_MODEM_ERROR_GENERAL, "%s", "Could not parse signal quality results"); } - + mm_callback_info_schedule (info); } diff --git a/plugins/mm-modem-novatel-gsm.c b/plugins/mm-modem-novatel-gsm.c index 64a81bd..5d78db7 100644 --- a/plugins/mm-modem-novatel-gsm.c +++ b/plugins/mm-modem-novatel-gsm.c @@ -118,6 +118,11 @@ set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -227,8 +232,14 @@ get_allowed_mode_done (MMAtSerialPort *port, MMCallbackInfo *info = (MMCallbackInfo *) user_data; MMModemGsmAllowedMode mode = MM_MODEM_GSM_ALLOWED_MODE_ANY; - info->error = mm_modem_check_removed (info->modem, error); - if (!info->error) { + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) + info->error = g_error_copy (error); + else { parse_nwrat_response (response, &mode, &info->error); mm_callback_info_set_result (info, GUINT_TO_POINTER (mode), NULL); } @@ -265,6 +276,11 @@ get_act_request_done (MMAtSerialPort *port, MMModemGsmAccessTech act = MM_MODEM_GSM_ACCESS_TECH_UNKNOWN; const char *p; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else { diff --git a/plugins/mm-modem-option-utils.c b/plugins/mm-modem-option-utils.c index 35dd1ac..61ca5d1 100644 --- a/plugins/mm-modem-option-utils.c +++ b/plugins/mm-modem-option-utils.c @@ -32,6 +32,11 @@ option_get_allowed_mode_done (MMAtSerialPort *port, MMCallbackInfo *info = (MMCallbackInfo *) user_data; gboolean parsed = FALSE; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else if (!g_str_has_prefix (response->str, "_OPSYS: ")) { @@ -95,6 +100,11 @@ option_set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -357,8 +367,14 @@ unsolicited_msg_done (MMAtSerialPort *port, { MMCallbackInfo *info = user_data; - if (info) + if (info) { + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + mm_callback_info_chain_complete_one (info); + } } static void @@ -394,6 +410,11 @@ get_act_octi_request_done (MMAtSerialPort *port, MMModemGsmAccessTech octi = MM_MODEM_GSM_ACCESS_TECH_UNKNOWN; MMModemGsmAccessTech owcti; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (!error) { if (parse_octi_response (response, &octi)) { /* If no 3G tech yet or current tech isn't 3G, then 2G tech is the best */ @@ -416,6 +437,11 @@ get_act_owcti_request_done (MMAtSerialPort *port, MMModemGsmAccessTech owcti = MM_MODEM_GSM_ACCESS_TECH_UNKNOWN; const char *p; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (!error) { p = mm_strip_tag (response->str, "_OWCTI:"); if (owcti_to_mm (*p, &owcti)) { diff --git a/plugins/mm-modem-samsung-gsm.c b/plugins/mm-modem-samsung-gsm.c index 4902e0a..d873653 100755 --- a/plugins/mm-modem-samsung-gsm.c +++ b/plugins/mm-modem-samsung-gsm.c @@ -144,6 +144,11 @@ set_band_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -232,6 +237,11 @@ get_band_done (MMAtSerialPort *port, MMCallbackInfo *info = (MMCallbackInfo *) user_data; MMModemGsmBand mm_band = MM_MODEM_GSM_BAND_UNKNOWN; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else if (parse_ipbm (response->str, &mm_band)) @@ -290,6 +300,11 @@ send_samsung_pinnum_done (MMAtSerialPort *port, char *str = NULL; guint32 num = 0; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); goto done; @@ -410,11 +425,7 @@ get_access_technology (MMGenericGsm *gsm, mm_modem_icera_get_access_technology (MM_MODEM_ICERA (gsm), callback, user_data); } -typedef struct { - MMModem *modem; - MMModemFn callback; - gpointer user_data; -} DisableInfo; +/*****************************************************************************/ static void disable_unsolicited_done (MMAtSerialPort *port, @@ -423,12 +434,29 @@ disable_unsolicited_done (MMAtSerialPort *port, gpointer user_data) { - MMModem *parent_modem_iface; - DisableInfo *info = user_data; + MMCallbackInfo *info = (MMCallbackInfo *) user_data; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + /* Ignore all errors */ + mm_callback_info_schedule (info); +} + +static void +invoke_call_parent_disable_fn (MMCallbackInfo *info) +{ + /* Note: we won't call the parent disable if info->modem is no longer + * valid. The invoke is called always once the info gets scheduled, which + * may happen during removed modem detection. */ + if (info->modem) { + MMModem *parent_modem_iface; - parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); - parent_modem_iface->disable (info->modem, info->callback, info->user_data); - g_free (info); + parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); + parent_modem_iface->disable (info->modem, (MMModemFn)info->callback, info->user_data); + } } static void @@ -437,15 +465,15 @@ disable (MMModem *modem, gpointer user_data) { MMAtSerialPort *primary; - DisableInfo *info; + MMCallbackInfo *info; mm_modem_icera_cleanup (MM_MODEM_ICERA (modem)); mm_modem_icera_change_unsolicited_messages (MM_MODEM_ICERA (modem), FALSE); - info = g_malloc0 (sizeof (DisableInfo)); - info->callback = callback; - info->user_data = user_data; - info->modem = modem; + info = mm_callback_info_new_full (modem, + invoke_call_parent_disable_fn, + (GCallback)callback, + user_data); primary = mm_generic_gsm_get_at_port (MM_GENERIC_GSM (modem), MM_PORT_TYPE_PRIMARY); g_assert (primary); @@ -461,7 +489,14 @@ init_all_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemSamsungGsm *self = MM_MODEM_SAMSUNG_GSM (info->modem); + MMModemSamsungGsm *self; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + self = MM_MODEM_SAMSUNG_GSM (info->modem); if (!error) mm_modem_icera_change_unsolicited_messages (MM_MODEM_ICERA (self), TRUE); @@ -476,7 +511,14 @@ init2_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemSamsungGsm *self = MM_MODEM_SAMSUNG_GSM (info->modem); + MMModemSamsungGsm *self; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + self = MM_MODEM_SAMSUNG_GSM (info->modem); if (error) mm_generic_gsm_enable_complete (MM_GENERIC_GSM (self), error, info); @@ -493,7 +535,14 @@ init_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemSamsungGsm *self = MM_MODEM_SAMSUNG_GSM (info->modem); + MMModemSamsungGsm *self; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + self = MM_MODEM_SAMSUNG_GSM (info->modem); if (error) mm_generic_gsm_enable_complete (MM_GENERIC_GSM (self), error, info); diff --git a/plugins/mm-modem-sierra-cdma.c b/plugins/mm-modem-sierra-cdma.c index 1168c83..faf3675 100644 --- a/plugins/mm-modem-sierra-cdma.c +++ b/plugins/mm-modem-sierra-cdma.c @@ -148,7 +148,7 @@ status_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemSierraCdmaPrivate *priv = MM_MODEM_SIERRA_CDMA_GET_PRIVATE (info->modem); + MMModemSierraCdmaPrivate *priv; char **lines, **iter; gboolean registered = FALSE; gboolean have_sid = FALSE; @@ -156,6 +156,13 @@ status_done (MMAtSerialPort *port, SysMode sys_mode = SYS_MODE_UNKNOWN; gboolean evdo_roam = FALSE, cdma1x_roam = FALSE; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + priv = MM_MODEM_SIERRA_CDMA_GET_PRIVATE (info->modem); + if (error) { /* Leave superclass' reg state alone if AT!STATUS isn't supported */ goto done; @@ -167,11 +174,11 @@ status_done (MMAtSerialPort *port, goto done; } - /* Sierra CDMA parts have two general formats depending on whether they + /* Sierra CDMA parts have two general formats depending on whether they * support EVDO or not. EVDO parts report both 1x and EVDO roaming status * while of course 1x parts only report 1x status. Some modems also do not * report the Roaming information (MP 555 GPS). - * + * * AT!STATUS responses: * * Unregistered MC5725: @@ -182,7 +189,7 @@ status_done (MMAtSerialPort *port, * Temp: 33 State: 100 Sys Mode: NO SRV * Pilot NOT acquired * Modem has NOT registered - * + * * Registered MC5725: * ----------------------- * Current band: Cellular Sleep @@ -340,10 +347,17 @@ pcstate_done (MMAtSerialPort *port, GError *error, gpointer user_data) { + MMCallbackInfo *info = (MMCallbackInfo *) user_data; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + /* Ignore errors for now; we're not sure if all Sierra CDMA devices support * at!pcstate. */ - mm_callback_info_schedule ((MMCallbackInfo *) user_data); + mm_callback_info_schedule (info); } static void diff --git a/plugins/mm-modem-sierra-gsm.c b/plugins/mm-modem-sierra-gsm.c index d4636d7..6d4e4d5 100644 --- a/plugins/mm-modem-sierra-gsm.c +++ b/plugins/mm-modem-sierra-gsm.c @@ -74,9 +74,15 @@ get_allowed_mode_done (MMAtSerialPort *port, GRegex *r = NULL; GMatchInfo *match_info; - info->error = mm_modem_check_removed (info->modem, error); - if (info->error) + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) { + info->error = g_error_copy (error); goto done; + } /* Example response: !SELRAT: 03, UMTS 3G Preferred */ r = g_regex_new ("!SELRAT:\\s*(\\d+).*$", 0, 0, NULL); @@ -156,6 +162,11 @@ set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -217,6 +228,11 @@ get_act_request_done (MMAtSerialPort *port, MMModemGsmAccessTech act = MM_MODEM_GSM_ACCESS_TECH_UNKNOWN; const char *p; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else { @@ -260,6 +276,11 @@ get_sim_iccid_done (MMAtSerialPort *port, char buf[21]; int i; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); goto done; @@ -415,7 +436,13 @@ ppp_connect_done (MMModem *modem, GError *error, gpointer user_data) { MMCallbackInfo *info = user_data; - info->error = mm_modem_check_removed (modem, error); + /* Do nothing if modem removed */ + if (!modem || mm_callback_info_check_modem_removed (info)) + return; + + if (error) + info->error = g_error_copy (error); + mm_callback_info_schedule (info); } @@ -427,6 +454,11 @@ net_activate_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + mm_generic_gsm_connect_complete (MM_GENERIC_GSM (info->modem), error, info); } @@ -441,6 +473,11 @@ auth_done (MMAtSerialPort *port, gint cid; char *command; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); mm_callback_info_schedule (info); @@ -467,6 +504,11 @@ ps_attach_done (MMAtSerialPort *port, MMModem *parent_modem_iface; const char *number; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); mm_callback_info_schedule (info); diff --git a/plugins/mm-modem-simtech-gsm.c b/plugins/mm-modem-simtech-gsm.c index 4a62694..18df9c4 100644 --- a/plugins/mm-modem-simtech-gsm.c +++ b/plugins/mm-modem-simtech-gsm.c @@ -67,9 +67,15 @@ get_mode_pref_done (MMAtSerialPort *port, guint32 acqord; MMModemGsmAllowedMode allowed = MM_MODEM_GSM_ALLOWED_MODE_ANY; - info->error = mm_modem_check_removed (info->modem, error); - if (info->error) + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) { + info->error = g_error_copy (error); goto done; + } p = mm_strip_tag (response->str, "+CNMP:"); if (!p) { @@ -125,9 +131,15 @@ get_acq_order_done (MMAtSerialPort *port, const char *p; gint acqord = -1; - info->error = mm_modem_check_removed (info->modem, error); - if (info->error) + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) { + info->error = g_error_copy (error); goto done; + } p = mm_strip_tag (response->str, "+CNAOP:"); if (!p) { @@ -182,6 +194,11 @@ set_acq_order_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -198,8 +215,13 @@ set_mode_pref_done (MMAtSerialPort *port, guint32 naop; char *command; - info->error = mm_modem_check_removed (info->modem, error); - if (info->error) { + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) { + info->error = g_error_copy (error); mm_callback_info_schedule (info); return; } @@ -286,8 +308,13 @@ get_act_tech_done (MMAtSerialPort *port, MMModemGsmAccessTech act = MM_MODEM_GSM_ACCESS_TECH_UNKNOWN; const char *p; - info->error = mm_modem_check_removed (info->modem, error); - if (info->error) { + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) { + info->error = g_error_copy (error); mm_callback_info_schedule (info); return; } @@ -372,12 +399,6 @@ real_do_enable_power_up_done (MMGenericGsm *gsm, /*****************************************************************************/ -typedef struct { - MMModem *modem; - MMModemFn callback; - gpointer user_data; -} DisableInfo; - static void disable_unsolicited_done (MMAtSerialPort *port, GString *response, @@ -385,12 +406,29 @@ disable_unsolicited_done (MMAtSerialPort *port, gpointer user_data) { - MMModem *parent_modem_iface; - DisableInfo *info = user_data; + MMCallbackInfo *info = (MMCallbackInfo *) user_data; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; - parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); - parent_modem_iface->disable (info->modem, info->callback, info->user_data); - g_free (info); + /* Ignore all errors */ + mm_callback_info_schedule (info); +} + +static void +invoke_call_parent_disable_fn (MMCallbackInfo *info) +{ + /* Note: we won't call the parent disable if info->modem is no longer + * valid. The invoke is called always once the info gets scheduled, which + * may happen during removed modem detection. */ + if (info->modem) { + MMModem *parent_modem_iface; + + parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); + parent_modem_iface->disable (info->modem, (MMModemFn)info->callback, info->user_data); + } } static void @@ -399,12 +437,12 @@ disable (MMModem *modem, gpointer user_data) { MMAtSerialPort *primary; - DisableInfo *info; + MMCallbackInfo *info; - info = g_malloc0 (sizeof (DisableInfo)); - info->callback = callback; - info->user_data = user_data; - info->modem = modem; + info = mm_callback_info_new_full (modem, + invoke_call_parent_disable_fn, + (GCallback)callback, + user_data); primary = mm_generic_gsm_get_at_port (MM_GENERIC_GSM (modem), MM_PORT_TYPE_PRIMARY); g_assert (primary); diff --git a/plugins/mm-modem-wavecom-gsm.c b/plugins/mm-modem-wavecom-gsm.c index 3c8a49b..c66637c 100644 --- a/plugins/mm-modem-wavecom-gsm.c +++ b/plugins/mm-modem-wavecom-gsm.c @@ -239,12 +239,19 @@ set_band_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; if (error) info->error = g_error_copy (error); - else + else { + MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + priv->current_bands = GPOINTER_TO_UINT (mm_callback_info_get_data (info, "new-band")); + } mm_callback_info_schedule (info); } @@ -389,11 +396,16 @@ get_2g_band_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; if (error) info->error = g_error_copy (error); else { + MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); const gchar *p; guint32 mm_band = MM_MODEM_GSM_BAND_UNKNOWN; @@ -430,11 +442,16 @@ get_3g_band_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; if (error) info->error = g_error_copy (error); else { + MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); const gchar *p; guint mm_band = MM_MODEM_GSM_BAND_UNKNOWN; guint32 wavecom_band; @@ -516,6 +533,11 @@ get_access_technology_cb (MMAtSerialPort *port, MMModemGsmAccessTech act = MM_MODEM_GSM_ACCESS_TECH_UNKNOWN; const gchar *p; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else { @@ -583,19 +605,26 @@ get_allowed_mode_cb (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = user_data; - MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + MMModemWavecomGsmPrivate *priv; gint read_mode = -1; gchar *mode_str = NULL; gchar *prefer_str = NULL; GRegex *r = NULL; GMatchInfo *match_info = NULL; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { info->error = g_error_copy (error); mm_callback_info_schedule (info); return; } + priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + /* Possible responses: * +WWSM: 0 (2G only) * +WWSM: 1 (3G only) @@ -706,12 +735,19 @@ set_allowed_mode_cb (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; if (error) info->error = g_error_copy (error); - else + else { + MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + priv->allowed_mode = GPOINTER_TO_UINT (mm_callback_info_get_data (info, "new-mode")); + } mm_callback_info_schedule (info); } @@ -813,17 +849,24 @@ set_highest_ms_class_cb (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); guint new_class; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { enable_complete (MM_GENERIC_GSM (info->modem), error, info); return; } new_class = GPOINTER_TO_UINT (mm_callback_info_get_data (info, "new-class")); - if (new_class) + if (new_class) { + MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + priv->current_ms_class = new_class; + } /* All done without errors! */ mm_dbg ("[5/5] All done"); @@ -882,14 +925,21 @@ get_current_ms_class_cb (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = user_data; - MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + MMModemWavecomGsmPrivate *priv; const gchar *p; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { enable_complete (MM_GENERIC_GSM (info->modem), error, info); return; } + priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + p = mm_strip_tag (response->str, "+CGCLASS:"); if (strncmp (p, @@ -936,14 +986,21 @@ get_supported_ms_classes_cb (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = user_data; - MMModemWavecomGsmPrivate *priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + MMModemWavecomGsmPrivate *priv; const gchar *p; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { enable_complete (MM_GENERIC_GSM (info->modem), error, info); return; } + priv = MM_MODEM_WAVECOM_GSM_GET_PRIVATE (info->modem); + /* Reset currently supported MS classes */ priv->supported_ms_classes = 0; @@ -996,6 +1053,11 @@ get_current_functionality_status_cb (MMAtSerialPort *port, const gchar *p; GError *inner_error; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { enable_complete (MM_GENERIC_GSM (info->modem), error, info); return; @@ -1027,6 +1089,11 @@ do_enable_power_up_done (MMGenericGsm *gsm, MMAtSerialPort *port; GError *inner_error = NULL; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) { enable_complete (gsm, error, info); return; diff --git a/plugins/mm-modem-x22x-gsm.c b/plugins/mm-modem-x22x-gsm.c index ff23297..012733d 100644 --- a/plugins/mm-modem-x22x-gsm.c +++ b/plugins/mm-modem-x22x-gsm.c @@ -115,8 +115,14 @@ get_allowed_mode_done (MMAtSerialPort *port, MMCallbackInfo *info = (MMCallbackInfo *) user_data; MMModemGsmAllowedMode mode = MM_MODEM_GSM_ALLOWED_MODE_ANY; - info->error = mm_modem_check_removed (info->modem, error); - if (!info->error) { + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) + info->error = g_error_copy (error); + else { parse_syssel_response (response, &mode, &info->error); mm_callback_info_set_result (info, GUINT_TO_POINTER (mode), NULL); } @@ -151,7 +157,14 @@ set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - info->error = mm_modem_check_removed (info->modem, error); + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) + info->error = g_error_copy (error); + mm_callback_info_schedule (info); } @@ -189,6 +202,51 @@ set_allowed_mode (MMGenericGsm *gsm, mm_at_serial_port_queue_command (port, command, 3, set_allowed_mode_done, info); } +static void +get_act_request_done (MMAtSerialPort *port, + GString *response, + GError *error, + gpointer user_data) +{ + MMCallbackInfo *info = user_data; + MMModemGsmAccessTech act = MM_MODEM_GSM_ACCESS_TECH_UNKNOWN; + const char *p; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) + info->error = g_error_copy (error); + else { + p = mm_strip_tag (response->str, "+SSND:"); + act = mm_gsm_string_to_access_tech (p); + } + + mm_callback_info_set_result (info, GUINT_TO_POINTER (act), NULL); + mm_callback_info_schedule (info); +} + +static void +get_access_technology (MMGenericGsm *modem, + MMModemUIntFn callback, + gpointer user_data) +{ + MMAtSerialPort *port; + MMCallbackInfo *info; + + info = mm_callback_info_uint_new (MM_MODEM (modem), callback, user_data); + + port = mm_generic_gsm_get_best_at_port (modem, &info->error); + if (!port) { + mm_callback_info_schedule (info); + return; + } + + mm_at_serial_port_queue_command (port, "+SSND?", 3, get_act_request_done, info); +} + /*****************************************************************************/ static void @@ -205,5 +263,6 @@ mm_modem_x22x_gsm_class_init (MMModemX22xGsmClass *klass) gsm_class->set_allowed_mode = set_allowed_mode; gsm_class->get_allowed_mode = get_allowed_mode; + gsm_class->get_access_technology = get_access_technology; } diff --git a/plugins/mm-modem-zte.c b/plugins/mm-modem-zte.c index e7387a0..0f69328 100644 --- a/plugins/mm-modem-zte.c +++ b/plugins/mm-modem-zte.c @@ -103,9 +103,15 @@ get_allowed_mode_done (MMAtSerialPort *port, GRegex *r = NULL; GMatchInfo *match_info; - info->error = mm_modem_check_removed (info->modem, error); - if (info->error) + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + if (error) { + info->error = g_error_copy (error); goto done; + } r = g_regex_new ("+ZSNT:\\s*(\\d),(\\d),(\\d)", G_REGEX_UNGREEDY, 0, NULL); if (!r) { @@ -192,6 +198,11 @@ set_allowed_mode_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); @@ -260,6 +271,11 @@ get_act_request_done (MMAtSerialPort *port, MMModemGsmAccessTech act = MM_MODEM_GSM_ACCESS_TECH_UNKNOWN; const char *p; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + if (error) info->error = g_error_copy (error); else { @@ -346,7 +362,14 @@ cpms_try_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = user_data; - MMModemZtePrivate *priv = MM_MODEM_ZTE_GET_PRIVATE (info->modem); + MMModemZtePrivate *priv; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + priv = MM_MODEM_ZTE_GET_PRIVATE (info->modem); if (error && g_error_matches (error, MM_MOBILE_ERROR, MM_MOBILE_ERROR_SIM_BUSY)) { if (priv->cpms_tries++ < 4) { @@ -377,6 +400,11 @@ init_modem_done (MMAtSerialPort *port, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + mm_at_serial_port_queue_command (port, "E0", 5, NULL, NULL); /* Attempt to disable floods of "+ZUSIMR:2" unsolicited responses that @@ -417,8 +445,16 @@ pre_init_done (MMAtSerialPort *port, gpointer user_data) { MMCallbackInfo *info = (MMCallbackInfo *) user_data; - MMModemZte *self = MM_MODEM_ZTE (info->modem); - MMModemZtePrivate *priv = MM_MODEM_ZTE_GET_PRIVATE (self); + MMModemZte *self; + MMModemZtePrivate *priv; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + self = MM_MODEM_ZTE (info->modem); + priv = MM_MODEM_ZTE_GET_PRIVATE (self); if (error) { /* Retry the init string one more time; the modem sometimes throws it away */ @@ -464,12 +500,6 @@ do_enable (MMGenericGsm *modem, MMModemFn callback, gpointer user_data) /*****************************************************************************/ -typedef struct { - MMModem *modem; - MMModemFn callback; - gpointer user_data; -} DisableInfo; - static void disable_unsolicited_done (MMAtSerialPort *port, GString *response, @@ -477,12 +507,29 @@ disable_unsolicited_done (MMAtSerialPort *port, gpointer user_data) { - MMModem *parent_modem_iface; - DisableInfo *info = user_data; + MMCallbackInfo *info = (MMCallbackInfo *) user_data; + + /* If the modem has already been removed, return without + * scheduling callback */ + if (mm_callback_info_check_modem_removed (info)) + return; + + /* Ignore all errors */ + mm_callback_info_schedule (info); +} - parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); - parent_modem_iface->disable (info->modem, info->callback, info->user_data); - g_free (info); +static void +invoke_call_parent_disable_fn (MMCallbackInfo *info) +{ + /* Note: we won't call the parent disable if info->modem is no longer + * valid. The invoke is called always once the info gets scheduled, which + * may happen during removed modem detection. */ + if (info->modem) { + MMModem *parent_modem_iface; + + parent_modem_iface = g_type_interface_peek_parent (MM_MODEM_GET_INTERFACE (info->modem)); + parent_modem_iface->disable (info->modem, (MMModemFn)info->callback, info->user_data); + } } static void @@ -492,14 +539,14 @@ disable (MMModem *modem, { MMModemZtePrivate *priv = MM_MODEM_ZTE_GET_PRIVATE (modem); MMAtSerialPort *primary; - DisableInfo *info; + MMCallbackInfo *info; - priv->init_retried = FALSE; + info = mm_callback_info_new_full (modem, + invoke_call_parent_disable_fn, + (GCallback)callback, + user_data); - info = g_malloc0 (sizeof (DisableInfo)); - info->callback = callback; - info->user_data = user_data; - info->modem = modem; + priv->init_retried = FALSE; primary = mm_generic_gsm_get_at_port (MM_GENERIC_GSM (modem), MM_PORT_TYPE_PRIMARY); g_assert (primary); diff --git a/plugins/mm-plugin-huawei.c b/plugins/mm-plugin-huawei.c index 32edfde..aef3c52 100644 --- a/plugins/mm-plugin-huawei.c +++ b/plugins/mm-plugin-huawei.c @@ -79,7 +79,7 @@ getportmode_response_cb (MMPluginBaseSupportsTask *task, GString *response, GError *error, guint32 tries, - gboolean *out_fail, + gboolean *out_stop, guint32 *out_level, gpointer user_data) { @@ -116,7 +116,7 @@ curc_response_cb (MMPluginBaseSupportsTask *task, GString *response, GError *error, guint32 tries, - gboolean *out_fail, + gboolean *out_stop, guint32 *out_level, gpointer user_data) { diff --git a/plugins/mm-plugin-longcheer.c b/plugins/mm-plugin-longcheer.c index cbf4c1e..5f773a3 100644 --- a/plugins/mm-plugin-longcheer.c +++ b/plugins/mm-plugin-longcheer.c @@ -20,6 +20,7 @@ #include "mm-modem-longcheer-gsm.h" #include "mm-generic-gsm.h" #include "mm-generic-cdma.h" +#include "mm-modem-helpers.h" G_DEFINE_TYPE (MMPluginLongcheer, mm_plugin_longcheer, MM_TYPE_PLUGIN_BASE) @@ -62,6 +63,38 @@ probe_result (MMPluginBase *base, mm_plugin_base_supports_task_complete (task, get_level_for_capabilities (capabilities)); } +static gboolean +custom_init_response_cb (MMPluginBaseSupportsTask *task, + GString *response, + GError *error, + guint32 tries, + gboolean *out_stop, + guint32 *out_level, + gpointer user_data) +{ + const char *p = response->str; + + if (error) + return tries <= 4 ? TRUE : FALSE; + + /* Note the lack of a ':' on the GMR; the X200 doesn't send one */ + p = mm_strip_tag (response->str, "AT+GMR"); + if (*p == 'L') { + /* X200 modems have a GMR firmware revision that starts with 'L', and + * as far as I can tell X060s devices have a revision starting with 'C'. + * So use that to determine if the device is an X200, which this plugin + * does not support since it uses a different chipset even though the + * X060s and the X200 have the exact same USB VID and PID. + */ + *out_level = 0; + *out_stop = TRUE; + return FALSE; + } + + /* Continue with generic probing */ + return FALSE; +} + static MMPluginSupportsResult supports_port (MMPluginBase *base, MMModem *existing, @@ -69,7 +102,7 @@ supports_port (MMPluginBase *base, { GUdevDevice *port; guint32 cached = 0, level; - guint16 vendor = 0; + guint16 vendor = 0, product = 0; const char *subsys, *name; /* Can't do anything with non-serial ports */ @@ -80,13 +113,19 @@ supports_port (MMPluginBase *base, subsys = g_udev_device_get_subsystem (port); name = g_udev_device_get_name (port); - if (!mm_plugin_base_get_device_ids (base, subsys, name, &vendor, NULL)) + if (!mm_plugin_base_get_device_ids (base, subsys, name, &vendor, &product)) return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; /* Longcheer and TAMobile */ if (vendor != 0x1c9e && vendor != 0x1bbb) return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; + /* Some TAMobile devices are different chipsets and should be handled + * by other plugins, so only handle LONGCHEER tagged devices here. + */ + if (g_udev_device_get_property_as_boolean (port, "ID_MM_LONGCHEER_TAGGED") == FALSE) + return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; + if (mm_plugin_base_get_cached_port_capabilities (base, port, &cached)) { level = get_level_for_capabilities (cached); if (level) { @@ -96,6 +135,23 @@ supports_port (MMPluginBase *base, return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; } + /* TCT/Alcatel in their infinite wisdom assigned the same USB VID/PID to + * the x060s (Longcheer firmware) and the x200 (something else) and thus + * we can't tell them apart via udev rules. Worse, they both report the + * same +GMM and +GMI, so we're left with just +GMR which is a sketchy way + * to tell modems apart. We can't really use Longcheer-specific commands + * like AT+MODODR or AT+PSRAT because we're not sure if they work when the + * SIM PIN has not been entered yet; many modems have a limited command + * parser before the SIM is unlocked. + */ + if (vendor == 0x1bbb && product == 0x0000) { + mm_plugin_base_supports_task_add_custom_init_command (task, + "AT+GMR", + 3, + custom_init_response_cb, + NULL); + } + /* Otherwise kick off a probe */ if (mm_plugin_base_probe_port (base, task, 100000, NULL)) return MM_PLUGIN_SUPPORTS_PORT_IN_PROGRESS; diff --git a/plugins/mm-plugin-samsung.c b/plugins/mm-plugin-samsung.c index eb5e071..350d4de 100755 --- a/plugins/mm-plugin-samsung.c +++ b/plugins/mm-plugin-samsung.c @@ -83,6 +83,10 @@ supports_port (MMPluginBase *base, if (vendor != 0x04e8 && vendor != 0x1983) return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; + /* Product ID check */ + if (product != 0x6872) + return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; + /* The ethernet ports are obviously supported and don't need probing */ if (!strcmp (subsys, "net")) { mm_plugin_base_supports_task_complete (task, 10); diff --git a/plugins/mm-plugin-x22x.c b/plugins/mm-plugin-x22x.c index f99b9d6..3be6731 100644 --- a/plugins/mm-plugin-x22x.c +++ b/plugins/mm-plugin-x22x.c @@ -19,6 +19,7 @@ #include "mm-plugin-x22x.h" #include "mm-modem-x22x-gsm.h" #include "mm-generic-gsm.h" +#include "mm-modem-helpers.h" G_DEFINE_TYPE (MMPluginX22x, mm_plugin_x22x, MM_TYPE_PLUGIN_BASE) @@ -59,6 +60,38 @@ probe_result (MMPluginBase *base, mm_plugin_base_supports_task_complete (task, get_level_for_capabilities (capabilities)); } + +static gboolean +custom_init_response_cb (MMPluginBaseSupportsTask *task, + GString *response, + GError *error, + guint32 tries, + gboolean *out_stop, + guint32 *out_level, + gpointer user_data) +{ + const char *p = response->str; + + if (error) + return tries <= 4 ? TRUE : FALSE; + + /* Note the lack of a ':' on the GMR; the X200 doesn't send one */ + p = mm_strip_tag (response->str, "AT+GMR"); + if (*p != 'L') { + /* X200 modems have a GMR firmware revision that starts with 'L', and + * as far as I can tell X060s devices have a revision starting with 'C'. + * So use that to determine if the device is an X200, which this plugin + * does supports. + */ + *out_level = 0; + *out_stop = TRUE; + return FALSE; + } + + /* Continue with generic probing */ + return FALSE; +} + static MMPluginSupportsResult supports_port (MMPluginBase *base, MMModem *existing, @@ -66,7 +99,7 @@ supports_port (MMPluginBase *base, { GUdevDevice *port; guint32 cached = 0, level; - guint16 vendor = 0; + guint16 vendor = 0, product = 0; const char *subsys, *name; /* Can't do anything with non-serial ports */ @@ -77,7 +110,7 @@ supports_port (MMPluginBase *base, subsys = g_udev_device_get_subsystem (port); name = g_udev_device_get_name (port); - if (!mm_plugin_base_get_device_ids (base, subsys, name, &vendor, NULL)) + if (!mm_plugin_base_get_device_ids (base, subsys, name, &vendor, &product)) return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; /* Only TCT/T&A for now */ @@ -97,6 +130,23 @@ supports_port (MMPluginBase *base, return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; } + /* TCT/Alcatel in their infinite wisdom assigned the same USB VID/PID to + * the x060s (Longcheer firmware) and the x200 (X22X, this plugin) and thus + * we can't tell them apart via udev rules. Worse, they both report the + * same +GMM and +GMI, so we're left with just +GMR which is a sketchy way + * to tell modems apart. We can't really use X22X-specific commands + * like AT+SSND because we're not sure if they work when the SIM PIN has not + * been entered yet; many modems have a limited command parser before the + * SIM is unlocked. + */ + if (vendor == 0x1bbb && product == 0x0000) { + mm_plugin_base_supports_task_add_custom_init_command (task, + "AT+GMR", + 3, + custom_init_response_cb, + NULL); + } + /* Otherwise kick off a probe */ if (mm_plugin_base_probe_port (base, task, 100000, NULL)) return MM_PLUGIN_SUPPORTS_PORT_IN_PROGRESS; diff --git a/plugins/mm-plugin-zte.c b/plugins/mm-plugin-zte.c index 37033e0..9c390a3 100644 --- a/plugins/mm-plugin-zte.c +++ b/plugins/mm-plugin-zte.c @@ -66,7 +66,7 @@ custom_init_response_cb (MMPluginBaseSupportsTask *task, GString *response, GError *error, guint32 tries, - gboolean *out_fail, + gboolean *out_stop, guint32 *out_level, gpointer user_data) { |