There must be a better/cleaner way to set this up with OpenWrt/meson, but this is what I'm using to remove all the excess plugins in ModemManager with current
OpenWrt development.

Improvements welcome.

--- a/modemmanager/Config.in
+++ b/modemmanager/Config.in
@@ -40,8 +40,203 @@ config MODEMMANAGER_WITH_PLUGIN_ALL
       Compile all plugins       
             
     menu "ModemManager Plugins"
+        config MODEMMANAGER_WITH_PLUGIN_GENERIC
+        bool "Generic Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_ALTAIR_LTE
+        bool "Altair LTE Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+
+        config MODEMMANAGER_WITH_PLUGIN_ANYDATA
+        bool "Anydata Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_BROADMOBI
+        bool "Broadmobi Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_CINTERION
+        bool "Cinterion Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_DELL
+        bool "Dell Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_DLINK
+        bool "DLink Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_FIBOCOM
+        bool "Fibocom Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_FOXCONN
+        bool "Foxconn Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_GOSUNC
+        bool "Gosunc Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_HAIER
+        bool "Haier Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_HUAWEI
+        bool "Huawei Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_INTEL
+        bool "Intel Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_IRIDIUM
+        bool "Iridium Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_LINKTOP
+        bool "Linktop Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_LONGCHEER
+        bool "Longcheer Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_MBM
+        bool "MBM Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_MOTOROLA
+        bool "Motorola Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_MTK
+        bool "MTK Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_NOKIA
+        bool "Nokia Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_NOKIA_ICERA
+        bool "Nokia Icera Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_NOVATEL
+        bool "Novatel Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_NOVATEL_LTE
+        bool "Novatel LTE Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_OPTION
+        bool "Option Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_OPTION_HSO
+        bool "Option HSO Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_PANTECH
+        bool "Pantech Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL   
+    
+        config MODEMMANAGER_WITH_PLUGIN_QCOM_SOC
+        bool "QCom SoC Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL   
+
         config MODEMMANAGER_WITH_PLUGIN_QUECTEL
-        bool "Quectel Modem Support"
+        bool "Quectel Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_SAMSUNG
+        bool "Samsung Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_SIERRA_LEGACY
+        bool "Sierra legacy Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_SIERRA
+        bool "Sierra Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_SIMTECH
+        bool "Simtech Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_TELIT
+        bool "Telit Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+     
+        config MODEMMANAGER_WITH_PLUGIN_THURAYA
+        bool "Thuraya Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_TPLINK
+        bool "TPLink Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_UBLOX
+        bool "UBlox Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_VIA
+        bool "Via Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_WAVECOM
+        bool "Wavecom Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_X22X
+        bool "X22X Support"
+        default y
+        depends on !MODEMMANAGER_WITH_PLUGIN_ALL
+    
+        config MODEMMANAGER_WITH_PLUGIN_ZTE
+        bool "ZTE Support"
         default y
         depends on !MODEMMANAGER_WITH_PLUGIN_ALL
     endmenu
--- a/modemmanager/Makefile
+++ b/modemmanager/Makefile
@@ -68,6 +69,46 @@ MESON_ARGS += \
 	-Dqmi=$(if $(CONFIG_MODEMMANAGER_WITH_QMI),true,false) \
 	-Dqrtr=$(if $(CONFIG_MODEMMANAGER_WITH_QRTR),true,false) \
 	-Dppp=$(if $(CONFIG_MODEMMANAGER_WITH_PPP),true,false) \
+	-Dplugin_generic=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_GENERIC),enabled,disabled) \
+	-Dplugin_altair_lte=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_ALTAIR_LTE),enabled,disabled) \
+	-Dplugin_anydata=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_ANYDATA),enabled,disabled) \
+	-Dplugin_broadmobi=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_BROADMOBI),enabled,disabled) \
+	-Dplugin_cinterion=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_CINTERION),enabled,disabled) \
+	-Dplugin_dell=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_DELL),enabled,disabled) \
+	-Dplugin_dlink=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_DLINK),enabled,disabled) \
+	-Dplugin_fibocom=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_FIBOCOM),enabled,disabled) \
+	-Dplugin_foxconn=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_FOXCONN),enabled,disabled) \
+	-Dplugin_gosuncn=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_GOSUNCN),enabled,disabled) \
+	-Dplugin_haier=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_HAIER),enabled,disabled) \
+	-Dplugin_huawei=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_HUAWEI),enabled,disabled) \
+	-Dplugin_intel=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_INTEL),enabled,disabled) \
+	-Dplugin_iridium=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_IRIDIUM),enabled,disabled) \
+	-Dplugin_linktop=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_LINKTOP),enabled,disabled) \
+	-Dplugin_longcheer=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_LONGCHEER),enabled,disabled) \
+	-Dplugin_mbm=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_MBM),enabled,disabled) \
+	-Dplugin_motorola=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_MOTOROLA),enabled,disabled) \
+	-Dplugin_mtk=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_MTK),enabled,disabled) \
+	-Dplugin_nokia=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_NOKIA),enabled,disabled) \
+	-Dplugin_nokia_icera=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_NOKIA_ICERA),enabled,disabled) \
+	-Dplugin_novatel=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_NOVATEL),enabled,disabled) \
+	-Dplugin_novatel_lte=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_NOVATEL_LTE),enabled,disabled) \
+	-Dplugin_option=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_OPTION),enabled,disabled) \
+	-Dplugin_option_hso=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_OPTION_HSO),enabled,disabled) \
+	-Dplugin_pantech=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_PANTECH),enabled,disabled) \
+	-Dplugin_qcom_soc=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_QCOM_SOC),enabled,disabled) \
+	-Dplugin_quectel=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_QUECTEL),enabled,disabled) \
+	-Dplugin_samsung=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_SANSUNG),enabled,disabled) \
+	-Dplugin_sierra_legacy=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_SIERRA_LEGACY),enabled,disabled) \
+	-Dplugin_sierra=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_SIERRA),enabled,disabled) \
+	-Dplugin_simtech=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_SIMTECH),enabled,disabled) \
+	-Dplugin_telit=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_TELIT),enabled,disabled) \
+	-Dplugin_thuraya=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_THURAYA),enabled,disabled) \
+	-Dplugin_tplink=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_TPLINK),enabled,disabled) \
+	-Dplugin_ublox=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_UBLOX),enabled,disabled) \
+	-Dplugin_via=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_VIA),enabled,disabled) \
+	-Dplugin_wavecom=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_WAVECOM),enabled,disabled) \
+	-Dplugin_x22x=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_X22X),enabled,disabled) \
+	-Dplugin_zte=$(if $(CONFIG_MODEMMANAGER_WITH_PLUGIN_ZTE),enabled,disabled) \
 	-Dat_command_via_dbus=$(if $(CONFIG_MODEMMANAGER_WITH_AT_COMMAND_VIA_DBUS),true,false)
 
 define Build/InstallDev
@@ -97,8 +138,8 @@ define Package/modemmanager/install
 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libmm-glib.so.* $(1)/usr/lib
 
 	$(INSTALL_DIR) $(1)/usr/lib/ModemManager
-	$(CP) $(PKG_INSTALL_DIR)/usr/lib/ModemManager/libmm-shared-*.so* $(1)/usr/lib/ModemManager
-	$(CP) $(PKG_INSTALL_DIR)/usr/lib/ModemManager/libmm-plugin-*.so* $(1)/usr/lib/ModemManager
+	$(CP) $(PKG_INSTALL_DIR)/usr/lib/ModemManager/libmm-shared-*.so* $(1)/usr/lib/ModemManager || true
+	$(CP) $(PKG_INSTALL_DIR)/usr/lib/ModemManager/libmm-plugin-*.so* $(1)/usr/lib/ModemManager || true
 
 	$(INSTALL_DIR) $(1)/usr/lib/ModemManager/connection.d
 	$(INSTALL_BIN) ./files/10-report-down $(1)/usr/lib/ModemManager/connection.d

Reply via email to